homelab-server/.gitea/workflows/deploy.yml

37 lines
886 B
YAML

name: Homelab Deployment Pipeline
on:
push:
branches:
- main
jobs:
deploy-dns:
runs-on: self-hosted
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Install ansible
run: |
apt-get update
apt-get install -y ansible
- name: Set up SSH private key
run: |
mkdir -p ~/.ssh
echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_ed25519
chmod 600 ~/.ssh/id_ed25519
echo -e "Host *\n\tStrictHostKeyChecking no\n" > ~/.ssh/config
- name: Set up vault password
run: |
echo "${{ secrets.VAULT_PASSWORD }}" > ansible/vault_pass
chmod 600 ansible/vault_pass
- name: Execute DNS playbook
run: |
cd ansible
ansible-playbook configure_dns.yml -i inventory.ini --vault-password-file vault_pass