Автоматизация этапа развертывания шлюза API - PullRequest
1 голос
/ 04 августа 2020

Я создаю этап шлюза API с использованием облачной информации.

  ApiDeployment:
    Type: AWS::ApiGateway::Deployment
    Properties:
      RestApiId: !Ref ExampleRestApi
      StageName: dev 

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

1 Ответ

2 голосов
/ 04 августа 2020

Когда вы определяете ресурс развертывания таким образом, CloudFormation создаст развертывание только при первом запуске. При втором запуске он заметит, что ресурс уже существует, а определение CloudFormation не изменилось, поэтому новое развертывание не будет. Чтобы обойти это, вы можете добавить что-то вроде заполнителя UUID / timestamp к идентификатору ресурса и заменять его каждый раз перед обновлением CloudFormation: консоль API Gateway.

Если вы не хотите таким образом манипулировать своим шаблоном, вы также можете добавить Пользовательский ресурс с поддержкой Lambda в свой стек CloudFormation. Используя AWS SDK, вы можете настроить функцию Lambda, которая автоматически создаст для вас новые развертывания при обновлении API.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...