Skip to content

Commit 2978e6f

Browse files
author
Kent Rancourt
committed
doc(contributing): update contributing.md
1 parent 08d899f commit 2978e6f

4 files changed

Lines changed: 60 additions & 117 deletions

File tree

CONTRIBUTING.md

Lines changed: 24 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -1,101 +1,43 @@
11
# How to Contribute
22

3-
The Deis project is Apache 2.0 licensed and accepts contributions via Github pull
4-
requests. This document outlines some of the conventions on commit message formatting,
5-
contact points for developers and other resources to make getting your contribution
6-
accepted.
3+
Deis components are Apache 2.0 licensed and accept contributions via Github pull requests. This document outlines resources and conventions useful for anyone wishing to contribute either by reporting issues or submitting pull requests.
74

85
# Certificate of Origin
96

10-
By contributing to this project you agree to the
11-
[Developer Certificate of Origin (DCO)][dco]. This document was created by the Linux
12-
Kernel community and is a simple statement that you, as a contributor, have the legal
13-
right to make the contribution.
7+
By contributing to any Deis project you agree to its [Developer Certificate of Origin (DCO)][dco]. This document was created by the Linux Kernel community and is a simple statement that you, as a contributor, have the legal right to make the contribution.
148

159
# Support Channels
1610

17-
Before opening a new issue, it's helpful to search the project - it's likely that another user
18-
has already reported the issue you're facing, or it's a known issue that we're already aware of.
11+
Before opening a new issue or PR against any Deis project, it's helpful to search that project's issue queue - it's likely that another user has already reported the issue you're facing, or it's a known issue that we're already aware of.
1912

20-
Additionally, see the [Troubleshooting Deis][troubleshooting] documentation for common issues.
13+
A consolidated view of open issues and pull requests for all Deis projects is available [here][issues].
14+
15+
Additionally, see the [Troubleshooting][] documentation for common issues.
2116

2217
Our official support channels are:
2318

24-
- GitHub issues: https://github.com/deis/deis/issues/new
19+
- GitHub issue queues:
20+
- builder: https://github.com/deis/builder/issues
21+
- chart: https://github.com/deis/charts/issues
22+
- database: https://github.com/deis/postgres/issues
23+
- etcd: https://github.com/deis/etcd/issues
24+
- helm: https://github.com/helm/helm/issues
25+
- minio: https://github.com/deis/minio/issues
26+
- registry: https://github.com/deis/registry/issues
27+
- router: https://github.com/deis/router/issues
28+
- workflow: https://github.com/deis/workflow/issues
29+
- All other public [Deis repositories][repos]
2530
- IRC: #[deis](irc://irc.freenode.org:6667/#deis) IRC channel on freenode.org
2631

2732
## Getting Started
2833

29-
- Fork the repository on GitHub
30-
- Read [the documentation](http://docs.deis.io/en/latest/contributing/hacking/) for build instructions
31-
32-
## Contribution Flow
33-
34-
This is a rough outline of what a contributor's workflow looks like:
35-
36-
- Create a topic branch from where you want to base your work. This is usually master.
37-
- Make commits of logical units.
38-
- Make sure your commit messages are in the proper format, see below
39-
- Push your changes to a topic branch in your fork of the repository.
40-
- Submit a pull request
41-
42-
Thanks for your contributions!
43-
44-
### Design Documents
45-
46-
Most substantial changes to Deis should follow a [Design Document](http://docs.deis.io/en/latest/contributing/design-documents/)
47-
describing the proposed changes and how they are tested and verified before they
48-
are accepted into the project.
49-
50-
### Commit Style Guideline
51-
52-
We follow a rough convention for commit messages borrowed from CoreOS, who borrowed theirs
53-
from AngularJS. This is an example of a commit:
54-
55-
feat(scripts/test-cluster): add a cluster test command
56-
57-
this uses tmux to setup a test cluster that you can easily kill and
58-
start for debugging.
59-
60-
To make it more formal, it looks something like this:
61-
62-
63-
{type}({scope}): {subject}
64-
<BLANK LINE>
65-
{body}
66-
<BLANK LINE>
67-
{footer}
68-
69-
The {scope} can be anything specifying place of the commit change.
70-
71-
The {subject} needs to use imperative, present tense: “change”, not “changed” nor
72-
“changes”. The first letter should not be capitalized, and there is no dot (.) at the end.
73-
74-
Just like the {subject}, the message {body} needs to be in the present tense, and includes
75-
the motivation for the change, as well as a contrast with the previous behavior. The first
76-
letter in a paragraph must be capitalized.
77-
78-
All breaking changes need to be mentioned in the {footer} with the description of the
79-
change, the justification behind the change and any migration notes required.
80-
81-
Any line of the commit message cannot be longer than 72 characters, with the subject line
82-
limited to 50 characters. This allows the message to be easier to read on github as well
83-
as in various git tools.
84-
85-
The allowed {types} are as follows:
86-
87-
feat -> feature
88-
fix -> bug fix
89-
docs -> documentation
90-
style -> formatting
91-
ref -> refactoring code
92-
test -> adding missing tests
93-
chore -> maintenance
94-
95-
### More Details on Commits
34+
The [Development Environment][dev-environment] documentation extensively details procedures for setting up a development environment and outlines the contribution workflow.
9635

97-
For more details see the [commit style guide][style-guide].
36+
[Submitting a Pull Request][pr] documents stylistic conventions that help Deis maintainers to more easily review and accept your PRs.
9837

9938
[dco]: DCO
100-
[style-guide]: http://docs.deis.io/en/latest/contributing/standards/#commit-style-guide
101-
[troubleshooting]: http://docs.deis.io/en/latest/troubleshooting_deis/
39+
[issues]: https://github.com/pulls?utf8=%E2%9C%93&q=is%3Aopen+user%3Adeis+user%3Ahelm
40+
[repos]: https://github.com/deis
41+
[troubleshooting]: docs/src/troubleshooting/troubleshooting.md
42+
[dev-environment]: docs/src/contributing/development-environment.md
43+
[pr]: docs/src/contributing/submitting-a-pull-request.md

docs/mkdocs.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ pages:
4646
- Customizing Deis:
4747
- CLI Plugins: customizing-deis/cli-plugins.md
4848
- Troubleshooting:
49-
- Troubleshooting with kubectl: troubleshooting/troubleshooting-with-kubectl.md
49+
- Troubleshooting with kubectl: troubleshooting/troubleshooting.md
5050
- Roadmap:
5151
- Planning Process: roadmap/planning-process.md
5252
- Roadmap: roadmap/roadmap.md

docs/src/contributing/submitting-a-pull-request.md

Lines changed: 34 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -41,50 +41,51 @@ Python code should always adhere to [PEP8][], the python code style guide, with
4141

4242
## Commit Style
4343

44-
git commit messages must follow this format:
44+
We follow a convention for commit messages borrowed from CoreOS, who borrowed theirs
45+
from AngularJS. This is an example of a commit:
4546

46-
{type}({scope}): {subject}
47-
<BLANK LINE>
48-
{body}
49-
<BLANK LINE>
50-
{footer}
47+
```
48+
feat(scripts/test-cluster): add a cluster test command
5149
52-
### Example
50+
this uses tmux to setup a test cluster that you can easily kill and
51+
start for debugging.
52+
```
5353

54-
feat(workflow): add frobnitz pipeline spout discovery
54+
To make it more formal, it looks something like this:
5555

56-
Introduces a FPSD component compatible with the industry standard for
57-
spout discovery.
56+
```
57+
{type}({scope}): {subject}
58+
<BLANK LINE>
59+
{body}
60+
<BLANK LINE>
61+
{footer}
62+
```
5863

59-
BREAKING CHANGE: Fixing the buffer overflow in the master subroutine
60-
required losing compatibility with the UVEX-9. Any UVEX-9 or
61-
umVEX-8 series artifacts will need to be updated to umVX format
62-
with the consortium or vendor toolset.
64+
The allowed `{types}` are as follows:
6365

64-
### Subject Line
66+
* `feat` -> feature
67+
* `fix`` -> bug fix
68+
* `docs` -> documentation
69+
* `style` -> formatting
70+
* `ref` -> refactoring code
71+
* `test` -> adding missing tests
72+
* `chore` -> maintenance
6573

66-
The first line of a commit message is its subject. It contains a brief description of the change, no longer than 50 characters.
74+
The `{scope}` can be anything specifying the location(s) of the commit change(s).
6775

68-
These `{types}` are allowed:
76+
The `{subject}` needs to be an imperative, present tense verb: “change”, not “changed” nor
77+
“changes”. The first letter should not be capitalized, and there is no dot (.) at the end.
6978

70-
- **feat** -> feature
71-
- **fix** -> bug fix
72-
- **docs** -> documentation
73-
- **style** -> formatting
74-
- **ref** -> refactoring code
75-
- **test** -> adding missing tests
76-
- **chore** -> maintenance
79+
Just like the `{subject}`, the message `{body}` needs to be in the present tense, and includes
80+
the motivation for the change, as well as a contrast with the previous behavior. The first
81+
letter in a paragraph must be capitalized.
7782

78-
The `{scope}` specifies the location of the change, such as "Dockerfile," "tests", or "manifests". The `{subject}` should use an imperative, present-tense verb: "change," not "changes" or "changed." Don't capitalize the verb or add a period (.) at the end of the subject line.
79-
80-
### Message Body
81-
82-
Separate the message body from the subject with a blank line. It includes the motivation for the change and points out differences from previous behavior. The body and the footer should be written as full sentences.
83-
84-
### Message Footer
85-
86-
Separate a footer from the message body with a blank line. Mention any breaking change along with the justification and migration notes. If the changes cannot be tested by Deis' test scripts, include specific instructions for manual testing.
83+
All breaking changes need to be mentioned in the `{footer}` with the description of the
84+
change, the justification behind the change and any migration notes required.
8785

86+
Any line of the commit message cannot be longer than 72 characters, with the subject line
87+
limited to 50 characters. This allows the message to be easier to read on GitHub as well
88+
as in various git tools.
8889

8990
## Merge Approval
9091

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
# Troubleshooting with kubectl
1+
# Troubleshooting
22

33
TODO (bacongobbler): rewrite for v2

0 commit comments

Comments
 (0)