Skip to content

Commit fc63faf

Browse files
authored
Added contributing guidelines file plus reference in readme (#90)
## Summary Added contributing.md as well as reference from readme to it. ## How was it tested? Not tested - only documentation change.
1 parent d0e4c23 commit fc63faf

File tree

2 files changed

+93
-0
lines changed

2 files changed

+93
-0
lines changed

CONTRIBUTING.md

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
# Contributing
2+
3+
When contributing to this repository, please describe the change you wish to make via a related issue, or a pull request.
4+
5+
Please note we have a [code of conduct](CODE_OF_CONDUCT.md), please follow it in all your interactions with the project.
6+
7+
## Setting Up Development Environment
8+
Before making any changes to the source code (documentation excluded) make sure you have installed all the required tools.
9+
### Prerequisites
10+
* Install [Nix Package Manager](https://nixos.org/download.html).
11+
* Install [Golang](https://go.dev/doc/install) (current version: 1.19)
12+
* Clone this repository:
13+
* ```bash
14+
git clone github.com/jetpack/devbox go.jetpack.io
15+
```
16+
* Setup you `GOPATH` env variable to the parent directory of `go.jetpack.io/`
17+
* Example: If the cloned repository is at `/Users/johndoe/projects/go.jetpack.io/`:
18+
```bash
19+
export GOPATH=/Users/johndoe/projects/
20+
```
21+
22+
## Building and Testing
23+
Devbox is setup like a typical Go project. After installing the required tools and setting up your environment. You can make changes in the source code, build, and test your changes by following these steps:
24+
25+
1. Install dependencies:
26+
```bash
27+
go install
28+
```
29+
2. Build Devbox:
30+
```bash
31+
go build -o ./devbox cmd/devbox/main.go
32+
```
33+
This will build an executable file.
34+
3. Run and test Devbox:
35+
```bash
36+
./devbox <your_test_command>
37+
```
38+
39+
40+
## Pull Request Process
41+
42+
1. Ensure any new feature or functionality also includes tests to verify its correctness.
43+
44+
2. Ensure any new dependency is also included in [go.mod](go.mod) file
45+
46+
2. Ensure any binary file as a result of build (e.g., `./devbox`) are removed and/or excluded from tracking in git.
47+
48+
3. Update the [README.md](README.md) and/or docs with details of changes to the interface, this includes new environment
49+
variables, new commands, new flags, and useful file locations.
50+
51+
4. You may merge the Pull Request in once you have the sign-off of developers/maintainers, or if you
52+
do not have permission to do that, you may request the maintainers to merge it for you.
53+
54+
## Developer Certificate of Origin
55+
By contributing to this project you agree to the [Developer Certificate of Origin](https://developercertificate.org/) (DCO) which was created by the Linux Foundation and is a simple statement that you, as a contributor, have the legal right to make the contribution. See the DCO description for details below:
56+
> Developer Certificate of Origin
57+
>
58+
> Version 1.1
59+
>
60+
> Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
61+
>
62+
> Everyone is permitted to copy and distribute verbatim copies of this
63+
license document, but changing it is not allowed.
64+
>
65+
>
66+
> Developer's Certificate of Origin 1.1
67+
>
68+
> By making a contribution to this project, I certify that:
69+
>
70+
> (a) The contribution was created in whole or in part by me and I
71+
have the right to submit it under the open source license
72+
indicated in the file; or
73+
>
74+
> (b) The contribution is based upon previous work that, to the best
75+
of my knowledge, is covered under an appropriate open source
76+
license and I have the right under that license to submit that
77+
work with modifications, whether created in whole or in part
78+
by me, under the same open source license (unless I am
79+
permitted to submit under a different license), as indicated
80+
in the file; or
81+
>
82+
> (c) The contribution was provided directly to me by some other
83+
person who certified (a), (b) or (c) and I have not modified
84+
it.
85+
>
86+
> (d) I understand and agree that this project and the contribution
87+
are public and that a record of the contribution (including all
88+
personal information I submit with it, including my sign-off) is
89+
maintained indefinitely and may be redistributed consistent with
90+
this project or the open source license(s) involved.

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -162,6 +162,9 @@ See the [CLI Reference](https://www.jetpack.io/devbox/docs/cli_reference/) for t
162162
+ File bug reports and feature requests using [Github Issues](https://github.com/jetpack-io/devbox/issues)
163163
+ Follow us on [Jetpack's Twitter](https://twitter.com/jetpack_io) for product updates
164164

165+
## Contributing
166+
Devbox is an opensource project so contributions are always welcome. Please read [our contributing guide](CONTRIBUTING.md) before submitting pull requests.
167+
165168
## Related Work
166169

167170
Thanks to [Nix](https://nixos.org/) for providing isolated shells.

0 commit comments

Comments
 (0)