refactor: Update Coolify deployment process to use API tokens and resource UUIDs; revise deployment documentation accordingly
CI-CD / Bot Lint Test Build (push) Successful in 1m28s
CI-CD / Dashboard Lint Build (push) Successful in 13s
CI-CD / Deploy to Coolify (push) Failing after 3s

This commit is contained in:
2026-05-17 19:21:57 +02:00
parent cf564f2886
commit 2c4408be05
2 changed files with 52 additions and 36 deletions
+38 -22
View File
@@ -68,42 +68,58 @@ jobs:
steps: steps:
- name: Trigger backend deploy - name: Trigger backend deploy
env: env:
HOOK_URL: ${{ secrets.COOLIFY_DEPLOY_HOOK_URL_BOT }} COOLIFY_BASE_URL: ${{ secrets.COOLIFY_BASE_URL }}
HOOK_TOKEN: ${{ secrets.COOLIFY_DEPLOY_TOKEN_BOT }} COOLIFY_API_TOKEN: ${{ secrets.COOLIFY_API_TOKEN }}
COOLIFY_RESOURCE_UUID: ${{ secrets.COOLIFY_RESOURCE_UUID_BOT }}
run: | run: |
if [ -z "$HOOK_URL" ]; then if [ -z "$COOLIFY_BASE_URL" ]; then
echo "Missing COOLIFY_DEPLOY_HOOK_URL_BOT" echo "Missing COOLIFY_BASE_URL"
exit 1 exit 1
fi fi
if [ -n "$HOOK_TOKEN" ]; then if [ -z "$COOLIFY_API_TOKEN" ]; then
curl --fail --show-error --silent \ echo "Missing COOLIFY_API_TOKEN"
-X POST \ exit 1
-H "Authorization: Bearer $HOOK_TOKEN" \
"$HOOK_URL"
else
curl --fail --show-error --silent -X POST "$HOOK_URL"
fi fi
if [ -z "$COOLIFY_RESOURCE_UUID" ]; then
echo "Missing COOLIFY_RESOURCE_UUID_BOT"
exit 1
fi
BASE_URL="${COOLIFY_BASE_URL%/}"
curl --fail --show-error --silent -G \
"$BASE_URL/api/v1/deploy" \
-H "Authorization: Bearer $COOLIFY_API_TOKEN" \
--data-urlencode "uuid=$COOLIFY_RESOURCE_UUID"
echo "Backend deploy triggered" echo "Backend deploy triggered"
- name: Trigger dashboard deploy - name: Trigger dashboard deploy
env: env:
HOOK_URL: ${{ secrets.COOLIFY_DEPLOY_HOOK_URL_DASHBOARD }} COOLIFY_BASE_URL: ${{ secrets.COOLIFY_BASE_URL }}
HOOK_TOKEN: ${{ secrets.COOLIFY_DEPLOY_TOKEN_DASHBOARD }} COOLIFY_API_TOKEN: ${{ secrets.COOLIFY_API_TOKEN }}
COOLIFY_RESOURCE_UUID: ${{ secrets.COOLIFY_RESOURCE_UUID_DASHBOARD }}
run: | run: |
if [ -z "$HOOK_URL" ]; then if [ -z "$COOLIFY_BASE_URL" ]; then
echo "Missing COOLIFY_DEPLOY_HOOK_URL_DASHBOARD" echo "Missing COOLIFY_BASE_URL"
exit 1 exit 1
fi fi
if [ -n "$HOOK_TOKEN" ]; then if [ -z "$COOLIFY_API_TOKEN" ]; then
curl --fail --show-error --silent \ echo "Missing COOLIFY_API_TOKEN"
-X POST \ exit 1
-H "Authorization: Bearer $HOOK_TOKEN" \
"$HOOK_URL"
else
curl --fail --show-error --silent -X POST "$HOOK_URL"
fi fi
if [ -z "$COOLIFY_RESOURCE_UUID" ]; then
echo "Missing COOLIFY_RESOURCE_UUID_DASHBOARD"
exit 1
fi
BASE_URL="${COOLIFY_BASE_URL%/}"
curl --fail --show-error --silent -G \
"$BASE_URL/api/v1/deploy" \
-H "Authorization: Bearer $COOLIFY_API_TOKEN" \
--data-urlencode "uuid=$COOLIFY_RESOURCE_UUID"
echo "Dashboard deploy triggered" echo "Dashboard deploy triggered"
+14 -14
View File
@@ -127,30 +127,30 @@ Discord OAuth authorize URL shape:
https://discord.com/oauth2/authorize?client_id=YOUR_CLIENT_ID&response_type=code&redirect_uri=https%3A%2F%2Fadmin.openmicodyssey.com%2Foauth%2Fdiscord%2Fcallback&scope=identify%20guilds&prompt=consent https://discord.com/oauth2/authorize?client_id=YOUR_CLIENT_ID&response_type=code&redirect_uri=https%3A%2F%2Fadmin.openmicodyssey.com%2Foauth%2Fdiscord%2Fcallback&scope=identify%20guilds&prompt=consent
``` ```
## 3. Get Coolify Deployment Hooks and Tokens ## 3. Get Coolify API Token and Resource UUIDs
For each resource (`omo-bot-backend` and `omo-bot-dashboard`): 1. In Coolify, open `Keys & Tokens` -> `API Tokens` and create a token.
2. Copy your Coolify base URL (example: `https://coolify.yourdomain.com`).
3. Find resource UUID for:
1. Open resource in Coolify. - `omo-bot-backend`
2. Go to Deployments/Webhooks (name may vary by Coolify version). - `omo-bot-dashboard`
3. Copy the Deploy Webhook URL.
4. If webhook auth token is enabled, copy the token.
Store both resources separately: Deploy API endpoint used by CI:
- Backend deploy hook URL/token - `GET /api/v1/deploy?uuid=<resource_uuid>`
- Dashboard deploy hook URL/token - Authorization: `Bearer <COOLIFY_API_TOKEN>`
## 4. Configure Gitea Action Secrets/Variables ## 4. Configure Gitea Action Secrets/Variables
In Gitea repository settings, add Actions secrets: In Gitea repository settings, add Actions secrets:
- `COOLIFY_DEPLOY_HOOK_URL_BOT` - `COOLIFY_BASE_URL`
- `COOLIFY_DEPLOY_TOKEN_BOT` (optional) - `COOLIFY_API_TOKEN`
- `COOLIFY_DEPLOY_HOOK_URL_DASHBOARD` - `COOLIFY_RESOURCE_UUID_BOT`
- `COOLIFY_DEPLOY_TOKEN_DASHBOARD` (optional) - `COOLIFY_RESOURCE_UUID_DASHBOARD`
Current workflow in `.gitea/workflows/ci-cd.yml` triggers backend and dashboard deploys separately using these four secrets. Current workflow in `.gitea/workflows/ci-cd.yml` triggers backend and dashboard deploys separately via the Coolify Deploy API.
## 5. Domain and DNS Checklist ## 5. Domain and DNS Checklist