标签: aws-code-deploy

AWS Codedeploy 在 EC2 实例上运行空间不足,如何清理已部署的档案

我们当前拥有的 Codedeploy 设置空间不足,现在我们必须手动删除位置 /opt/codedeploy-agent/deployment-root/ 处的存档。

如何定期清理档案?我认为 codedploy 代理应该处理档案。

amazon-ec2 amazon-web-services aws-code-deploy

8
推荐指数
0
解决办法
3817
查看次数

无法下载AWS CodeDeploy代理安装文件

我正在尝试在我的Amazon Linux中下载AWS Codedeploy代理文件.我按照http://docs.aws.amazon.com/codedeploy/latest/userguide/how-to-run-agent.html中提到的说明,对于Amazon Linux,已创建适当的实例配置文件,服务角色等.一切都是最新的(亚马逊Linux,CLI套件,它是一个全新的实例,我尝试了至少3个全新的实例,结果相同).所有实例都具有完整的出站Internet访问权限.

但是下面从S3下载安装的声明总是失败,

aws s3 cp s3://aws-codedeploy-us-east-1/latest/install . --region us-east-1

使用Error时,调用HeadObject操作时发生客户端错误(403):Forbidden已完成1个部分,其中包含...文件

任何人都可以帮我解决这个错误吗?

amazon-s3 amazon-web-services aws-code-deploy

7
推荐指数
1
解决办法
6327
查看次数

由于权限,AWS代码部署失败的脚本

我试图同时使用AWS代码部署部署到运行几个剧本,但他们从来没有因为没有权限运行脚本运行.

这是我的appspec.yml文件:

version: 0.0
os: linux
files:
  - source: /
    destination: /var/www/html
permissions:
  - object: /var/www/html/codedeploy-scripts
    owner: root
    mode: 777
    type:
      - directory
hooks:
  ApplicationStop:
    - location: codedeploy-scripts/application-stop
      timeout: 300
      runas: root
  BeforeInstall:
    - location: codedeploy-scripts/before-install
      timeout: 300
      runas: root
  AfterInstall:
    - location: codedeploy-scripts/after-install
      timeout: 600
      runas: root
  ApplicationStart:
    - location: codedeploy-scripts/application-start
      timeout: 300
      runas: root
  ValidateService:
    - location: codedeploy-scripts/validate-service
      timeout: 300
      runas: root
Run Code Online (Sandbox Code Playgroud)

codedeploy-scripts文件夹随应用程序一起部署,我在文件夹上设置的权限未设置.该文件夹的权限始终重置为:

[ec2-user@ip-10-0-8-181 html]$ ls -al
total 156
drwxrwsr-x  7 ec2-user www   4096 Oct 13 16:36 . …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services aws-code-deploy

7
推荐指数
2
解决办法
6815
查看次数

AWS CodeDeploy在Auto Scaling userdata脚本完成之前执行

我正在尝试与CodeDeploy一起设置Auto Scaling组.一切正常,除了在创建新实例时CodeDeploy在用户数据脚本(在启动配置中定义)完成之前启动.

此用户数据脚本的默认值下载并安装代码部署代理,我通过安装几个Windows功能,IIS重写模块和msdeploy对其进行了扩展.

在我的appspec.yml中,我使用挂钩AfterInstall来部署我的IIS网站,但是当没有安装msdeploy时,这显然会失败.

我是以错误的方式解决这个问题,还是有办法让CodeDeploy等待用户数据脚本完成?

amazon-ec2 amazon-web-services windows-server aws-code-deploy

7
推荐指数
1
解决办法
853
查看次数

AWS错误:在Jenkins构建之后,CodeDeploy中的"拒绝访问"

我在一个EC2实例上设置了Jenkins,该实例在更改推送到github中的主分支时运行构建.一旦jenkins上的构建通过,它就会触发一个压缩源代码并将其放入特定S3存储桶的过程.然后是Jenkins在配置中知道的CodeDeploy应用程序并触发部署以尝试从S3获取源代码ZIP,但它会引发错误Access Denied.看起来IAM角色没有从S3下载ZIP的正确访问权限和权限.

我的问题是试图了解IAM角色,它与Jenkins用户的关系以及IAM服务角色?如何设置权限以及谁应该获得这些权限?请指教并帮助我理解这一点.

amazon-s3 jenkins aws-code-deploy

7
推荐指数
1
解决办法
4405
查看次数

Bitbucket与AWS CodeDeploy角色信任关系错误集成

我正在尝试通过适用于Bitbucket的AWS CodeDeploy部署我的sampleApplication代码

我使用过这个教程,我已经完成了所有步骤.信任关系角色是这样的

{
"Version": "2012-10-17",
"Statement": [
{
  "Effect": "Allow",
  "Principal": {
    "AWS": "arn:aws:iam::accountId:root"
  },
  "Action": "sts:AssumeRole",
  "Condition": {
    "StringEquals": {
      "sts:ExternalId": "connectionId"
    }
  }
  }
 ]
}
Run Code Online (Sandbox Code Playgroud)

当我创建一个部署组时,当我选择上述角色作为服务角色ARN*时,我收到了"无法承担角色"的错误.

{
"Version": "2012-10-17",
"Statement": [
{
  "Effect": "Allow",
  "Principal": {
    "Service": [
      "ec2.amazonaws.com",
      "codedeploy.amazonaws.com"
    ]
  },
  "Action": "sts:AssumeRole"
 }
]
}
Run Code Online (Sandbox Code Playgroud)

但是当我添加上面的信任关系时,我可以创建部署组但是然后在bitbucket上的aws集成不起作用并抛出错误以添加足够的权限.

aws-code-deploy bitbucket-pipelines

7
推荐指数
1
解决办法
368
查看次数

AWS 构建失败 CLIENT_ERROR:主要源和源版本的授权失败

我的 AWS 管道因以下错误而失败:我已经对 GitHub 帐户进行了身份验证。

CLIENT_ERROR:主要来源和来源版本的授权失败

在此处输入图片说明

amazon-web-services aws-code-deploy aws-codepipeline

7
推荐指数
2
解决办法
5202
查看次数

buildspec、appspec 和滚动我自己的 AMI 之间有什么区别?

除了结构之外,我对buildspec.yml和文件之间的区别感到相当困惑。appspec.yml我的构建规范中的阶段命令似乎对部署环境没有太大影响,并且在运行过程(例如安装)时使用哪个 appspec 挂钩之间也存在类似的模糊性。只要该过程发生在需要它的阶段之前,我就看不到阶段之间的差异。(我已阅读规范参考文档;他们大多确认这些阶段的标题是出于其目的,但并不是真正的目的。)

举个例子,为什么每次我必须进行部署时,我不直接使用 Packer 烘焙自己的 AMI,然后启动一个新主机并附加 AMI?

packer aws-code-deploy aws-codepipeline aws-codestar cicd

7
推荐指数
1
解决办法
3778
查看次数

AWS CodePipeline、CodeDeploy、SAM 和 Lambda:如何(互连)连接它们?

我有点迷失在文档中。我想将 Python 代码推送到存储库并使用 CodePipeline 部署 Lambda。我有 CodeCommit 存储库,CodePipeline - 到目前为止,这有效,我可以创建/更新 CF 堆栈以创建补充资源。

我知道 AWS SAM 可用于使用 CF tpl 部署函数,但如何将 SAM 与 CodePipeline/CodeDeploy 连接?代码应取自“源”管道操作,然后部署为 lambda 函数。

如果 SAM 不是这里最好的自动化解决方案,那么我应该使用什么?管道是关键要求,因此我们不必aws cf update-stack手动运行类似的 操作,只需推送代码即可。

amazon-web-services aws-code-deploy aws-lambda aws-codepipeline aws-sam

6
推荐指数
1
解决办法
3566
查看次数

如何在 Amazon Linux 2 上启用 CodeDeploy 代理?

Amazon Linux 2 已经附带了cfn-init其他 AWS 集成工具,但是CodeDeploy 文档没有提到 Amazon Linux 2 并且运行任何服务命令都会响应类似于:

Redirecting to /bin/systemctl start codedeploy-agent.service
Failed to start codedeploy-agent.service: Unit not found.
Run Code Online (Sandbox Code Playgroud)

如何启用 CodeDeploy 代理,最好使用cfn-init?

amazon-web-services aws-code-deploy

6
推荐指数
1
解决办法
2186
查看次数