问题标签 [aws-code-deploy-appspec]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
363 浏览

amazon-web-services - Codedeploy 回滚未选择先前成功的构建版本

出于某种原因,AWS Codedeploy 回滚似乎总是选择最新版本并失败

部署 1 成功,并在 S3 存储桶中创建了一个修订。

部署 2 失败,Codedeploy 回滚启动,其中自动

部署 3 也因与部署 2 相同的原因而失败

预期的 Codedeploy 行为适用于 Deployment 3,它应该选择 Deployment 1 S3 构建版本。

我不确定使用 Codedeploy 的 S3 存储桶中是否缺少任何链接。任何想法都非常感谢。

谢谢

0 投票
2 回答
2101 浏览

amazon-web-services - 如何编码部署 appspec.yml runas ubuntu 用户

AWS CodeDeploy 用于简单的 WordPress 应用程序。在以下脚本的帮助下,在 ubuntu 20.04 上安装了 AWS codedeploy-agent

使用下面的 appspec.yml 进行代码部署。它的工作正常runas root

问题 :

  1. 如何以ubuntu用户身份运行它,?
  2. root以用户身份运行时有任何问题吗?……

appspec.yaml 文件

虽然 runas ubuntu 收到以下错误。

0 投票
0 回答
48 浏览

amazon-web-services - 传递给 AWS appspec lambda 挂钩函数的事件定义了哪些属性?

AWS codedeploy lambda hooks 函数接受三个参数:

exports.handler = (event, context, callback) => {

https://docs.aws.amazon.com/codedeploy/latest/userguide/reference-appspec-file-structure-hooks.html#reference-appspec-file-structure-hooks-section-structure-ecs-sample-function

但是我可以在这些对象上使用哪些属性?该示例显示事件至少定义了 DeploymentId 和 LifecycleEventHookExecutionId 但我还能提取什么?这是在哪里记录的?

0 投票
0 回答
134 浏览

aws-codepipeline - 指定位置的脚本:deployment_scripts/start_app.sh 未能在 300 秒内完成

我在代码部署中面临这个问题。完成错误:错误代码 ScriptTimedOut 脚本名称 deployment_scripts/start_app.sh 消息 指定位置的脚本:deployment_scripts/start_app.sh 未能在 300 秒内完成 我已设置超时:300在 appspec.yml 这不是重复问题,也不是替代问题也是。有时部署成功,有时会因上述错误而失败。它也仅在 start_app.sh 文件上给出错误。我的 start_app.sh 文件如下:

0 投票
0 回答
48 浏览

aws-code-deploy - AWS Codedeploy- appspec.yml - 不解析环境变量

以下是我的 appspec.yml

${env:DEPLOYMENT_GROUP_NAME}变量值没有解析

在安装阶段收到以下错误

在此处输入图像描述

在此处输入图像描述

0 投票
0 回答
17 浏览

aws-code-deploy - CloudDeploy Appspec.yml 问题

我正在创建一个 EC2 实例,在该实例上运行一个 python 脚本,该脚本将触发一个 kinesis 流,然后是一个 Lambda 函数来将数据存储在 DynamoDb 表中。以上所有内容都是通过 Cloud Formation 模板完成的。

要在 EC2 实例上部署和运行代码,请使用以下 appspec.yml 文件。

progexec.sh 文件包含以下内容:

我的问题:创建项目文件夹并将 python 文件移至 ec2。代码触发 kinesis,然后 lambda 和数据被填充到 dyanmodb 中。

但是,我没有看到在我的 ec2 实例中运行的代码。我的 ApplicationStart 挂钩一直在旋转,然后最终超时。

我怀疑它的用户运行问题。有人可以指导一下。

0 投票
1 回答
628 浏览

aws-codepipeline - AWS CodePipeline 与 ECS 容器使用 CodeDeploy appspec.yml 文件

我在 CodePipeline 中使用 ECS 容器和 CodeBuild 和 CodeDeploy(用于蓝/绿部署)阶段。我在应用程序代码的根目录中有一个 appspec.yml 文件,其中包含任务定义 arn 和容器名称。所有这些在单一环境场景中运行良好。在我的情况下,当我有一个单独的用于开发、测试和生产的 AWS 账户时,我需要 CodeDeploy 来根据环境上下文交换任务定义 arn。有没有办法像我们为 buildspec.yml 文件和自定义环境变量一样传递参数和修改 appspec.yml 文件?如果不是,那么使用 appspec.yml 文件进行跨账户部署的最佳解决方案是什么?

更新

感谢 Ronan Cunningham 的 Python 脚本——请参见下面的代码示例——它允许生成 appspec.json 文件作为 CodeBuild 阶段的工件并将其作为输入传递给 CodeDeploy 阶段。您可以从 buildspec.yml 文件调用脚本并将自定义环境变量作为脚本参数传递,这将根据 AWS 环境上下文定义您的 appspec.json。该脚本应与 buildspec.yml 和 Dockerfile 一起放置在应用程序的根目录中。

create_appspec_json.py 脚本:

从 buildspec.yml 调用脚本并将环境变量作为参数传递。

0 投票
1 回答
486 浏览

amazon-web-services - AWS CodeDeploy Appspec.yml 文件未复制到目标

我的文件已正确复制到 EC2 实例以进行部署,但未复制到目标。我有这样的 appspec.yml 文件:

我也尝试将 source 设置为 source: / ,结果相同;没有任何东西被复制

我看到我的文件都在 /opt/coded* 等路径中。但为什么 CodeDeploy 代理不将我的文件复制到目标?下载捆绑钩子很好,当我需要实际访问我的文件时,我得到的唯一错误是在 ApplicationStart 钩子中。

注意:我使用 GitHub 作为我的修订存储,而不是 S3,如果有帮助的话

编辑:可能有用的信息在我的 install_dependencies 脚本中,我按照以下方式运行:

pip安装在哪里找不到文件

0 投票
2 回答
38 浏览

amazon-web-services - 创建一个简单的管道(CodeCommit 存储库

我使用 jenkins 创建了一个简单的部署管道,我创建了 codedeploy、S3 Bucket、Autoscalable 组和 ami。文档中列出的所有内容。但它需要一个 appspec.yml。我查看了 appspec.yml 的文档。这非常令人困惑。

有什么方法可以生成 appspec.yml。我什至不确定它的作用是什么。我认为代码部署会将 zip 文件从 S3 存储桶中取出并将其部署到可扩展组。

有什么帮助吗?

0 投票
0 回答
31 浏览

aws-code-deploy - CodeDeploy 超时运行 shell 脚本,有没有办法设置日志记录

我正在运行代码部署,从使用 Jenkins createDeployment 的 Jenkins 调用到 codedeploy。部署使用 appspec.yml 调用脚本来完成所有的驴工作。部署失败,我已经追踪到其中一个脚本超时。我不认为超时是真正的问题。我认为脚本挂在某个地方。但是所有日志都说脚本超时。有没有办法设置日志记录,以便您可以查看所有步骤。