Files
deploy-panel/.gitea/workflows/deploy.yml
T
akalan f842191ec1
Deploy / deploy (push) Successful in 18s
panel_token gecir
2026-09-23 15:27:06 +03:00

38 lines
1.4 KiB
YAML

name: Deploy
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: DNS kaydini garanti et (Cloudflare)
env:
CF_API_TOKEN: ${{ secrets.CF_API_TOKEN }}
CF_ZONE_ID: ${{ secrets.CF_ZONE_ID }}
HOSTNAME: panel.akalan.dev
IP: 148.135.181.126
run: |
EXISTING=$(curl -s -H "Authorization: Bearer $CF_API_TOKEN" \
"https://api.cloudflare.com/client/v4/zones/$CF_ZONE_ID/dns_records?type=A&name=$HOSTNAME")
RECORD_ID=$(echo "$EXISTING" | python3 -c "import json,sys; d=json.load(sys.stdin); r=d.get('result',[]); print(r[0]['id'] if r else '')")
if [ -z "$RECORD_ID" ]; then
curl -s -X POST "https://api.cloudflare.com/client/v4/zones/$CF_ZONE_ID/dns_records" \
-H "Authorization: Bearer $CF_API_TOKEN" -H "Content-Type: application/json" \
-d "{\"type\":\"A\",\"name\":\"$HOSTNAME\",\"content\":\"$IP\",\"ttl\":1,\"proxied\":true}" > /dev/null
echo "DNS kaydi olusturuldu."
else
echo "DNS kaydi zaten var, atlaniyor."
fi
- name: docker compose up -d --build
env:
CF_API_TOKEN: ${{ secrets.CF_API_TOKEN }}
CF_ZONE_ID: ${{ secrets.CF_ZONE_ID }}
SELF_CONTAINER_NAME: deploy-panel
PANEL_API_TOKEN: ${{ secrets.PANEL_TOKEN }}
run: docker compose up -d --build