Cisco Network Elements support a rich set of features to make networks robust, efficient and secure. This project enables Cisco Network Elements to be managed by Puppet by defining a set of resource types and providers. This set is expected to grow with contributions from Cisco, Puppet Labs and third-party alike. Contributions to this project are welcome. To ensure code quality, contributers will be requested to follow a few guidelines.
- Create a GitHub account
- A virtual Nexus N9000/N3000 may be helpful for development and testing. Users with a valid cisco.com user ID can download the software on CCO. If you do not have a cisco.com user ID please register for one at https://tools.cisco.com/IDREG/guestRegistration
- Fork the repository
- Pull a branch under the "develop" branch for your changes.
- Follow all guidelines documented in README-develop-types-providers
- Make changes in your branch.
- Testing
- Add beaker test cases to validate your changes.
- Run all the tests to ensure there was no collateral damage to existing code.
- Check for unnecessary whitespace with
git diff --check - Run
rubocop --lintagainst all changed files. See https://rubygems.org/gems/rubocop
- For new resources, add a 'demo' entry to examples/demo_install.rb
- Ensure that your commit messages clearly describe the problem you are trying to solve and the proposed solution.
- All contributions you submit to this project are voluntary and subject to the terms of the Apache 2.0 license.
- Submit a pull request for commit approval to the "develop" branch.
- A core team consisting of Cisco and Puppet Labs employees will looks at Pull Request and provide feedback.
- After feedback has been given we expect responses within two weeks. After two weeks we may close the pull request if it isn't showing any activity.
- All code commits must be associated with your github account and email address. Before committing any code use the following commands to update your workspace with your credentials:
git config --global user.name "John Doe"
git config --global user.email johndoe@example.com- General GitHub documentation
- GitHub pull request documentation
- #puppet-dev IRC channel on freenode.org (Archive)
- puppet-dev mailing list