我正在尝试部署内部有许多资源的无服务器堆栈。每次我添加一些资源并尝试重新部署该无服务器堆栈时,都会出现错误,表明Bucket已经存在,在某些情况下,它表示IamLogGroup已经存在。
当我需要重新部署无服务器堆栈时,我无法每次手动删除那些资源。有什么方法可以重新部署无服务器堆栈而又不会出现这些错误?
我的理解是,如果它仍然属于同一无服务器部分,并且即使这些资源的名称相同,也应该更新现有资源,那么它应该更新那些资源,而不是创建具有相同名称的新资源。 / p>
这就是我在无服务器堆栈中写入存储桶和LogGroup的方式。
VoicemailIamUser:
DependsOn:
- IamUserGroup
Type: AWS::IAM::User
Properties:
UserName: IamUserGautam
Groups:
- !Ref IamUserGroup
IamUserGroup:
Type: AWS::IAM::Group
Properties:
GroupName: IamGroupGautam
Policies:
- PolicyName: IamPolicy
PolicyDocument:
Version: '2012-10-17'
Statement:
- Effect: Allow
Action:
- s3:GetObject
- s3:GetSignedUrl
Resource:
Fn::Join:
- ''
- - !GetAtt MyBucket.Arn
- '/*'
LogBucket:
Type: AWS::S3::Bucket
Properties:
BucketName: ${self:custom.LogBucket}
AccessControl: LogDeliveryWrite
PublicAccessBlockConfiguration:
BlockPublicAcls: True
BlockPublicPolicy: True
IgnorePublicAcls: True
RestrictPublicBuckets: True
BucketEncryption:
ServerSideEncryptionConfiguration:
- ServerSideEncryptionByDefault:
SSEAlgorithm: AES256
VersioningConfiguration:
Status: Enabled
任何帮助将不胜感激。谢谢:)