[英]AWS Amplify - Can I Push To Code Commit To Start The CI/CD Pipeline & Build The New Backend Resources?
[英]Created a pipeline using AWS copilot, original push worked but when I make changes to code and push them to github they don't show up
对此有任何帮助将不胜感激:
我在这里遵循了 AWS copilot 的指南: https://aws.github.io/copilot-cli/docs/getting-started/first-app-tutorial/然后是创建管道并将其连接到 github 的指南这里: https://aws.github.io/copilot-cli/docs/concepts/pipelines/ 。 这一切似乎都有效,我可以在 aws 中指示的 url 查看我正在处理的 React 应用程序。
我的问题是,当我更改我的代码然后将其推送到跟踪的 github 分支时,在 url 查看应用程序时不会出现更改。但是,当我推送到 github 时,管道确实注册了发生了变化。 它表示已经进行了更改,并经历了创建新构建的流程。 但无论我尝试什么,这些变化似乎并没有真正出现。
我假设我在这里遗漏了一些简单的东西,并且出于某种原因,docker 正在基于原始代码构建应用程序。 但我想不通为什么会这样。 也许我的 DockerFile 有点奇怪?
我的 docker 文件如下所示:
FROM node:16.14
WORKDIR /app
ENV PATH /app/node_modules/.bin:$PATH
COPY package.json ./
COPY package-lock.json ./
RUN npm i
COPY . ./
CMD ["npm", "run", "server"]
我对这应该如何工作的理解是,我将新代码推送到 github,它被发送到 aws 管道,并根据该代码生成一个新图像,然后用于创建一个托管在 ECS 上的容器。 但显然我错过了一些东西。
副驾驶部署确实有效。 我不确定是否
echo "Cloudformation stack and config files were not generated. Please check build logs to see if there was a manifest validation error." 1>&2;
这似乎指向第二种选择。 如果这是问题,关于如何解决容器中发生的任何问题有什么建议吗?
该错误提示我检查构建日志,但这些是构建日志。 我可以检查更细粒度的构建日志吗?
在 ECS 中运行容器时,除非您的容器已经因为错误而崩溃,否则它通常不会从您的新映像中获取代码更改,除非您强制进行新部署。 您可以使用 AWS CLI 通过以下命令从命令行执行此操作:
aws ecs update-service --cluster <cluster_name> --service <service_name> --force-new-deployment --profile <aws_profile_name>
请注意,如果您使用默认的 aws cli 配置文件,则该配置文件是可选的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.