bitbucket-pipelines - 无法在 bitbucket 管道中注册应用程序修订版

标签 bitbucket-pipelines aws-code-deploy

我已按照本教程 https://medium.com/technext/bitbucket-to-aws-ec2-continuous-deployment-pipeline-using-aws-code-deploy-for-php-application-e39004243cd9 使用 bitbucket 管道通过 AWS codedeploy 自动部署我的 Laravel 应用程序,但在构建中的 aws deploy register-application-revision 步骤中仍然出现错误(无法注册应用程序修订版)

需要帮助。请......

bitbucket-pipelines.yml

image: atlassian/default-image:2

pipelines:
  default:
    - step:
        script:
          - apt-get update
          - apt-get install -y zip
          - zip -r application1.zip .
          - pipe: atlassian/aws-code-deploy:0.2.5
            variables:
              AWS_DEFAULT_REGION: $AWS_DEFAULT_REGION
              AWS_ACCESS_KEY_ID: $AWS_ACCESS_KEY_ID
              AWS_SECRET_ACCESS_KEY: $AWS_SECRET_ACCESS_KEY
              APPLICATION_NAME: $APPLICATION_NAME
              S3_BUCKET: $S3_BUCKET
              COMMAND: 'upload'
              ZIP_FILE: 'application1.zip'
              VERSION_LABEL: 'my-app-1.0.0'
          - pipe: atlassian/aws-code-deploy:0.2.5
            variables:
              AWS_DEFAULT_REGION: $AWS_DEFAULT_REGION
              AWS_ACCESS_KEY_ID: $AWS_ACCESS_KEY_ID
              AWS_SECRET_ACCESS_KEY: $AWS_SECRET_ACCESS_KEY
              APPLICATION_NAME: $APPLICATION_NAME
              DEPLOYMENT_GROUP: $DEPLOYMENT_GROUP
              S3_BUCKET: $S3_BUCKET
              COMMAND: 'deploy'
              WAIT: 'true'
              VERSION_LABEL: 'my-app-1.0.0'
              IGNORE_APPLICATION_STOP_FAILURES: 'true'
              FILE_EXISTS_BEHAVIOR: 'OVERWRITE'

appspec.yml

version: 0.0
os: linux 
files:
  - source: /
    destination: /home/ubuntu/my-app1

最佳答案

发生这种情况可能有多种原因,查明根本原因的一种更简单的方法是在管道中启用“调试”。可以通过在管道变量中添加以下行以及添加的 AWS 变量来完成:

DEBUG: 'true'

我的问题是,运行管道的 AWS 用户(即与定义的 AWS_ACCESS_KEY_ID 和 AWS_SECRET_ACCESS_KEY 值对应的用户)没有足够的权限在 CodeDeploy 中创建修订。以下行清楚地表明了这一点,该行仅在我启用 Debug模式后才显示:

An error occurred (AccessDeniedException) when calling the RegisterApplicationRevision operation: User: arn:aws:iam::XXXXXXXXXXXX:user/bitbucket-deployer is not authorized to perform: codedeploy:RegisterApplicationRevision on resource: arn:aws:codedeploy:$AWS_DEFAULT_REGION:XXXXXXXXXXXX:application:$APPLICATION_NAME'

关于bitbucket-pipelines - 无法在 bitbucket 管道中注册应用程序修订版,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64312270/

相关文章:

bitbucket 分支显示类似 "MAIN" "DEVELOPMENT"的标签。这些标签是自动生成的

ruby-on-rails - aws 代码部署 : No such file or directory - appspec. yml

amazon-web-services - 使用 CodeDeploy 和 CI 工具部署分布式应用程序的好方法是什么?

linux - AWS CodeDeploy hooks 脚本执行位置

Amazon EC2 代码部署没有主机成功

reactjs - Bitbucket 管道无法推送到 heroku

javascript - Angular 7 ng build,registry.registerUriHandler 不是 bitbucket 管道中的函数

git - Bitbucket 管道 - 具有相同步骤的多个分支

使用 Bitbucket 管道的 Android NDK CI

node.js - Codedeploy Application Start 卡在 pending using node 上