name: Run ansible playbooks on: schedule: - cron: '@daily' workflow_dispatch: jobs: update-packages: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v4 - name: Setup environment run: | echo -e "${{ secrets.ANSIBLE_PRIVATE_KEY }}" > /mnt/default-key && \ echo "${{ secrets.ANSIBLE_BECOME_PASS }}" > /mnt/become-pass.txt && \ chmod 600 /mnt/default-key - name: Update packages uses: docker://alpine/ansible:2.18.6 run: | ansible-playbook -i inventory.yml --vault-pass-file /mnt/become-pass.txt --key-file /mnt/default-key playbooks/update-packages.yml prune-images: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v4 - name: Setup environment run: | echo -e "${{ secrets.ANSIBLE_PRIVATE_KEY }}" > /mnt/default-key && \ echo "${{ secrets.ANSIBLE_BECOME_PASS }}" > /mnt/become-pass.txt && \ chmod 600 /mnt/default-key - name: Prune ctr images uses: docker://alpine/ansible:2.18.6 run: | ansible-playbook -i inventory.yml --vault-pass-file /mnt/become-pass.txt --key-file /mnt/default-key playbooks/prune-k3s.yml update-proxmox: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v4 - name: Setup environment run: | echo -e "${{ secrets.ANSIBLE_PRIVATE_KEY }}" > /mnt/default-key && \ echo "${{ secrets.ANSIBLE_BECOME_PASS }}" > /mnt/become-pass.txt && \ chmod 600 /mnt/default-key - name: Update proxmox nodes uses: docker://alpine/ansible:2.18.6 run: | ansible-playbook -i inventory.yml --vault-pass-file /mnt/become-pass.txt --key-file /mnt/default-key playbooks/update-proxmox.yml