Some thoughts,
New functionality is typically directed toward modules
- Make sure you have a GitHub account.
- Submit a issue before making changes
- Fork the repository on GitHub.
- Create a topic branch from where you want to base your work.
- This is usually the master branch.
- Push your changes to a topic branch in your fork of the repository.
- Submit a pull request to the repository in the puppetlabs organization.