43 lines
1.1 KiB
YAML
43 lines
1.1 KiB
YAML
name: Ansible Deploy
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
|
|
jobs:
|
|
Homelab-Deploy:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
playbook:
|
|
- ansible/buildHomelab.yaml
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
# install ansbile
|
|
- name: Install Ansible
|
|
run: |
|
|
apt update -y
|
|
apt install python3-pip -y
|
|
python3 -m pip install ansible
|
|
|
|
- name: Install Ansible Galaxy requirements
|
|
run: |
|
|
ansible-galaxy install -r requirements.yaml
|
|
|
|
- name: Run playbook
|
|
uses: dawidd6/action-ansible-playbook@v2
|
|
with:
|
|
# Required, playbook filepath
|
|
playbook: ${{ matrix.playbook }}
|
|
# Optional, directory where playbooks live
|
|
directory: ./
|
|
# Optional, SSH private key
|
|
key: ${{secrets.SSH_PRIVATE_KEY}}
|
|
vault_password: ${{secrets.VAULT_PASSWORD}}
|
|
# Optional, galaxy requirements filepath
|
|
requirements: requirements.yaml
|
|
options: |
|
|
--inventory ansible/inventory.yaml
|