1
0
Fork 0
mirror of https://github.com/dawidd6/action-ansible-playbook.git synced 2026-04-12 16:02:30 +00:00
⚙️ A GitHub Action for running Ansible playbooks
  • JavaScript 100%
Find a file
dependabot[bot] 66cdd062e6
build(deps): bump yaml from 2.8.2 to 2.8.3 (#139)
Bumps [yaml](https://github.com/eemeli/yaml) from 2.8.2 to 2.8.3.
- [Release notes](https://github.com/eemeli/yaml/releases)
- [Commits](https://github.com/eemeli/yaml/compare/v2.8.2...v2.8.3)

---
updated-dependencies:
- dependency-name: yaml
  dependency-version: 2.8.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-23 07:32:39 +01:00
.devcontainer devcontainer: init 2025-06-28 18:45:53 +02:00
.github Add NPM updates workflow configuration 2025-12-25 10:19:21 +01:00
node_modules node_modules: update (#138) 2026-03-14 08:44:29 +01:00
test Change stdout_callback from yaml to debug 2025-12-10 07:54:00 +01:00
action.yml Update Node.js version from 20 to 24 (#136) 2026-03-13 10:52:07 +01:00
LICENSE init 2020-03-21 17:06:40 +01:00
main.js Convert CommonJS to ESM (#133) 2026-01-30 14:01:19 +01:00
package-lock.json build(deps): bump yaml from 2.8.2 to 2.8.3 (#139) 2026-03-23 07:32:39 +01:00
package.json build(deps): bump yaml from 2.8.2 to 2.8.3 (#139) 2026-03-23 07:32:39 +01:00
post.js Convert CommonJS to ESM (#133) 2026-01-30 14:01:19 +01:00
README.md Change action reference to <REF> in README 2025-12-25 11:15:28 +01:00

Run Ansible playbook GitHub Action

An Action that executes given Ansible playbook on selected hosts.

Should work on any OS, if ansible-playbook command is available in PATH.

Usage

- name: Run playbook
  uses: dawidd6/action-ansible-playbook@<REF>
  with:
    # Required, playbook filepath
    playbook: deploy.yml
    # Optional, directory where playbooks live
    directory: ./
    # Optional, ansible configuration file content (ansible.cfg)
    configuration: |
      [defaults]
      callbacks_enabled = ansible.posix.profile_tasks, ansible.posix.timer
      stdout_callback = yaml
      nocows = false
    # Optional, SSH private key
    key: ${{secrets.SSH_PRIVATE_KEY}}
    # Optional, literal inventory file contents
    inventory: |
      [all]
      example.com

      [group1]
      example.com
    # Optional, SSH known hosts file content
    known_hosts: |
      example.com ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOMqqnkVzrm0SdG6UOoqKLsabgH5C9okWi0dh2l9GKJl
    # Optional, encrypted vault password
    vault_password: ${{secrets.VAULT_PASSWORD}}
    # Optional, galaxy requirements filepath
    requirements: galaxy-requirements.yml
    # Optional, additional flags to pass to ansible-playbook
    options: |
      --inventory .hosts
      --limit group1
      --extra-vars hello=there
      --verbose