You can contribute to this project in many ways.
Declaring an issue [▲](#top-page "back to top") ==================
Your can declare issues using our official bugtracker.
- Ensure you (we) can easily reproduce your issue using simple steps
- Check your installation using our installation procedure
- Check that you have root acces to your remote hosts using ssh
- Check if your issue isn't already declared using our search engine
- Inventory file used
- Config.yml and customized content in group_vars or host_vars
- /etc/hosts content
Providing a patch or a new feature [▲](#top-page "back to top") ==================================
You can provide pull-requests using github. We will try to merge pull-requests whenever possible.
- Check if your pull request is related to an existing issue
- If not, create it. We do not read github's issues.
- There is currently no automated testing tools so try to check that your doesn't brake anything
Development rules [▲](#top-page "back to top") =================
- A task must have a name
- A task must have at least a tag
- Tags represent the role or, if role is common, a functionnality
- Command module is better than shell module
- Using a module is better than using a command
- Beware of flushing handlers when they are needed by other tasks
- Variables are written in lowercase and use underscores to separate words
- If your variable is a configuration key, place it in group_vars/all
- If your variable is specific to a group and will never been update by users, place it in group_vars/your_group
- If your variable is specific to a role and will never been update by users, place it role/you_role/vars