Skip to content

Commit c044cc6

Browse files
committed
update contributing.md
1 parent 009829c commit c044cc6

File tree

1 file changed

+25
-4
lines changed

1 file changed

+25
-4
lines changed

CONTRIBUTING.md

Lines changed: 25 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,17 @@ Thank you for your interest in Troubleshoot, we welcome your participation. Plea
66
- [Request a New Feature](https://github.com/replicatedhq/troubleshoot/issues/new?assignees=&labels=feature&template=feature_enhancement.md) Create an issue to add functionality that addresses a problem or adds an enhancement.
77
- [Report a Bug](https://github.com/replicatedhq/troubleshoot/issues/new?assignees=&labels=bug&template=bug_report.md) Report a problem or unexpected behaviour with Troubleshoot.
88

9-
## Pull Requests
9+
## Development Environment
1010

11-
If you are interested in contributing a change to the code or documentation please open a pull request with your set of changes. The pull request will be reviewed in a timely manner.
11+
To get started we recommend:
1212

13-
## Tests
13+
1. Go (v1.17 or later)
14+
2. Kubernetes (we recommend https://k3d.io/. requires Docker v20.10.5 or later)
15+
3. Fork and clone the repo to $GOPATH/src/github.com/replicatedhq/
16+
4. Run `make support-bundle preflight` to generate binaries
17+
5. Run `make run-troubleshoot` to generate a support bundle with the `sample-troubleshoot.yaml` in the root of the repo
18+
19+
### Testing
1420

1521
To run the tests locally run the following:
1622

@@ -24,4 +30,19 @@ Additionally, e2e tests can be run with:
2430
make support-bundle preflight e2e-test
2531
```
2632

27-
A kubernetes cluster as well as `jq` are required to run e2e tests.
33+
A Kubernetes cluster as well as `jq` are required to run e2e tests.
34+
35+
## Contribution workflow
36+
37+
This is a rough outline of how to prepare a contribution:
38+
39+
- Create a topic branch from where you want to base your work (branched from main).
40+
- Make commits of logical units.
41+
- Push your changes to a topic branch in your fork of the repository.
42+
- Submit a pull request to the original repository. It will be reviewed in a timely manner.
43+
44+
### Pull Requests
45+
46+
A pull request should address a single issue, feature or bug. For example, lets say you've written code that fixes two issues. That's great! However, you should submit two small pull requests, one for each issue as opposed to combining them into a single larger pull request. In general the size of the pull request should be kept small in order to make it easy for a reviewer to understand, and to minimize risks from integrating many changes at the same time. For example, if you are working on a large feature you should break it into several smaller PRs by implementing the feature as changes to several packages and submitting a separate pull request for each one.
47+
48+
Code submitted in pull requests must be properly documented, formatted and tested in order to be approved and merged. The following guidelines describe the things a reviewer will look for when they evaluate your pull request. Here's a tip. If your reviewer doesn't understand what the code is doing, they won't approve the pull request. Strive to make code clear and well documented. If possible, request a reviewer that has some context on the PR.

0 commit comments

Comments
 (0)