mirror of
https://github.com/getsops/sops.git
synced 2026-02-05 12:45:21 +01:00
31 lines
2.0 KiB
Markdown
31 lines
2.0 KiB
Markdown
# Contributing to SOPS
|
|
|
|
Mozilla welcomes contributions from everyone. Here are a few guidelines and instructions if you're thinking of helping with the development of SOPS.
|
|
|
|
# Getting started
|
|
|
|
* Make sure you have Go 1.12 or greater installed. You can find information on how to install Go [here](https://golang.org/dl/)
|
|
* After following the [Go installation guide](https://golang.org/doc/install), run `go get go.mozilla.org/sops`. This will automatically clone this repository.
|
|
* Switch into sops's directory, which will be in `$GOPATH/src/go.mozilla.org/sops`.
|
|
* Run the tests with `make test`. They should all pass.
|
|
* Fork the project on GitHub.
|
|
* Add your fork to git's remotes:
|
|
* If you use SSH authentication: `git remote add <your username> git@github.com:<your username>/sops.git`.
|
|
* Otherwise: `git remote add <your username> https://github.com/<your username>/sops.git`.
|
|
* **Switch to the `develop` branch: `git checkout develop`**
|
|
* Make any changes you want to sops, commit them, and push them to your fork.
|
|
* **Create a pull request against `develop`**, and a contributor will come by and review your code. They may ask for some changes, and hopefully your contribution will be merged to the `develop` branch!
|
|
|
|
# Guidelines
|
|
|
|
* Unless it's particularly hard, changes that fix a bug should have a regression test to make sure that the bug is not introduced again.
|
|
* New features and changes to existing features should be documented, and, if possible, tested.
|
|
|
|
# Regenerating mocks
|
|
|
|
If you encounter an error like `kms/mocks/KMSAPI.go:1607: cannot use (*KMSAPI)(nil) (type *KMSAPI) as type kmsiface.KMSAPI in assignment: *KMSAPI does not implement kmsiface.KMSAPI (missing ListResourceTags method)`, you need to regenerate mocks, probably because the interface was changed by a vendoring update. There is a make command to do this for you. Simply run `make mock`, and the new mocks will be automatically generated.
|
|
|
|
# Communication
|
|
|
|
If you need any help contributing to sops, several contributors are on the `#go` channel on [Mozilla's IRC server](https://wiki.mozilla.org/IRC).
|