Как синхронизировать API-интерфейсы AWS APPSync с Dev на Staging to Production? - PullRequest
0 голосов
/ 11 сентября 2018

Допустим, у вас есть AWS AppSync API с именем API-DEV.Он содержит схему GraphQL, резольверы, источники данных, таблицы DynamoDB (например: Dev_Articles), конфигурацию таблиц DynamoDB и данные DynamoDB.API расходуется ок.50 экземпляров одного и того же приложения React.

Как бы вы автоматизировали миграцию новейших функций с API-DEV на API-STAGING?Обратите внимание, что я хочу обновить все, кроме данных.

Пути, над которыми я думаю:

  1. Сохраните список вещей для обновления, переведите промежуточные приложения в режим обслуживания,и вручную применить изменения к постановке env.Похоже, что на каждом "выпуске" требуется много работы, и она подвержена ошибкам.
  2. Используйте какой-либо шаблон YAML в сочетании с aws-cli для хранения изменений в репозитории GIT и автоматического развертывания при push-загрузке.Похоже, отличный способ сделать это, но не смог найти пошаговое руководство, плюс, все наши конфигурации уже в AWS, поэтому я предполагаю, что нам придется воссоздать все, используя шаблон.
  3. Используйте какой-то инструмент, который бы автоматизировал сравнение и обновление из двух данных API и DynamoDB.Пока не нашел.
  4. Создайте мое собственное приложение Nodejs, которое будет использовать aws-cli для сравнения и обновления.Затем разместите его на Lamda и сработайте нажатием на ветки staging или master репозитория приложения React (Code Commit> Code Build> Code Deploy).Вот куда я сейчас направляюсь, но там может быть существующее решение.

Есть еще идеи?Дайте мне знать!

Ответы [ 2 ]

0 голосов
/ 18 декабря 2018

Проверьте это: https://github.com/sid88in/serverless-appsync-plugin

Безсерверный-appsync-плагин облегчает вашу жизнь.Он должен иметь более простую конфигурацию, чем настройка собственной облачной информации.

0 голосов
/ 11 сентября 2018

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

Чтобы упростить создание CloudFormation, вы можете использовать AWS Amplify CLI для определения схемы GraphQL, которая автоматически создаст для вас преобразователи.

...