Setup a machine to develop Ansible roles, including all the easy to work with tools, ansible, ansible-lint, molecule, travis and ara.
Go to file
Robert de Bock bf95f8c6c7 Up version. 2019-06-19 06:10:47 +02:00
files Initial commit. 2019-01-03 11:17:38 +00:00
inventory Adding auditd. 2019-06-18 17:51:25 +02:00
roles Use different way to call roles. 2019-06-12 07:34:22 +02:00
.gitignore Include roles for the collection. 2019-06-11 21:07:09 +02:00
.travis.yml Move a step to script, if it fails, fail the build. 2019-06-12 20:35:10 +02:00
README.md Use different way to call roles. 2019-06-12 07:34:22 +02:00
Vagrantfile Add ubuntu to both libvirt and virtualbox and fix ordering. 2019-01-28 13:30:45 +01:00
Vagrantfile.libvirt Use different way to call roles. 2019-06-12 07:34:22 +02:00
Vagrantfile.virtualbox Use different way to call roles. 2019-06-12 07:34:22 +02:00
ansible.cfg Just connect. 2019-04-04 17:07:03 +02:00
galaxy.yml Up version. 2019-06-19 06:10:47 +02:00
playbook.yml Use different way to call roles. 2019-06-12 07:34:22 +02:00

README.md

Ansible development environment

Setup a machine to write Ansible roles. Includes:

Download

Mazer

mazer install robertdebock.ansible_development_environment

Requirements

  • One machine
  • About 4GB or RAM will do.
  • 2 CPUs, 1 will also do.
  • Personalized inventory/group_vars/all.yml.

Mac / Linux

Vagrant requires a different file for Virtualbox (typically Mac OS X) and libvirt (typically Linux).

For Virtualbox / Mac OS X:

rm Vagrantfile
ln -s Vagrantfile.virtualbox Vagrantfile

For libvirt / Linux:

rm Vagrantfile
ln -s Vagrantfile.libvirt Vagrantfile

Now change a few files:

  • files/gitconfig should contain your details.
  • files/id_rsa should contain an ssh-key used to commit to GitHub.
  • inventory/hosts should contain your machine.
  • inventory/group_vars/all.yml should contain your details.

Install

Simply run ./playbook.yml. Preparing your system will take about 15 minutes or so.

Code

You are now ready to code! Have fun using these commands:

# See if your code meets all rules.
ansible-lint .
# Test all scenarios.
molecule test
# Test a specific scenario.
molecule test --scenario-name fedora-latest

You can see the playbook runs on https://localhost:9191/