Как развернуть бессерверный код на разных этапах через командную строку? - PullRequest
0 голосов
/ 02 мая 2019

В настоящее время я использую следующую командную строку для развертывания на разных этапах из моего локального механизма:

serverless deploy --stage qa

Но этот код создает совершенно новый раздел (проект) в разделе API Gateway. Смотрите мою прикрепленную ссылку.

https://photos.google.com/share/AF1QipPU6X8Dej7rNq5Ofo1eKfCq1cn6GpsL3GYdZ50yUO_a4quVPao9bllHIvRFA6VkbA?key=WVFDLVQ0cEd6aVB3cVlSY1hYcnBmS1BRT1QtNVVB

должен ли этот код создавать serverless deploy --stage qa различные этапы в API -> (API Project) -> раздел Stages?

Я немного сбит с толку, какой путь правильный. Я вижу много учебников, создающих оба пути. Однако для меня имеет смысл создавать разные этапы в одном проекте.

Или есть другая команда, чтобы делать то, что я хочу?

1 Ответ

2 голосов
/ 02 мая 2019

Я бы поспорил, что написанное без сервера - гораздо более чистый способ развертывания на разных этапах.Хотя API-шлюз допускает различные этапы в рамках одного и того же API-шлюза, это оставляет гораздо больше места для случайного выполнения того, что вы не хотели делать, например, случайного срыва вашего производственного API вместо dev.

Кроме того, наилучшей практикой являетсяиметь каждый этап в своей учетной записи AWS.Это позволяет лучше заблокировать производственную среду на уровне учетной записи, чтобы избежать случайных изменений.Это полезно для всех ваших ресурсов AWS, а не только для шлюза API.

Если вы следуете передовым методам и имеете учетную запись AWS для каждого этапа, ваша проблема не работает, поскольку у вас будет API-шлюз в каждой из промежуточных учетных записей..

Если эти рекомендации не для вас, вы всегда можете вернуться к обычным шаблонам CloudFormation, чтобы каждый этап был различным развертыванием под одним и тем же шлюзом API.

...