mirror of
https://github.com/gomods/athens
synced 2026-02-03 14:20:31 +00:00
41 lines
1.8 KiB
Markdown
41 lines
1.8 KiB
Markdown
# Contributing to Athens
|
|
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](https://www.youtube.com/watch?v=bgSDcTyysRc) to help you get started, and you can always ask us for help in the `#athens` channel in the [gopher slack](https://invite.slack.golangbridge.org/). We'll give you whatever guidance you need. Another great resource for first time contributors can be found [here](https://github.com/firstcontributions/first-contributions/blob/master/README.md).
|
|
|
|
## 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](DEVELOPMENT.md#L84)
|
|
|
|
## 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](https://help.github.com/articles/about-pull-requests/).
|
|
|
|
If you're interested, take a look at [REVIEWS.md](REVIEWS.md) to learn how
|
|
your PR will be reviewed and how you can help get it merged.
|