Code Pipeline: The image URI contains invalid characters

0

Hi everyone

I have Buildspec in CodeBuild like this:

version: 0.2

phases:
  post_build:
    commands:
      - echo '[{ "imageUri":"$IMAGE_URI" , "name":"$CONTAINER_NAME"   }]' > imagedefinitions.json

artifacts:
  files: 
    - imagedefinitions.json

When I set IMAGE_URI variable in Codepipeline this give me error "The image URI contains invalid characters" in Deploy process

My IMAGE_URI example: ****.dkr.ecr.ap-southeast-1.amazonaws.com/demo-ecr:pythonapp

How can I fix this ?

Thanks

Nam
質問済み 4ヶ月前232ビュー
2回答
1
承認された回答

I have fixed this by change single quote to double quote: echo "[{\ "name\ ":\ "$CONTAINER_NAME\ ",\ "imageUri\ ":\ "$IMAGE_URI\ "}]" > imagedefinitions.json

  • Each " inside "" add \ before example: \ " (no space because comment not show \ before " so I add space)
Nam
回答済み 4ヶ月前
1

Hi, to better investigate the issue I would recommend to add a command into your post_build step in order to show the content to the "imagedefinitions.json" file to double check if the interpolation of the variable actually works correctly.

version: 0.2

phases:
  post_build:
    commands:
      - echo '[{ "imageUri":"$IMAGE_URI" , "name":"$CONTAINER_NAME"   }]' > imagedefinitions.json
      - cat imagedefinitions.json

artifacts:
  files: 
    - imagedefinitions.json
AWS
回答済み 4ヶ月前
  • Thanks for comment. I fixed by change ' to " in echo. I worked

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン

関連するコンテンツ