Github Workflows for Ansible Roles

Integration

Continuous Integration (Molecule)

Configuration

Variable Type Default Description
distros string '[ "debian12", "debian11" ]' List of distributions to test against the Role
python-dependencies string see workflow Default pip dependencies for molecule
molecule-config  string see workflow Configuration for molecule
disable-apparmor-mysql boolean  false  Disable AppArmor MySQL Profile for the Job Runner

Usage

Create a workflow, e.g. .github/workflows/integration.yaml

---
name: Integration

on:
  push:
    branches:
      - main
  pull_request:

jobs:
  integration:
    name: Integration
    uses: systemli/github-ansible-workflow/.github/workflows/ansible-integration-workflow.yaml@v1.0.0
    with:
      distros: '[ "debian12", "debian11", "ubuntu2204", "ubuntu2004", "ubuntu1804" ]'

Ansible Galaxy

Configuration

Variable Type Default Description
galaxy-token secret   Secret for Ansible Galaxy

Usage

Create a workflow, e.g. .github/workflows/galaxy.yaml

---
name: Ansible Galaxy

on:
  push:
    branches:
      - main
  release:

jobs:
  galaxy:
    name: Ansible Galaxy
    uses: systemli/github-ansible-workflow/.github/workflows/ansible-galaxy-workflow.yaml@main
    secrets:
      galaxy-token: ${{ secrets.galaxy_api_key }}