如何将 AWS Amplify 项目放入 CodeCommit?

How do I put AWS Amplify project into CodeCommit?

我刚开始使用 AWS Amplify,但不知道您应该如何将项目提交到源代码存储库,以便其他人可以处理同一项目。

我创建了一个 React Serverless 项目 'web_app' 并创建了一些 API 和一个简单的前端应用程序,现在想将其提交到 CodeCommit 以便其他人可以访问它。

现在事情变得有点混乱,因为对于 CI/CD,似乎曾经应该为前端应用程序创建一个存储库 - 通常源文件位于 'web_app/src' 文件夹中。

但是 Amplify 似乎已经在 'web_app' 文件夹级别创建了一个 git 存储库,所以我应该创建一个 CodeCommit 存储库并将 'web_app' 本地存储库推送到远程存储库,然后单独为前端创建另一个存储库,以便能够在 AWS 中使用 CI/CD 功能?

出于某种原因,如果我尝试将任何内容推送到 AWS CodeCommit,我总是会收到错误 403。

好的 - 我会自己回答这个问题。

您只需将整个项目提交到 CodeCommit 中的存储库。项目文件夹包含后端和前端代码。前端代码通常在 /src 文件夹中,后端代码(CloudFormation 文件)通常在 amplify 文件夹中。

设置 CodeCommit 存储库后,您可以使用 Amplify 控制台或 amplify-cli 创建新的后端或前端环境。 Amplify 足够聪明,知道在哪里可以找到后端和前端代码。

请记住,后端 amplify-cli 代码会创建一堆放在前端文件夹 (/src) 中的文件,包括将在前端代码中使用的 graphql 突变和查询。

如果您设置了 CI/CD 那么任何 'git push' 都会为您所在的环境生成一个新的构建。您可以修改构建脚本以包含或排除重建后端 - 我默认情况下,如果有更改,它将重建后端。

您也可以使用 amplify-cli 'amplify push' 命令手动重建后端。

请小心,因为事情可能会不同步,而且旧文件似乎会被遗忘,这会导致问题。幸运的是,删除和重建整个环境并不需要很长时间。当然,您可能必须先备份并重新加载数据。有一些脚本可以自动加载任何用于开发或测试的种子数据。

那里有很多文档,但其中很多似乎很混乱。