1
votes

I've used bitbucket pipeline for auto-deploy my laravel application with AWS codedeploy by follow this tutorial https://medium.com/technext/bitbucket-to-aws-ec2-continuous-deployment-pipeline-using-aws-code-deploy-for-php-application-e39004243cd9 , but still give me error (Failed to register application revision) at step aws deploy register-application-revision in build

need help . please.....

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
2
I have the same problem, Were you able to resolve?Rizwan Ahmed Shivalli

2 Answers

0
votes

Please verify the aws credentials added in repository variables and make sure that no extra spacing's are added while adding the credentials.

0
votes

This could be happening due to a couple of reasons and one easier way to pinpoint the root cause is to enable 'debug' in your pipelines. It can be done by adding the following line in pipe variables along with the AWS variables added:

DEBUG: 'true'

The issue in my case was that the AWS user with which I was running the pipelines (i.e. the user corresponding to AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY values defined) did not have enough privileges to create a revision in CodeDeploy. This was clearly indicated by the following line which showed up only after I enabled the debug mode:

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'