prometheus/CONTRIBUTING.md
Stuart Nelson 28b055554f moved CONTRIBUTING.md to top of repo; link to CONTRIBUTING.md in README.md
Change-Id: Ibe1def5c0c5e1e7f6eb0da344badc53d18f2ecb3
2013-10-23 16:21:35 -04:00

1.7 KiB

Contributing

Prometheus uses Gerrit to manage reviews of pull-requests, and then Gerrit replicates its master branch to GitHub. In order to contribute to Prometheus, you must use Gerrit.

Setup

  1. Sign in at http://review.prometheus.io/
  2. Set a username and upload an SSH pubkey for git ssh access. cat ~/.ssh/id_rsa.pub | pbcopy will copy your public key to your clipboard so you can paste it.
  3. Clone the repo: git clone http://review.prometheus.io/prometheus
  4. Add your user-specific remote that you will push your changes to: git remote add <your-remote-name> ssh://<username>@review.prometheus.io:29418/prometheus
  5. Add Change-Id commit hook: curl -o .git/hooks/commit-msg http://review.prometheus.io/tools/hooks/commit-msg
  6. Make the file executable: chmod u+x .git/hooks/commit-msg
  7. Commit any local changes to git, then:
  8. git push <your-remote-name> HEAD:refs/for/master
  9. Assign reviewer for change at http://review.prometheus.io/

Getting Started

  1. Reach out via our mailing list and ask us what the current priorities are. We can find a good isolated starter project for you.

  2. Keeping code hygiene is important. We thusly have a practical preference for the following:

    1. Run make format to ensure the correctness of the Go code's layout.

    2. Run make advice to find facial errors with a static analyzer.

    3. Try to capture your changes in some form of a test. Go makes it easy to write Table Driven Tests. There is no mandate to use this said scaffolding mechanism, but it can make your life easier in the right circumstances.

  3. Welcome aboard!