80 lines
1.8 KiB
YAML
80 lines
1.8 KiB
YAML
|
---
|
||
|
name: CI
|
||
|
'on':
|
||
|
pull_request:
|
||
|
push:
|
||
|
branches:
|
||
|
- master
|
||
|
schedule:
|
||
|
- cron: "30 5 * * 0"
|
||
|
|
||
|
defaults:
|
||
|
run:
|
||
|
working-directory: 'geerlingguy.ansible'
|
||
|
|
||
|
jobs:
|
||
|
|
||
|
lint:
|
||
|
name: Lint
|
||
|
runs-on: ubuntu-latest
|
||
|
steps:
|
||
|
- name: Check out the codebase.
|
||
|
uses: actions/checkout@v2
|
||
|
with:
|
||
|
path: 'geerlingguy.ansible'
|
||
|
|
||
|
- name: Set up Python 3.
|
||
|
uses: actions/setup-python@v2
|
||
|
with:
|
||
|
python-version: '3.x'
|
||
|
|
||
|
- name: Install test dependencies.
|
||
|
run: pip3 install yamllint ansible-lint
|
||
|
|
||
|
- name: Lint code.
|
||
|
run: |
|
||
|
yamllint .
|
||
|
ansible-lint
|
||
|
|
||
|
molecule:
|
||
|
name: Molecule
|
||
|
runs-on: ubuntu-latest
|
||
|
strategy:
|
||
|
matrix:
|
||
|
include:
|
||
|
- distro: centos8
|
||
|
playbook: converge.yml
|
||
|
- distro: fedora32
|
||
|
playbook: converge.yml
|
||
|
# See: https://github.com/geerlingguy/ansible-role-ansible/issues/18
|
||
|
# - distro: ubuntu2004
|
||
|
# playbook: converge.yml
|
||
|
- distro: ubuntu1804
|
||
|
playbook: converge.yml
|
||
|
- distro: debian10
|
||
|
playbook: converge.yml
|
||
|
- distro: centos8
|
||
|
playbook: pip.yml
|
||
|
|
||
|
steps:
|
||
|
- name: Check out the codebase.
|
||
|
uses: actions/checkout@v2
|
||
|
with:
|
||
|
path: 'geerlingguy.ansible'
|
||
|
|
||
|
- name: Set up Python 3.
|
||
|
uses: actions/setup-python@v2
|
||
|
with:
|
||
|
python-version: '3.x'
|
||
|
|
||
|
- name: Install test dependencies.
|
||
|
run: pip3 install ansible molecule[docker] docker
|
||
|
|
||
|
- name: Run Molecule tests.
|
||
|
run: molecule test
|
||
|
env:
|
||
|
PY_COLORS: '1'
|
||
|
ANSIBLE_FORCE_COLOR: '1'
|
||
|
MOLECULE_DISTRO: ${{ matrix.distro }}
|
||
|
MOLECULE_PLAYBOOK: ${{ matrix.playbook }}
|