Skip to content

Commit

Permalink
try to replace molecule.yml in test
Browse files Browse the repository at this point in the history
  • Loading branch information
pwalczysko committed Aug 23, 2024
1 parent 526d88b commit d6017b4
Showing 1 changed file with 61 additions and 58 deletions.
119 changes: 61 additions & 58 deletions molecule/omero-training-server/molecule.yml
Original file line number Diff line number Diff line change
@@ -1,59 +1,62 @@
---
dependency:
name: galaxy
options:
role-file: requirements.yml
driver:
name: docker
lint: |
yamllint .
ansible-lint
flake8
platforms:
- name: ome-outreach
image: centos/systemd
command: /sbin/init
privileged: true
groups:
- docker-hosts
- omero-server
- omero-web
- monitored
provisioner:
name: ansible
inventory:
group_vars:
all:
molecule_test: true
postgresql_version: "13"
docker-hosts:
# This should allow docker-in-docker to work
docker_storage_driver: vfs
# Latest version 17.12.1.ce-1.el7.centos has a bug that prevents
# testing on travis: https://github.com/docker/for-linux/issues/219
docker_version: 17.09.1.ce-1.el7.centos
# firewalld isn't installed, don't attempt to disable
iptables_raw_disable_firewalld: false
playbooks:
prepare: ../resources/prepare-iproute.yml
converge: ../../site.yml
lint:
name: ansible-lint
scenario:
name: omero-training-server
test_sequence:
- destroy
# dependency must come first so that ansible-lint will see a custom module
# This might be fixed by https://github.com/ansible/molecule/pull/1739
- dependency
- lint
- syntax
- create
- prepare
- converge
# FIXME: Some tasks are not idempotent
# - idempotence
- verify
- destroy
verifier:
name: testinfra
name: Molecule
# yamllint disable-line rule:truthy
on:
push:
pull_request:
schedule:
- cron: '29 21 * * 0'

jobs:

list-scenarios:
runs-on: ubuntu-22.04
outputs:
matrix: ${{ steps.listscenarios.outputs.scenarios }}
steps:
- uses: actions/checkout@v4
- id: listscenarios
uses: ome/action-ansible-molecule-list-scenarios@main

test:
name: Test
needs:
- list-scenarios
runs-on: ubuntu-22.04
strategy:
# Keep running so we can see if other tests pass
fail-fast: false
matrix:
scenario: ${{fromJson(needs.list-scenarios.outputs.matrix)}}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
with:
python-version: '3.9'
- name: Install Ansible & Molecule
run: |
pip install "ansible<8" "ansible-lint<6.13" flake8
pip install "molecule<5" "ansible-compat<4"
pip install molecule-plugins[docker] pytest-testinfra
- name: Run molecule
run: molecule test -s "${{ matrix.scenario }}"

publish:
name: Galaxy
if: startsWith(github.ref, 'refs/tags')
needs:
- test
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: Read the role name
id: role-name
run: |
name=$(grep 'role_name' meta/main.yml | sed -r 's/^[^:]*:(.*)$/\1/' | tr -d '[:space:]') # noqa
echo "rolename=$name" >> "$GITHUB_OUTPUT"
- name: Publish to Galaxy
uses: ome/action-ansible-galaxy-publish@main
with:
galaxy-api-key: ${{ secrets.GALAXY_API_KEY }}
galaxy-version: ${{ github.ref_name }}
role-name: ${{ steps.role-name.outputs.rolename }}

0 comments on commit d6017b4

Please sign in to comment.