This document summarizes the University of Saskatchewan's experience implementing Puppet for infrastructure automation. It outlines how they established an architecture team and ramped up Puppet use over time. They moved to using Git for code management and established workflows for development, testing, and production. The document also discusses lessons learned around custom facts, long-lived branches, and working with different teams. It concludes by noting areas still needing improvement and potential future uses of Puppet for things like dynamic environments and compliance.