Перейти до основного вмісту

Deploy і CI

Deploy NaviBot виконується через GitLab CI і Ansible.

Важливі файли

  • .gitlab-ci.yml
  • deploy/README.md
  • deploy/templates/nginx.conf.j2
  • docs/gitlab-ci-deploy.md

Required deployment values

Типові variables:

SSH_PRIVATE_KEY
VAULT_PASSWORD
HOSTS_TEST
HOSTS_PROD
SITE_URL_TEST
SITE_URL_PROD
SITE_DOMAIN_TEST
SITE_DOMAIN_PROD
WIDGET_URL_TEST
WIDGET_URL_PROD
ADMIN_URL_TEST
ADMIN_URL_PROD
TELEPORT_JOIN_TOKEN
VITE_TURNSTILE_SITE_KEY
VITE_TELEGRAM_BOT_USERNAME
TELEGRAM_CLIENT_ID
TELEGRAM_CLIENT_SECRET
OPENAI_API_KEY

Turnstile

Public site key безпечний для frontend builds. Secret key має залишатися в backend або CI secret variables.

OpenAI production mode

Для managed mode додайте:

OPENAI_API_KEY

Для customer key mode ключ зберігається через cabinet і лежить в encrypted integration credentials.

Nginx / SPA fallback

Frontend server має віддавати index.html для:

  • /demo
  • /docs/*
  • /app/*

Backend proxy paths:

  • /api/
  • /uploads/
  • /widget.js
  • /widget.<hash>.js
  • /socket.io/