--- # Thanks to geerlingguy! language: python services: docker env: global: - ROLE_NAME: k3s - ROLE_OWNER: xanmanning - REPO_OWNER: PyratLabs - MOLECULE_SCENARIO: default matrix: - MOLECULE_DISTRO: geerlingguy/docker-debian10-ansible:latest # Test installing docker - MOLECULE_DISTRO: geerlingguy/docker-centos7-ansible:latest MOLECULE_PLAYBOOK: playbook-docker.yml - MOLECULE_DISTRO: geerlingguy/docker-ubuntu1804-ansible:latest MOLECULE_PLAYBOOK: playbook-docker.yml - MOLECULE_DISTRO: geerlingguy/docker-amazonlinux2-ansible:latest MOLECULE_PLAYBOOK: playbook-docker.yml # Test using alternate port and using wireguard as the flannel backend - MOLECULE_DISTRO: geerlingguy/docker-centos7-ansible:latest MOLECULE_PLAYBOOK: playbook-docker-altport-wireguard.yml # Test disabling all deployments - MOLECULE_DISTRO: geerlingguy/docker-fedora31-ansible:latest MOLECULE_PLAYBOOK: playbook-no-deploy.yml # Test multiple masters in control plane with PostgreSQL - MOLECULE_DISTRO: geerlingguy/docker-fedora29-ansible:latest MOLECULE_SCENARIO: highavailability # Test multiple masters with auto deploying manifests - MOLECULE_DISTRO: geerlingguy/docker-fedora30-ansible:latest MOLECULE_SCENARIO: highavailability MOLECULE_PLAYBOOK: playbook-auto-deploying-manifests.yml # Test multiple masters in control plane with Etcd - MOLECULE_DISTRO: geerlingguy/docker-centos8-ansible:latest MOLECULE_SCENARIO: highavailability MOLECULE_PLAYBOOK: playbook-etcd.yml install: # Install test dependencies. - pip install molecule[docker] docker jmespath ansible-lint before_script: # Use actual Ansible Galaxy role name for the project directory. - cd ../ - mv ansible-role-${ROLE_NAME} ${ROLE_OWNER}.${ROLE_NAME} - cd ${ROLE_OWNER}.${ROLE_NAME} script: # Run tests. - molecule test --scenario-name "${MOLECULE_SCENARIO}" notifications: webhooks: https://galaxy.ansible.com/api/v1/notifications/