AWS SAM:您如何管理 GraphQL AppSync 架构更新?

问题描述

我在应用程序上使用 AWS SAM,并且我想将 AppSync 与它一起使用。

AWstemplateFormatVersion: 2010-09-09
Description: >-
  poc
Transform:
- AWS::Serverless-2016-10-31

Parameters:
  Env:
      Type: String
Resources:
  Api:
    Type: AWS::AppSync::GraphQLApi
    Properties:
      Name: !Sub "poc-${Env}"
      AuthenticationType: "AMAZON_COGNITO_USER_POOLS"
      UserPoolConfig:
        UserPoolId: !Ref AuthUserPool
        AwsRegion: !Ref AWS::Region
        DefaultAction: "ALLOW"
  Schema:
    Type: AWS::AppSync::GraphQLSchema
    Properties:
      ApiId: !GetAtt Api.ApiId
      DeFinitionS3Location: ./schema.graphql

此配置在创建时运行良好。 但是,如果我更新我的 GraphQL 架构文件 (schema.graphql) 并运行 sam deploy,它不会更新,可能是因为从 CloudFormation 的角度来看没有任何属性更改。

您将如何正确确保架构更新?

解决方法

糟糕,我把 SAM 当作是 Amplify 使用

如果您在 sam build 之前运行 sam deploy - 新架构部署良好