Contributor’s Guidelines
All YAML files named with
.ymlextensionUse spaces around jinja variables.
{{ var }}over{{var}}Variables that are internal to the role should be lowercase and start with the role name
Keep roles self contained - Roles should avoid including tasks from other roles when possible
Plays should do nothing more than include a list of roles except where
pre_tasksandpost_tasksare required when possibleSeparators - Use valid name, ie. underscores (e.g.
my_rolemy_playbook) not dashes (my-role)Paths - When defining paths, do not include trailing slashes (e.g.
my_path: /foonotmy_path: /foo/). When concatenating paths, follow the same convention (e.g.{{ my_path }}/barnot{{ my_path }}bar)Indentation - Use 2 spaces for each indent
vars/vsdefaults/- internal or interpolated variables that don’t need to change or be overridden by user go invars/, those that a user would likely override, go underdefaults/directoryAll arguments have a specification in
meta/argument_specs.ymlAll playbooks/roles should be focused on compatibility with Ansible Automation Platform
Development environment
To develop and to run tests you need to install tox and tox-ansible on
your machine.
pip install --user tox tox-ansible
Virtualenv for development
To build a virtualenv for development purposes run the following command:
make build-venv
The resulting virtualenv will be symlinked to .venv, which for example can
be selected as virtualenv in VSCode (Shift+Ctrl+P and then
Python: Select Interpreter).