diff --git a/.forgejo/workflows/deploy.yml b/.forgejo/workflows/deploy.yml index 0c883480..f3529b40 100644 --- a/.forgejo/workflows/deploy.yml +++ b/.forgejo/workflows/deploy.yml @@ -170,12 +170,16 @@ jobs: # boolean toggle → actions variable (vars.*). OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }} LLM_ENABLED: ${{ vars.LLM_ENABLED }} + # OWN_DEVELOPER_IDS (#1169 §25.3): свои developer_id (companyGroup) для + # own-portfolio каннибализации. Non-sensitive (публичные id) → actions + # variable. UNSET → каннибализация отдаёт proxy (фича дормант). + OWN_DEVELOPER_IDS: ${{ vars.OWN_DEVELOPER_IDS }} with: host: ${{ secrets.DEPLOY_HOST }} username: ${{ secrets.DEPLOY_USER }} key: ${{ secrets.DEPLOY_SSH_KEY }} port: ${{ secrets.DEPLOY_PORT }} - envs: IMAGE_TAG,SENTRY_RELEASE_VAL,GHCR_PAT,GLITCHTIP_BACKEND_DSN,OBJECTIVE_API_KEY,OPENAI_API_KEY,LLM_ENABLED + envs: IMAGE_TAG,SENTRY_RELEASE_VAL,GHCR_PAT,GLITCHTIP_BACKEND_DSN,OBJECTIVE_API_KEY,OPENAI_API_KEY,LLM_ENABLED,OWN_DEVELOPER_IDS script: | set -euo pipefail cd /opt/gendesign @@ -233,6 +237,16 @@ jobs: printf 'LLM_ENABLED=%s\n' "$LLM_ENABLED" >> backend/.env.runtime fi fi + # OWN_DEVELOPER_IDS (#1169 §25.3 own-portfolio каннибализация). Тоже + # conditional-on-non-empty: UNSET var → не трогаем (если строка уже есть + # в .env.runtime — она переживает git reset, .gitignored — остаётся). + if [ -n "${OWN_DEVELOPER_IDS:-}" ]; then + if grep -q '^OWN_DEVELOPER_IDS=' backend/.env.runtime; then + sed -i "s|^OWN_DEVELOPER_IDS=.*|OWN_DEVELOPER_IDS=$OWN_DEVELOPER_IDS|" backend/.env.runtime + else + printf 'OWN_DEVELOPER_IDS=%s\n' "$OWN_DEVELOPER_IDS" >> backend/.env.runtime + fi + fi chmod 600 backend/.env.runtime # External network для Caddy + obsidian-stack share