You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
OpenEBS is an "umbrella project". Every project, repository and file in the OpenEBS organization adopts and follows the policies found in the Community repo umbrella project files.
6
8
<BR>
7
9
8
-
This project follows the [OpenEBS Code of Conduct](https://github.com/openebs/community/blob/HEAD/CODE_OF_CONDUCT.md)
10
+
This project follows the [OpenEBS Code of Conduct](https://github.com/openebs/community/blob/HEAD/CODE_OF_CONDUCT.md)
OpenEBS is an "umbrella project". Every project, repository and file in the OpenEBS organization adopts and follows the policies found in the Community repo umbrella project files.
6
-
<BR>
8
+
<br>
7
9
8
10
This project follows the [OpenEBS Contributor Guidelines](https://github.com/openebs/community/blob/HEAD/CONTRIBUTING.md)
9
11
10
-
# Contributing to OpenEBS Dynamic Local PV Provisioner
12
+
##Contributing to OpenEBS Dynamic Local PV Provisioner
11
13
12
14
OpenEBS uses the standard GitHub pull requests process to review and accept contributions. There are several areas that could use your help. For starters, you could help in improving the sections in this document by either creating a new issue describing the improvement or submitting a pull request to this repository. The issues for the various OpenEBS components (including this repository) are maintained in [openebs/openebs](https://github.com/openebs/openebs/issues) repository.
13
15
14
16
* If you are a first-time contributor, please see [Steps to Contribute](#steps-to-contribute).
15
17
* If you have documentation improvement ideas, go ahead and create a pull request. See [Pull Request checklist](#pull-request-checklist).
16
18
* If you would like to make code contributions, please start with [Setting up the Development Environment](#setting-up-your-development-environment).
17
-
* If you would like to work on something more involved, please connect with the OpenEBS Contributors. See [OpenEBS Community](https://github.com/openebs/openebs/tree/master/community).
19
+
* If you would like to work on something more involved, please connect with the OpenEBS Contributors. See [OpenEBS Community](https://github.com/openebs/openebs/tree/HEAD/community).
18
20
19
-
## Steps to Contribute
21
+
###Steps to Contribute
20
22
21
23
OpenEBS is an Apache 2.0 Licensed project and all your commits should be signed with Developer Certificate of Origin. See [Sign your work](#sign-your-work).
22
24
23
25
* Find an issue to work on or create a new issue. The issues are maintained at [openebs/openebs](https://github.com/openebs/openebs/issues). You can pick up from a list of [good-first-issues](https://github.com/openebs/openebs/labels/good%20first%20issue).
24
26
* Claim your issue by commenting your intent to work on it to avoid duplication of efforts.
25
27
* Fork the repository on GitHub.
26
-
* Create a branch from where you want to base your work (usually master).
28
+
* Create a branch from where you want to base your work (usually `develop`).
27
29
* Make your changes. If you are working on code contributions, please see [Setting up the Development Environment](#setting-up-your-development-environment).
28
30
* Relevant coding style guidelines are the [Go Code Review Comments](https://code.google.com/p/go-wiki/wiki/CodeReviewComments) and the _Formatting and style_ section of Peter Bourgon's [Go: Best Practices for Production Environments](http://peter.bourgon.org/go-in-production/#formatting-and-style).
29
31
* Commit your changes by making sure the commit messages convey the need and notes about the commit.
30
32
* Push your changes to the branch in your fork of the repository.
31
33
* Submit a pull request to the original repository. See [Pull Request checklist](#pull-request-checklist).
32
34
33
-
## Pull Request Checklist
35
+
###Pull Request Checklist
34
36
35
-
* Rebase to the current master branch before submitting your pull request.
37
+
* Rebase to the current `develop` branch before submitting your pull request.
36
38
* Commits should be as small as possible. Each commit should follow the checklist below:
37
-
- For code changes, add tests relevant to the fixed bug or new feature.
38
-
- Pass the compile and tests - includes spell checks, formatting, etc.
39
-
- Commit header (first line) should convey what changed.
40
-
- Commit body should include details such as why the changes are required and how the proposed changes.
41
-
- DCO Signed.
42
-
* If your PR is not getting reviewed or you need a specific person to review it, please reach out to the OpenEBS Contributors. See [OpenEBS Community](https://github.com/openebs/openebs/tree/master/community).
39
+
* For code changes, add tests relevant to the fixed bug or new feature.
40
+
* Pass the compile and tests - includes spell checks, formatting, etc.
41
+
* Commit header (first line) should convey what changed.
42
+
* Commit body should include details such as why the changes are required and how the proposed changes.
43
+
* DCO Signed.
44
+
* If your PR is not getting reviewed or you need a specific person to review it, please reach out to the OpenEBS Contributors. See [OpenEBS Community](https://github.com/openebs/openebs/tree/HEAD/community).
43
45
44
-
## Sign your work
46
+
###Sign your work
45
47
46
-
We use the Developer Certificate of Origin (DCO) as an additional safeguard for the OpenEBS project. This is a well established and widely used mechanism to assure that contributors have confirmed their right to license their contribution under the project's license. Please read [dcofile](https://github.com/openebs/openebs/blob/master/contribute/developer-certificate-of-origin). If you can certify it, then just add a line to every git commit message:
48
+
We use the Developer Certificate of Origin (DCO) as an additional safeguard for the OpenEBS project. This is a well established and widely used mechanism to assure that contributors have confirmed their right to license their contribution under the project's license. Please read [dcofile](https://github.com/openebs/openebs/blob/HEAD/contribute/developer-certificate-of-origin). If you can certify it, then just add a line to every git commit message:
47
49
48
50
Please certify it by just adding a line to every git commit message. Any PR with Commits which does not have DCO Signoff will not be accepted:
@@ -56,38 +58,45 @@ If you set your `user.name` and `user.email` in git config, you can sign your co
56
58
57
59
You can also use git [aliases](https://git-scm.com/book/tr/v2/Git-Basics-Git-Aliases) like `git config --global alias.ci 'commit -s'`. Now you can commit with `git ci` and the commit will be signed.
58
60
59
-
## Setting up your Development Environment
61
+
###Setting up your Development Environment
60
62
61
63
This project is implemented using Go and uses the standard golang tools for development and build. In addition, this project heavily relies on Docker and Kubernetes. It is expected that the contributors:
62
-
- are familiar with working with Go;
63
-
- are familiar with Docker containers;
64
-
- are familiar with Kubernetes and have access to a Kubernetes cluster or Minikube to test the changes.
64
+
65
+
* are familiar with working with Go;
66
+
* are familiar with Docker containers;
67
+
* are familiar with Kubernetes and have access to a Kubernetes cluster or Minikube to test the changes.
65
68
66
69
For setting up a Development environment on your local host, see the detailed instructions [here](./docs/developer.md).
67
70
68
-
## Reviews against Pull Requests
71
+
###Reviews against Pull Requests
69
72
70
73
A PR can be reviewed by both core as well as external contributors. Below can be referred to during reviews:
71
-
- contributor should fix all the linting issues raised by the lint tools integrated with CI (`make test`)
72
-
- contributor should try to implement relevant golang based unit tests for the fix/enhancement (`make test`)
73
-
- contributor should try to rework on the review comments as much as possible
74
-
- a review comment can be taken up later if it falls under any of the following categories
75
-
- if the review comment talks about a new idiom or code pattern that is not currently in use by this repo
76
-
- if the review comment talks about the need to implement integration test corresponding to the fix/enhancement
77
-
- if contributor as well as reviewer agree that it can be addressed in a different PR
78
-
- contributor should follow below pattern in code comments when some rework needs to be done at a later point:
74
+
75
+
* contributor should fix all the linting issues raised by the lint tools integrated with CI (`make test`)
76
+
* contributor should try to implement relevant golang based unit tests for the fix/enhancement (`make test`)
77
+
* contributor should try to rework on the review comments as much as possible
78
+
* a review comment can be taken up later if it falls under any of the following categories
79
+
* if the review comment talks about a new idiom or code pattern that is not currently in use by this repo
80
+
* if the review comment talks about the need to implement integration test corresponding to the fix/enhancement
81
+
* if contributor as well as reviewer agree that it can be addressed in a different PR
82
+
* contributor should follow below pattern in code comments when some rework needs to be done at a later point:
83
+
79
84
```go
80
85
// TD: -- indicates technical debt
81
86
```
87
+
82
88
```go
83
89
// NBDD: -- indicates needs integration tests in BDD format _(i.e. ginkgo tests)_
84
90
```
91
+
85
92
```go
86
93
// TD: SMALL -- indicates few/similar code changes & hence less impact
87
94
```
95
+
88
96
```go
89
97
// TD: MEDIUM -- indicates code changes at multiple files & may impact certain feature
90
98
```
99
+
91
100
```go
92
101
// TD: LARGE -- indicates code changes at multiple files & has impact on more than one features
OpenEBS is an "umbrella project". Every project, repository and file in the OpenEBS organization adopts and follows the policies found in the Community repo umbrella project files.
6
8
<BR>
7
9
8
-
This project follows the [OpenEBS Governance](https://github.com/openebs/community/blob/HEAD/GOVERNANCE.md)
10
+
This project follows the [OpenEBS Governance](https://github.com/openebs/community/blob/HEAD/GOVERNANCE.md)
0 commit comments