Перейти к основному содержимому

Развёртывание API

API ChurchApps развёртываются как Lambda-функции AWS с использованием Serverless Framework. На этой странице описан процесс сборки, развёртывания и настройки для staging и продакшен окружений.

Перед началом работы

  • Настройте API локально -- см. Локальная настройка API
  • Настройте AWS-учётные данные на вашей машине
  • Убедитесь, что у вас есть доступ к целевому аккаунту AWS

Сборка

API собираются для продакшена с использованием специальной конфигурации TypeScript:

npm run build:prod

Это использует tsconfig.prod.json для компиляции проекта под среду выполнения Lambda.

Развёртывание

Развёртывание на staging:

npm run deploy-staging

Развёртывание на продакшен:

npm run deploy-prod

Что создаётся

Каждое развёртывание API создаёт или обновляет следующие Lambda-функции AWS:

ФункцияНазначение
webОбработчик HTTP-запросов через API Gateway
socketОбработчик WebSocket-соединений
timer15MinЗапланированная задача, запускаемая каждые 15 минут
timerMidnightЗапланированная задача, запускаемая ежедневно в полночь

Конфигурация окружения

В развёрнутых окружениях конфигурация считывается из AWS SSM Parameter Store, а не из файлов .env. Это исключает секреты из пакета развёртывания и позволяет изменять конфигурацию без повторного развёртывания.

Предупреждение

Никогда не коммитьте продакшен-учётные данные в репозиторий. Вся конфиденциальная конфигурация должна храниться в AWS SSM Parameter Store и загружаться во время выполнения.

Совет

Чтобы протестировать развёртывание без влияния на продакшен, всегда сначала разворачивайте на staging с помощью npm run deploy-staging и проверяйте изменения перед переходом на прод.

Связанные статьи