假设我已经使用aws amplify cli (生产)配置了一个环境。在生产环境中,我使用S3/CDN和auth资源配置了一个托管资源。现在我想创建一个只包含auth资源的dev环境。
我是否能够相互独立地配置这些环境?如果我通过amplify add env创建一个新环境,在发布堆栈之后,我将获得基于之前创建的生产环境的摘要:
| Category | Resource name | Operation | Provider plugin |
| -------- | ----------------------- | --------- | ----------------- |
| Hosting | S3AndCloudFront | Create | awscloudformation |
| Auth | auth2d58178c | Create | awscloudformation |如果我现在删除托管资源,会发生什么?这也会影响我的生产环境吗?
我想拆分开发和生产环境,以便不使用开发环境的主机。开发人员应该或多或少地使用这一点,以便在他们的本地开发过程中使用类似cognito的服务。但我想要一个具有已配置主机资源的生产环境(以及稍后的临时环境)。
这个是可能的吗?
发布于 2020-01-24 01:02:21
是的,是这样的。
amplify/backend folder“包含了本地最新的后端资源规范推送到云端”。在那里,您可以找到一个包含将被推送到云的资源的backend-config.json,因此没有人会禁止您只在主分支/生产环境中定义hosting类别。
如果你这样做了:
hosting类别;amplify env checkout <current-env-name> dev话虽如此,你知道using S3 static web hosting for DEV and S3+CloudFront for PROD的recommended approach of "Team-members working on their own sandbox environments"或sharing the same dev backend吗?走一条与标准程序不同的道路,可能会在未来的某个地方导致痛苦。
发布于 2020-08-04 00:35:22
不幸的是,大多数建议的替代方法仍然依赖于Amplify以及backend-config.json文件的CloudFormation资源。
但是,如果您遇到一个问题,例如,您意外地执行了git reset --hard操作,并且您发现自己处于这样一种情况:在本地backend-config.json中,您希望删除的环境不再存在,但它仍然存在于Amplify web console中

在您无法直接使用Amplify CLI删除故障环境的情况下,您可以选择直接使用AWS CLI而不是Amplify的CLI。
最初您需要检索您的AWS应用程序ID
$ aws amplify list-apps --region us-east-1 | grep appId
"appId": "abc123def456gh",检索到appId后,您可以列出在亚马逊网络服务上为该放大应用注册的分支机构:
## PUT YOUR APP ID:
$ aws amplify list-branches --region us-east-1 --app-id abc123def456gh | grep branchName
"branchName": "master",要删除特定分支的Amplify资源,只能通过CLI删除Amplify应用程序:
## ENTER YOUR APP ID AND AMPLIFY BRANCH NAME
$ aws amplify delete-backend-environment --region us-east-1 --app-id abc123def456gh --environment-name master
$ aws amplify delete-branch --region us-east-1 --app-id abc123def456gh --branch-name master现在,放大环境不再存在于放大控制台中。你现在可以继续检查Cloudformation console是否为这个环境部署了任何仍然存在的堆栈(搜索amplify-<YOURAPPNAME>-<ENVIRONMENT>-173612 (例如,CloudFormation堆栈名可以是amplify-reactpoc-master-123456) )。如果你愿意,你可以使用$ amplify init在相同的名字下创建一个全新的放大环境。
https://stackoverflow.com/questions/58135371
复制相似问题