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

2 Respostas
1
Resposta aceita

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
respondido há 4 meses
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
respondido há 4 meses
  • Thanks for comment. I fixed by change ' to " in echo. I worked

Você não está conectado. Fazer login para postar uma resposta.

Uma boa resposta responde claramente à pergunta, dá feedback construtivo e incentiva o crescimento profissional de quem perguntou.

Diretrizes para responder a perguntas