Internal error with CodePipeline + CodeDeploy

0

Hi,

I have a CodePipeline set up where changes to code builds and pushes an image to ECR. I am looking to automate updating ECS with the new image as it is built. I have configured the ECS Blue/Green action but when it runs it fails almost immediately with a message about an "Internal Error". There is no failed deployment created in CodeDeploy.

I have configured CodePipeline with two inputs:

  1. the source code used to build the image
  2. a zip in S3 containing the appspec.yaml and the taskdef.json

When either input changes I rebuild the container and push to ECR tagged 'latest'. The next step should be a Blue/Green deployment to ECS. I have configured CodeDeploy and the job works if triggered manually.

When it is triggered via CodePipeline it will fail and I receive a message "Action execution failed
InternalError. Error reference code: <some id>". I suspect that there may be some underlying issue with IAM but I can't find where to start looking at this stage. There is no failed deployment shown in CodeDeploy so I don't see a way to get more information about what has failed.

My policy for CodePipeline is copied from the one documented here: https://docs.aws.amazon.com/codepipeline/latest/userguide/how-to-custom-role.html#view-default-service-role-policy

I have read through the troubleshooting docs here: https://docs.aws.amazon.com/codepipeline/latest/userguide/troubleshooting.html

I believe my issue is similar to the one described here: https://forums.aws.amazon.com/thread.jspa?messageID=897822 I've tried to provide as much detail as I can.

I'm pretty well stuck at this point - is there anything else I should be trying at this stage?

thanks!

asked 5 years ago1558 views
1 Answer
0

I have resolved this. After very carefully re-checking all my artifacts I discovered that the taskdef.json was not correctly formed. This is my own fault but it would have been so nice if the error could have given me a clue along those lines - I probably should have realised it sooner given that is a difference between triggering the deployment manually vs doing it via CodePipeline.

Now that the inputs are correct it appears to be working correctly.

answered 5 years ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions