Files
cloudflareTunnel/.gitea/workflows/deploy.yml
josedario87 b0245abbf3
All checks were successful
deploy-tunnel / deploy (push) Successful in 4s
Fix: Prevent config.yml directory mount issue
- Verifica que config.yml sea un archivo antes de docker compose up
- Limpia volúmenes con -v al hacer down
- Elimina config.yml si es un directorio (fix para error de mount)
2025-10-05 02:36:07 -06:00

62 lines
1.9 KiB
YAML

name: deploy-tunnel
on:
push:
branches: [ main ]
jobs:
#───────────────── deploy ─────────────────
deploy:
runs-on: docker
env:
TUNNEL_ID: ${{ secrets.TUNNEL_ID }}
TUNNEL_CREDENTIALS: ${{ secrets.TUNNEL_CREDENTIALS }}
steps:
- uses: actions/checkout@v3
- name: Create .env file from secrets
run: |
cat > .env << EOF
TUNNEL_ID=${{ secrets.TUNNEL_ID }}
EOF
- name: Create credentials.json from secret
run: |
echo '${{ secrets.TUNNEL_CREDENTIALS }}' > credentials.json
- name: Verify tunnel configuration
run: |
if [ ! -f credentials.json ] || [ ! -f .env ]; then
echo "❌ Error: credentials.json o .env no se crearon correctamente"
exit 1
fi
echo "✓ Archivos de configuración creados desde secrets"
- name: Verify config.yml exists as file
run: |
if [ -d config.yml ]; then
echo "⚠️ config.yml es un directorio, eliminando..."
rm -rf config.yml
fi
if [ ! -f config.yml ]; then
echo "❌ Error: config.yml no existe como archivo"
exit 1
fi
echo "✓ config.yml existe y es un archivo"
- name: Ensure external docker network exists
run: |
docker network inspect principal >/dev/null 2>&1 || docker network create principal
- name: Clean up stack and volumes
run: docker compose --project-name cloudflared-tunnel down -v || true
- name: Pull fresh cloudflared image
run: docker compose pull
- name: Update stack
run: docker compose --project-name cloudflared-tunnel up -d --remove-orphans --wait
- name: Show tunnel status
run: docker compose --project-name cloudflared-tunnel logs --tail=50