Permalink
Switch branches/tags
Find file Copy path
40 lines (26 sloc) 1.82 KB

Hurray! We are glad that you want to contribute to our project! 👍

If this is your first contribution, not to worry! We have a great tutorial to help you get started, and you can always ask us for help in the #athens channel in the gopher slack. We'll give you whatever guidance you need. Another great resource for first time contributors can be found here.

Claiming an issue

If you see an issue that you'd like to work on, please just post a comment saying that you want to work on it. Something like "I want to work on this" is fine.

Verify your work

Run make verify test-unit test-e2e to run all the same validations that our CI process runs, such as checking that the standard go formatting is applied, linting, etc.

Setup your dev environment

Run make setup-dev-env to install local developer tools and run necessary services, such as mongodb, for the end-to-end tests.

Unit Tests

For further details see DEVELOPMENT.md

End-to-End Tests

End-to-End tests (e2e) are tests from the user perspective that validate that everything works when running real live servers, and using go with GOPROXY set.

Run make test-e2e to run the end-to-end tests.

The first time you run the tests, you must run make setup-dev-env first, otherwise you will see errors like the one below:

error connecting to storage (no reachable servers)

Next Steps

After you get your code working, submit a Pull Request (PR) following Github's PR model.

If you're interested, take a look at REVIEWS.md to learn how your PR will be reviewed and how you can help get it merged.