Modularize & Upgrade Puppet Code
Budget: $25 – $50 USD
I have an existing Puppet code-base that has grown monolithic and a bit unwieldy. I want it refactored into two or three well-scoped modules so maintenance and reuse become much easier. The two areas I definitely need broken out are:
• configuration management logic
• application-deployment logic
No additional features are required—this is purely an upgrade and clean split of what is already there. While you restructure, please bring the manifests, classes, and accompanying tests up to current Puppet best practices so the new modules are more reliable and flexible going forward.
Feel free to choose sensible naming conventions and directory layout; I’m happy to follow community best practices rather than imposing a custom standard.
Deliverables
• Refactored repository with 2–3 independent modules
• Updated module metadata, hiera data, and any necessary spec tests
• A short README outlining how to install and call each module
The project will be considered complete once the code compiles without warnings, the existing functionality behaves exactly as before, and the new modules can be installed independently via r10k or Code Manager.
• configuration management logic
• application-deployment logic
No additional features are required—this is purely an upgrade and clean split of what is already there. While you restructure, please bring the manifests, classes, and accompanying tests up to current Puppet best practices so the new modules are more reliable and flexible going forward.
Feel free to choose sensible naming conventions and directory layout; I’m happy to follow community best practices rather than imposing a custom standard.
Deliverables
• Refactored repository with 2–3 independent modules
• Updated module metadata, hiera data, and any necessary spec tests
• A short README outlining how to install and call each module
The project will be considered complete once the code compiles without warnings, the existing functionality behaves exactly as before, and the new modules can be installed independently via r10k or Code Manager.
Related categories:
Agile Development
Puppet
Software Development
Documentation
Jenkins
Continuous Integration
DevOps
Automation
Terraform