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
{{ message }}
This repository was archived by the owner on Mar 9, 2024. It is now read-only.
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+28-11Lines changed: 28 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,8 @@
1
1
# Contributor Guideline
2
2
3
-
This document provides an overview of how you can participate in improving this project or extending it. We are grateful for all your help: bug reports and fixes, code contributions, documentation or ideas. Feel free to join, we appreciate your support!!
3
+
This document provides an overview of how you can participate in improving this project or extending it. We are
4
+
grateful for all your help: bug reports and fixes, code contributions, documentation or ideas. Feel free to join, we
5
+
appreciate your support!!
4
6
5
7
## Communication
6
8
@@ -10,7 +12,8 @@ You can talk with us on #cloudalchemy channel on freenode.
10
12
11
13
### GitHub repositories
12
14
13
-
Much of the issues, goals and ideas are tracked in the respective projects in GitHub. Please use this channel to report bugs.
15
+
Much of the issues, goals and ideas are tracked in the respective projects in GitHub. Please use this channel to report
16
+
bugs.
14
17
15
18
## git and GitHub
16
19
@@ -26,47 +29,61 @@ To have your code merged, see the expectations listed below.
26
29
27
30
You can find a well-written guide [here](https://help.github.com/articles/fork-a-repo).
28
31
29
-
Please follow common commit best-practices. Be explicit, have a short summary, a well-written description and references. This is especially important for the merge-request.
32
+
Please follow common commit best-practices. Be explicit, have a short summary, a well-written description and
33
+
references. This is especially important for the merge-request.
30
34
31
-
Some great guidelines can be found [here](https://wiki.openstack.org/wiki/GitCommitMessages) and [here](http://robots.thoughtbot.com/5-useful-tips-for-a-better-commit-message).
35
+
Some great guidelines can be found [here](https://wiki.openstack.org/wiki/GitCommitMessages) and
We try to stick to semantic versioning and our releases are made by CI pipeline. It is done by assigning a keyword (in a way similar to travis [`[ci skip]`](https://docs.travis-ci.com/user/customizing-the-build#Skipping-a-build)) to a commit with merge request. Available keywords are (square brackets are important!):
40
+
We try to stick to semantic versioning and our releases are automated. Release is created by assigning a keyword (in a
41
+
way similar to travis [`[ci skip]`](https://docs.travis-ci.com/user/customizing-the-build#Skipping-a-build)) to a
42
+
commit with merge request. Available keywords are (square brackets are important!):
36
43
37
44
*`[patch]`, `[fix]` - for PATCH version release
38
45
*`[minor]`, `[feature]`, `[feat]` - for MINOR version release
39
46
*`[major]`, `[breaking change]` - for MAJOR version release
40
47
41
48
## Changelog
42
49
43
-
Changelog is generateg automatically on every merged Pull Request and all information is taken from github issues, PRs and labels.
50
+
Changelog is generateg automatically on every merged Pull Request and all information is taken from github issues, PRs
51
+
and labels.
44
52
45
53
## Expectations
46
54
47
55
### Keep it simple
48
56
49
-
We try to provide production ready ansible roles which should be as much zero-conf as possible but this doesn't mean to overcomplicate things. Just follow [KISS](https://en.wikipedia.org/wiki/KISS_principle).
57
+
We try to provide production ready ansible roles which should be as much zero-conf as possible but this doesn't mean to
58
+
overcomplicate things. Just follow [KISS](https://en.wikipedia.org/wiki/KISS_principle).
50
59
51
60
### Be explicit
52
61
53
62
* Please avoid using nonsensical property and variable names.
54
63
* Use self-describing attribute names for user configuration.
55
-
* In case of failures, communicate what happened and why a failure occurs to the user. Make it easy to track the code or action that produced the error. Try to catch and handle errors if possible to provide improved failure messages.
64
+
* In case of failures, communicate what happened and why a failure occurs to the user. Make it easy to track the code
65
+
or action that produced the error. Try to catch and handle errors if possible to provide improved failure messages.
56
66
57
67
58
68
### Add tests
59
69
60
-
Currently we are using two test scenarios located in [/molecule](molecule) directory. First ([default](molecule/default/molecule.yml)) one is testing default configuration without any additional variables, second one ([alternative](molecule/alternative/molecule.yml)) is testing what happens when many variables from [/defaults/main.yml](defaults/main.yml) are changed. When adding new functionalities please add tests to proper scenarios. Tests are written in testinfra framework and are located in `/tests` subdirectory of scenario directory (for example default tests are in [/molecule/default/tests](molecule/default/tests)).
70
+
We are striving to use at least two test scenarios located in [/molecule](molecule) directory. First one
71
+
([default](molecule/default)) is testing default configuration without any additional variables, second one
72
+
([alternative](molecule/alternative)) is testing what happens when many variables from
73
+
[/defaults/main.yml](defaults/main.yml) are changed. When adding new functionalities please add tests to proper
74
+
scenarios. Tests are written in testinfra framework and are located in `/tests` subdirectory of scenario directory
75
+
(for example default tests are in [/molecule/default/tests](molecule/default/tests)).
Please follow [ansible best practices](http://docs.ansible.com/ansible/latest/playbooks_best_practices.html) and especially provide meaningful names to tasks and even comments where needed.
82
+
Please follow [ansible best practices](http://docs.ansible.com/ansible/latest/playbooks_best_practices.html) and
83
+
especially provide meaningful names to tasks and even comments where needed.
68
84
69
-
Our test framework automatically lints code with [`yamllint`](https://yamllint.readthedocs.io) and [`ansible-lint`](https://github.com/willthames/ansible-lint) programs so be sure to follow their rules.
85
+
Our test framework automatically lints code with [`yamllint`](https://yamllint.readthedocs.io) and
86
+
[`ansible-lint`](https://github.com/willthames/ansible-lint) programs so be sure to follow their rules.
70
87
71
88
Remember: Code is generally read much more often than written.
0 commit comments