It's not the same without you

Join the community to find out what other Atlassian users are discussing, debating and creating.

Atlassian Community Hero Image Collage

Bitbucket pipeline failing on Docker Image Push Edited

My bitbucket pipeline is now failing on my docker build and push to AWS step. Nothing has been changed here and the pipeline just started breaking. The error I am getting is:

"no basic auth credentials"

Any idea what is causing this? Here is the code for the step:

- step:
name: Build Docker Image
services:
- docker
image: atlassian/pipelines-awscli
script:
- echo $(aws ecr get-login --no-include-email --region $DEFAULT_REGION) > login.sh

- sh login.sh

- docker build -f Dockerfile-stage -t $SERVICE_NAME --build-arg NPM_TOKEN=${NPM_TOKEN} .

- docker tag $SERVICE_NAME:latest $ECR_URL/$SERVICE_NAME:latest

- docker push $ECR_URL/$SERVICE_NAME:latest

 

2 answers

Hi,

I saw the same error when my pipeline was not doing docker login. Is it possible that your script login.sh doesn't run docker login? Did you change environment variables?

Literally nothing has changed, which makes me thing it's an issue with Bitbucket Pipelines itself. It has been working great for months and just randomly started breaking. 

I'm not so fluent with it, what I noticed was that your pipeline script creates a login script first and then executes it. Have you considered to just execute the commands like:

script:
- $(aws ecr get-login --no-include-email --region $DEFAULT_REGION)
- docker build ...

?

Also keep in mind that it is necessary that the docker login / credentials the aws ecr get-login creates are addressable correctly (otherwise you get exactly the "no basic auth credentials" error).

That is the docker login (from aws ecr get-login ...) must be aligned with the $ECR_URL environment parameter (a.k.a. environment variable) in your example as otherwise the later docker push won't be able to make use of the earlier added credentials - they are added for a "different" docker registry and just don't match.

Therefore no credentials and the "no basic auth credentials" message (for docker push) clearly shows this.

Suggest an answer

Log in or Sign up to answer
TAGS
Community showcase
Published in Bitbucket Pipelines

What We Learned When We Researched Open Source Vulnerabilities in 7 Popular Coding Languages

...hey are a part of us, shaping how we interact with the world around us. The same holds true for programming languages when we think about how different kinds of vulnerabilities raise their heads in t...

1,042 views 0 3
Read article

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you