Pipery Ansible CD#

Reusable GitHub Action for Ansible CD with structured logging via Pipery.

GitHub Marketplace Version License: MIT

Usage#

name: CD
on:
  push:
    branches: [main]

jobs:
  cd:
    uses: pipery-dev/pipery-ansible-cd@v1
    with:
      project_path: .
    secrets: inherit

Pipeline steps#

install pip requirements → run playbook → status check

Every step is logged to pipery.jsonl via psh and uploaded as a GitHub Actions artifact.

Inputs#

InputDescriptionDefault
project_pathPath to the project source tree..
config_filePath to the pipery config file..github/pipery/config.yaml
playbookPath to the Ansible playbook file.playbook.yml
inventoryPath to the Ansible inventory file.inventory
requirementsPath to requirements.txt for pip.``
ansible_requirementsPath to requirements.yml for ansible-galaxy.``
extra_varsExtra variables as JSON or key=val pairs.``
ssh_keySSH private key for connecting to hosts.``
ssh_known_hostsKnown hosts content for SSH.``
becomeUse sudo/become for privilege escalation.false
tagsComma-separated playbook tags to run.``
skip_requirementsSkip pip/galaxy requirements install.false
skip_deploySkip playbook run step.false
skip_status_checkSkip status check step.false
log_filePath to write the JSONL log file.pipery.jsonl

Observability#

Each run produces a pipery.jsonl file. Upload it as an artifact and inspect it with the Pipery Dashboard.

License#

MIT — see LICENSE.