FAQ | This is a LIVE service | Changelog

Skip to content
Snippets Groups Projects
Commit db4e763f authored by Robin Goodall's avatar Robin Goodall :speech_balloon:
Browse files

Merge branch 'issue-5-readme' into 'master'

README.md: copy-edit slightly

Closes #5

See merge request !32
parents 88c544c1 36d5a81f
No related branches found
No related tags found
1 merge request!32README.md: copy-edit slightly
Pipeline #1777 passed
# Shared Ansible roles
This repository contains DevOps group shared ansible roles.
This repository contains DevOps group shared ansible roles. It can be paired
with the [Ansible role fetcher
utility](https://gitlab.developers.cam.ac.uk/uis/devops/tools/ansibleroles) to
provide shared roles for Ansible playbooks.
## Best Practices
All roles in this repository should:
- Have a README
- Have a usage example
- Assert all required variables are set
- Be idempotent
- Be compose-able
- Be orthogonal
- Be idempotent: running the role twice should have the same effect as running
it once.
- Be compose-able: roles should configure one small thing so that they may be
combined together to solve bigger problems. Small roles should support being
include-ed within larger roles.
- Be orthogonal: roles should not replace files likely to be touched by other
roles.
- Should pass ansible-lint checking
Roles in this repo must be general purpose with all settings that can be set to a sensible default put in the defaults file.
Roles in this repo must be general purpose with all settings that can be set to
a sensible default put in the defaults file.
## Variables
Any settings where a default makes no sense must assert the variable is set.
## READMEs
Every role in here must have a `README.md` based on the `template-role-README.md`
## Check mode
Roles here must be able to be run in check mode on an configured system
## Changed
Roles here must be able to be run on a configured system without returning any `changed` states.
ie. running the playbook twice once will configure the system the second will find everything working correctly
Roles here must be able to be run on a configured system without returning any
`changed` states. That is to say: when running the playbook twice, the first run
will configure the system the second will find everything working correctly and
make no changes.
## Lint
Every role in here will be automatically linted by ansible-lint and must pass before being accepted here
Every role in here will be automatically linted by ansible-lint and must pass
before being accepted here
## Automatic testing
>***TODO*** Every role here will be automatically tested on Ubuntu 16.04, 18.04 and CentOS 7 and must assert if it can't be run on one of these
> ***TODO*** Every role here will be automatically tested on Ubuntu 16.04, 18.04
> and CentOS 7 and must assert if it can't be run on one of these
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment