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:
- name: Trigger backend deploy
env:
HOOK_URL: ${{ secrets.COOLIFY_DEPLOY_HOOK_URL_BOT }}
HOOK_TOKEN: ${{ secrets.COOLIFY_DEPLOY_TOKEN_BOT }}
COOLIFY_BASE_URL: ${{ secrets.COOLIFY_BASE_URL }}
COOLIFY_API_TOKEN: ${{ secrets.COOLIFY_API_TOKEN }}
COOLIFY_RESOURCE_UUID: ${{ secrets.COOLIFY_RESOURCE_UUID_BOT }}
run: |
if [ -z "$HOOK_URL" ]; then
echo "Missing COOLIFY_DEPLOY_HOOK_URL_BOT"
if [ -z "$COOLIFY_BASE_URL" ]; then
echo "Missing COOLIFY_BASE_URL"
exit 1
fi
if [ -n "$HOOK_TOKEN" ]; then
curl --fail --show-error --silent \
-X POST \
-H "Authorization: Bearer $HOOK_TOKEN" \
"$HOOK_URL"
else
curl --fail --show-error --silent -X POST "$HOOK_URL"
if [ -z "$COOLIFY_API_TOKEN" ]; then
echo "Missing COOLIFY_API_TOKEN"
exit 1
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"
- name: Trigger dashboard deploy
env:
HOOK_URL: ${{ secrets.COOLIFY_DEPLOY_HOOK_URL_DASHBOARD }}
HOOK_TOKEN: ${{ secrets.COOLIFY_DEPLOY_TOKEN_DASHBOARD }}
COOLIFY_BASE_URL: ${{ secrets.COOLIFY_BASE_URL }}
COOLIFY_API_TOKEN: ${{ secrets.COOLIFY_API_TOKEN }}
COOLIFY_RESOURCE_UUID: ${{ secrets.COOLIFY_RESOURCE_UUID_DASHBOARD }}
run: |
if [ -z "$HOOK_URL" ]; then
echo "Missing COOLIFY_DEPLOY_HOOK_URL_DASHBOARD"
if [ -z "$COOLIFY_BASE_URL" ]; then
echo "Missing COOLIFY_BASE_URL"
exit 1
fi
if [ -n "$HOOK_TOKEN" ]; then
curl --fail --show-error --silent \
-X POST \
-H "Authorization: Bearer $HOOK_TOKEN" \
"$HOOK_URL"
else
curl --fail --show-error --silent -X POST "$HOOK_URL"
if [ -z "$COOLIFY_API_TOKEN" ]; then
echo "Missing COOLIFY_API_TOKEN"
exit 1
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"
+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
```
## 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.
2. Go to Deployments/Webhooks (name may vary by Coolify version).
3. Copy the Deploy Webhook URL.
4. If webhook auth token is enabled, copy the token.
- `omo-bot-backend`
- `omo-bot-dashboard`
Store both resources separately:
Deploy API endpoint used by CI:
- Backend deploy hook URL/token
- Dashboard deploy hook URL/token
- `GET /api/v1/deploy?uuid=<resource_uuid>`
- Authorization: `Bearer <COOLIFY_API_TOKEN>`
## 4. Configure Gitea Action Secrets/Variables
In Gitea repository settings, add Actions secrets:
- `COOLIFY_DEPLOY_HOOK_URL_BOT`
- `COOLIFY_DEPLOY_TOKEN_BOT` (optional)
- `COOLIFY_DEPLOY_HOOK_URL_DASHBOARD`
- `COOLIFY_DEPLOY_TOKEN_DASHBOARD` (optional)
- `COOLIFY_BASE_URL`
- `COOLIFY_API_TOKEN`
- `COOLIFY_RESOURCE_UUID_BOT`
- `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