Skip to content

Latest commit

 

History

History
88 lines (53 loc) · 2.97 KB

CONTRIBUTING.md

File metadata and controls

88 lines (53 loc) · 2.97 KB

Contributing to this role

Table of contents

Thank you very much for making time to improve this Ansible role.

Contributing

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms. Contributor Code of Conduct.

  1. Fork the repo

  2. Create a branch and apply your changes to this branch.

    a. Make sure you have updated the documentation when adding new variables;

    b. Don't forget to add/update tests so we can test the functionality during each Pull Request;

    c. Make sure the tests succeed.

  3. Push the branch to your fork and submit a pull request.

Note

Pull Requests that fail during the tests will not be merged.

Coding Guidelines

Style guides are important because they ensure consistency in the content, look, and feel of a book or a website.

  • Ansible Style Guide
  • It's "Ansible" when referring to the product and ansible when referring to the command line tool, package, etc
  • Playbooks should be written in multi-line YAML with key: value. The form key=value is only for ansible ad-hoc, not for ansible-playbook.
  • Tasks should always have a name:

(local) Development

This role makes use of Molecule to test the execution of the role and verify it. In the root of the repository https://github.com/dj-wasabi/ansible-ci-base, a file named requirements.txt exists and contains the versions used by the tests.

Requirements

You can install them with the following command:

pip install -r requirements.txt

Once the dependencies are installed, please install Docker as Molecule is configured in this repository to create Docker containers. See this link to install Docker on your system.

Execution

Once everything is installed, you can validate your changes by executing:

molecule test

It should run without any issues.

Other

Virtualenv

Suggestion is to create a virtualenv so you won't have issues with other projects.

Some web pages describing virtualenvs:

Links

Molecule

Ansible

Molecule V2 with your own role

End note: Have fun making changes. If a feature helps you, then others find it helpful too and I will happily have it merged.