Документация / Разработка и деплой
Переменные и конфигурация
Переменные сервиса, ссылки и формат upferry.json.
Переменные сервиса и общие переменные
На вкладке Variables добавьте настройки и секреты приложения. Общие переменные принадлежат окружению проекта. Они попадают в сервис по явной ссылке, а не передаются автоматически всем приложениям.
DATABASE_URL=${{postgres.DATABASE_URL}}
API_KEY=${{shared.API_KEY}}
API_BASE=https://${{api.UPFERRY_PUBLIC_DOMAIN}}/v1
Здесь postgres и api являются именами сервисов в том же окружении. ${{PGHOST}} ссылается на переменную текущего сервиса. Ссылки разрешаются для выбранного окружения. Отсутствующие значения и циклические ссылки приводят к ошибке проверки.
Сохранение переменных не меняет окружение уже запущенного процесса. Выполните новый деплой и проверьте его. Не помещайте рабочие секреты в публичный репозиторий, статью, снимок экрана или лог поддержки.
Конфигурация в репозитории
Добавьте upferry.json в корневую папку сервиса. Если там его нет, используется файл в корне репозитория. Значения файла перекрывают соответствующие настройки панели для этого деплоя. Неуказанные поля берутся из панели.
{
"build": {
"buildCommand": "npm ci && npm run build",
"watchPatterns": ["apps/api/**", "packages/shared/**"]
},
"deploy": {
"startCommand": "npm start",
"healthcheckPath": "/health",
"healthcheckTimeout": 120,
"restartPolicyType": "ON_FAILURE",
"restartPolicyMaxRetries": 3
},
"resources": {
"memoryMb": 1024,
"cpus": 0.5,
"pids": 256
}
}
Подберите команды и шаблоны файлов под свой проект. В deploy также поддерживаются и . Допустимые политики перезапуска: , , . Таймаут проверки задаётся в секундах, cron работает в UTC. Неизвестные ключи отклоняются с ошибкой.