При использовании AWS Amplify с бэкэндом DynamodB возможно обновить схему и преобразователи AppSyn c, изменив файлы локально, а затем выполнив amplify push
.
. Я использую RDS ( добавил его с amplify api add-graphql-datasource
, как описано в документации). Запросы и преобразователи настраиваются в AppSyn c автоматически. Когда я обновляю схему Aurora RDS, я снова запускаю amplify api add-graphql-datasource
для обновления запросов и распознавателей.
Но как добавить новые запросы / мутации и связать их с новыми распознавателями (определено в vtl
файлы на локальном хосте), используя CLI-интерфейс для усиления?
Я понял, как это сделать, используя веб-консоль AppSyn c. Я изменяю схему и создаю преобразователи в AppSyn c, затем использую amplify codegen
для обновления App.ts
, queries.ts
и т. Д. c. Однако такой подход плох по крайней мере по двум причинам.
- При работе с несколькими средами изменения в каждой среде необходимо вносить вручную через консоль AppSyn c, что сложно для крупных проектов.
amplify codegen
не обновляет файл schema.graphql
на локальном хосте. - Выполнение
amplify push
после внесения изменений в AppSyn c over использует схему, определенную на localhost, и перезаписывает схему определены в консоли AppSyn c. - Пользовательские распознаватели в
app/amplify/backend/<backend_name>/resolvers
не синхронизируются с AppSyn c - , файл стека не обновляется автоматически.
Я поступаю неправильно? Есть ли лучший способ обновления схемы / резолверов с помощью CLI-интерфейса при использовании и бэкэнда RDS?
Спасибо!