From f1e7092812657009b5cb1dc7a25d2ac9f56d2c20 Mon Sep 17 00:00:00 2001 From: Bhagyashri Shewale Date: Wed, 1 Sep 2021 15:07:30 +0530 Subject: [PATCH] Add molecule jobs to test the modules Change-Id: I0b252e2fc7d34f54f739199bdce450b1bef8d20b --- ansible.cfg | 4 ++++ molecule/default/converge.yml | 14 ++++++++++++++ molecule/default/molecule.yml | 12 ++++++++++++ molecule/default/verify.yml | 10 ++++++++++ tox.ini | 17 ++++++++++++++++- zuul.d/layout.yaml | 1 + 6 files changed, 57 insertions(+), 1 deletion(-) create mode 100644 ansible.cfg create mode 100644 molecule/default/converge.yml create mode 100644 molecule/default/molecule.yml create mode 100644 molecule/default/verify.yml diff --git a/ansible.cfg b/ansible.cfg new file mode 100644 index 0000000..1c30ebd --- /dev/null +++ b/ansible.cfg @@ -0,0 +1,4 @@ +# Used for testing to avoid using one from outside repository +[defaults] +# Avoid noise which can make debugging test failures harder +deprecation_warnings=False diff --git a/molecule/default/converge.yml b/molecule/default/converge.yml new file mode 100644 index 0000000..8c9e12c --- /dev/null +++ b/molecule/default/converge.yml @@ -0,0 +1,14 @@ +--- +- name: Converge + hosts: all + tasks: + + - name: "Test yum_config repo" + tripleo.repos.yum_config: + type: repo + name: appstream + enabled: true + tags: + # TODO: fix yum_config to correctly report changed state and uncomment + # the line below which disables molecule idemptotence test. + - molecule-idempotence-notest diff --git a/molecule/default/molecule.yml b/molecule/default/molecule.yml new file mode 100644 index 0000000..5cdf536 --- /dev/null +++ b/molecule/default/molecule.yml @@ -0,0 +1,12 @@ +--- +dependency: + name: galaxy +driver: + name: docker +platforms: + - name: instance + image: quay.io/centos/centos:stream8 +provisioner: + name: ansible +verifier: + name: ansible diff --git a/molecule/default/verify.yml b/molecule/default/verify.yml new file mode 100644 index 0000000..79044cd --- /dev/null +++ b/molecule/default/verify.yml @@ -0,0 +1,10 @@ +--- +# This is an example playbook to execute Ansible tests. + +- name: Verify + hosts: all + gather_facts: false + tasks: + - name: Example assertion + assert: + that: true diff --git a/tox.ini b/tox.ini index 14a9ba1..c08cdd7 100644 --- a/tox.ini +++ b/tox.ini @@ -7,7 +7,9 @@ requires = [testenv] usedevelop = True -setenv = VIRTUAL_ENV={envdir} +setenv = + ANSIBLE_FORCE_COLOR={tty:1:0} + VIRTUAL_ENV={envdir} passenv = HOME deps = @@ -81,6 +83,19 @@ commands = whitelist_externals = sh +[testenv:molecule] +description = Used by all molecule jobs (tox-ansible) +deps = + ansible-core + molecule>=3.3.0,<3.4.0 # bug with collection install + molecule-docker +usedevelop = False +skip_install = true +commands = + ansible-galaxy collection install -v 'community.docker:>=1.8.0' + ansible-galaxy collection install -v --force . + molecule test + [flake8] ignore = H803 show-source = True diff --git a/zuul.d/layout.yaml b/zuul.d/layout.yaml index ed1979f..27fc17d 100644 --- a/zuul.d/layout.yaml +++ b/zuul.d/layout.yaml @@ -21,6 +21,7 @@ vars: tox_envlist: pep8,packaging - openstack-tox-py39 + - tripleo-tox-molecule - tripleo-buildimage-overcloud-full-centos-8: dependencies: &deps_unit_lint_cprovider - openstack-tox-pep8