TL; DR::在控制台中手动删除了服务的某些资源后,如何删除放大环境?
因此,我上了一堂蛋蛋课程来学习aws amplify CLI。不幸的是,它没有教您如何删除环境(但是,它很棒!)。然后我的Google搜索说您将必须手动删除资源。我尝试(/做过)我所使用的资源。我删除了CLI的用户帐户(♂️),“删除了”认知用户池(它仍显示在amplify status
中),删除了DynamoDB和AppSync API(也仍然显示)。
现在,当我运行amplify status
时,我得到了:
| Category | Resource name | Operation | Provider plugin |
| -------- | --------------- | --------- | ----------------- |
| Auth | cognito559c5953 | No Change | awscloudformation |
| Api | AmplifyTodoApp | No Change | awscloudformation |
我想知道-因为我以为我删除了它们-它们仍然存在吗?
所以我用Google搜索了更多。现在事实证明,还有一个命令amplify delete
会自动删除与您的扩增项目关联的所有资源。由于我删除了用于该项目的帐户,因此该命令将引发:
The security token included in the request is invalid.
有什么办法可以在没有用户的情况下删除这些资源?这些资源是否仍然在线(因为我手动删除了它们,并且它们没有在线显示在控制台中-即使在CloudFront控制台中)?还是我必须删除整个AWS账户?对于这些资源,我不想一天花大价钱。
编辑:我还删除了S3存储桶。
编辑2:因此,我设法使用了另一个配置文件(通过更改local-aws-info.json
),所以我不再遇到安全请求失败的错误。现在我得到了错误:
Missing region in config
amplify status
仍然产生相同的响应。
答案 0 :(得分:2)
ampl cli通过将项目内的amplify/#current-cloud-backend
和amplify/backend
文件夹进行比较来确定状态。因此,在运行amplify status
时看到的内容与您的情况不符。
如果您创建了多个环境(在不同区域中),请确保也将其删除。如果无法使用amplify delete
,删除它们的最简单方法是在创建环境的区域和deleting根堆栈的区域进行云形成,以确保由...创建的所有资源该堆栈被删除。
PS::cli在初始化时为auth
和unauth
用户创建角色,并为资源创建策略(如果存在,则不花费任何费用)。如果您不希望它们闲逛,可以删除它们。