Skip to content

Latest commit

 

History

History
43 lines (33 loc) · 3.59 KB

CONTRIBUTING.md

File metadata and controls

43 lines (33 loc) · 3.59 KB

How to contribute

Cisco Network Elements support a rich set of features to make networks robust, efficient and secure. The GitHub project cisco-network-puppet-module defines a set of Puppet resource types and providers to manage the network element. Similarly, the GitHub project cisco-network-chef-cookbook defines a set of Chef resources and providers for network element management. The providers defined in these projects leverage a common set of Ruby API Objects defined in this project. This object set is expected to grow with contributions from Cisco, Cisco-Partners and third-party alike. Contributions to this project are welcome. To ensure code quality, contributors will be requested to follow few guidelines.

Getting Started

Making Changes

  • Fork and clone the repository

    • Run the bin/git/update-hooks script to install our recommended Git hooks into your local repository. (Note: some of the hooks require additional tools, such as the rubocop ruby gem, be installed and available in your $PATH. See Ruby Prerequisites for a list of recommended ruby gems.)
    • Pull a branch under the "develop" branch for your changes.
    • Follow all guidelines documented in README-develop-node_utils-APIs
    • Make changes in your branch.
  • Testing

    • Create a minitest script for any new APIs or new functionality
    • Run all the tests to ensure there was no collateral damage to existing code. See README-test-execution for details.
  • Committing

    • Check for unnecessary whitespace with git diff --check before committing.
    • Run rubocop against all changed files. See https://rubygems.org/gems/rubocop
    • Make sure your commit messages clearly describe the problem you are trying to solve and the proposed solution.
    • Be sure to update CHANGELOG.md with a note about what you have added or fixed.

Submitting Changes

All contributions submitted to this project are voluntary and subject to the terms of the Apache 2.0 license

  • Submit a pull request to the repository
    • Include output of all added or modified minitest scripts.
  • A core team consisting of Cisco and Cisco-Partner employees will review the 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 [email protected]

Additional Resources