Files
caddy-hl/.gitea/workflows/deploy.yml
2025-12-01 18:44:10 +03:00

47 lines
1.1 KiB
YAML

name: Deploy Caddy
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
validate:
runs-on: vps-runner
steps:
- uses: actions/checkout@v3
- name: Install Caddy
run: |
sudo apt update
sudo apt install -y caddy
- name: Validate Caddyfile
run: caddy validate --config Caddyfile
deploy:
needs: validate
if: github.event_name == 'push'
runs-on: self-hosted
steps:
- uses: actions/checkout@v3
- name: Backup current config
run: |
sudo cp /etc/caddy/Caddyfile /etc/caddy/Caddyfile.backup
sudo cp -r /etc/caddy/conf.d /etc/caddy/conf.d.backup
- name: Deploy configs
run: |
sudo cp Caddyfile /etc/caddy/
sudo cp -r conf.d/* /etc/caddy/conf.d/
sudo cp ssl/*.pem /etc/caddy/ssl/ || true
- name: Validate deployed config
run: sudo caddy validate --config /etc/caddy/Caddyfile
- name: Reload Caddy
run: sudo systemctl reload caddy
- name: Check Caddy status
run: sudo systemctl status caddy --no-pager