homelab-automation/.gitea/workflows/ansible-deploy.yml
Benjamin Hays e0ef7c6a5d
Some checks failed
Ansible Deploy / deploy (ansible/playbooks/debian.yml) (push) Failing after 59s
Ansible Deploy / deploy (ansible/playbooks/proxmox.yml) (push) Failing after 58s
Ansible Lint / build (push) Failing after 1m4s
fix path error
2025-05-18 10:02:27 -04:00

58 lines
1.6 KiB
YAML

name: Ansible Deploy
on: [push]
jobs:
deploy:
runs-on: ubuntu-latest
env:
RUNNER_TOOL_CACHE: /toolcache
ANSIBLE_VERSION: "8.7.0"
strategy:
matrix:
playbook:
- ansible/playbooks/debian.yml
- ansible/playbooks/proxmox.yml
steps:
- name: Copy SSH Key
run: |
mkdir ~/.ssh/
echo "Host *" > ~/.ssh/config
echo " StrictHostKeyChecking no" >> ~/.ssh/config
echo '${{secrets.SSH_PRIVATE_KEY}}' > ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
- uses: actions/checkout@v3
with:
submodules: recursive
- name: Install Pip
run: |
apt update -y
apt install python3-pip -y
- name: "Cache python packages"
uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-${{ env.ANSIBLE_VERSION }}
- name: Install Ansible
run: |
python3 -m pip install ansible==${{ env.ANSIBLE_VERSION }}
- name: Install Ansible Galaxy requirements
run: |
ansible-galaxy install -r ./ansible/requirements.yaml
- name: Run playbook
uses: dawidd6/action-ansible-playbook@v2
with:
playbook: ${{ matrix.playbook }}
directory: ./
key: ${{secrets.SSH_PRIVATE_KEY}}
vault_password: ${{secrets.VAULT_PASSWORD}}
# requirements: requirements.yaml
options: |
--inventory ansible/inventory/homelab.ini
--extra-vars "@ansible/homelab-vault/secrets.yml"