From 95330c07e3364d342cd39c260173bb7d8e222990 Mon Sep 17 00:00:00 2001 From: akalan Date: Wed, 23 Sep 2026 15:13:41 +0300 Subject: [PATCH] add workflow --- .gitea/workflows/deploy.yml | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 .gitea/workflows/deploy.yml diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml new file mode 100644 index 0000000..ac60c0f --- /dev/null +++ b/.gitea/workflows/deploy.yml @@ -0,0 +1,36 @@ +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 + run: docker compose up -d --build