40 lines
1.5 KiB
Markdown
40 lines
1.5 KiB
Markdown
|
---
|
|||
|
title: Test-Driven Ansible Role Development with Molecule
|
|||
|
date: 2019-06-02
|
|||
|
excerpt: Some resources that I found for testing Ansible roles with a tool called Molecule.
|
|||
|
tags:
|
|||
|
- ansible
|
|||
|
- molecule
|
|||
|
- testing
|
|||
|
- video
|
|||
|
---
|
|||
|
|
|||
|
I used to maintain a number of [Ansible roles][roles], and I recently wrote one
|
|||
|
for automatically generating `settings.php` files for Drupal projects that I use
|
|||
|
for some client projects as part of the [Ansible and Ansistrano deployment
|
|||
|
process][talk], as it can populate these files with credentials stored in
|
|||
|
Ansible Vault.
|
|||
|
|
|||
|
I uploaded an initial version of the role [onto GitHub][github], but haven’t yet
|
|||
|
released it onto Ansible Galaxy.
|
|||
|
|
|||
|
I’d seen in other people’s roles and read elsewhere about writing automated
|
|||
|
tests for Ansible roles using a tool called [Molecule][molecule], and wanted to
|
|||
|
write some tests for this role before publishing it onto Galaxy.
|
|||
|
|
|||
|
I looked around for resources about Molecule, and found a [blog post by Jeff
|
|||
|
Geerling][jeff-post], but also this YouTube video that I found very helpful.
|
|||
|
|
|||
|
I’ve since been re-writing the role from scratch based on Molecule, and plan to
|
|||
|
release an official version of it soon.
|
|||
|
|
|||
|
{% include 'youtube-video' with { id: DAnMyBZ8-Qs } %}
|
|||
|
|
|||
|
[github]: https://github.com/opdavies/ansible-role-drupal-settings
|
|||
|
[jeff-post]:
|
|||
|
https://www.jeffgeerling.com/blog/2018/testing-your-ansible-roles-molecule
|
|||
|
[molecule]: https://molecule.readthedocs.io
|
|||
|
[roles]:
|
|||
|
https://docs.ansible.com/ansible/latest/user_guide/playbooks_reuse_roles.html
|
|||
|
[talk]: /talks/deploying-php-ansible-ansistrano
|