Drone

Cannot work with both Google Artifact Registry and Google Container Repository

Hello,

I am migrating from GCR to the new AR (Google Artifact Repository) and I realise that there might be a bug on the current drone/gcr plugin that prevents it from working.

I have this step:

- name: smoketest-build
  image: plugins/gcr
  settings:
    registry: europe-docker.pkg.dev
    repo: europe-docker.pkg.dev/synthace/docker/smoke-test
    tags:
      - ${DRONE_COMMIT_SHA}
    dockerfile: cloudbuild/smoketest.Dockerfile
    context: antha-com/smoketest/
    cache_from: europe-docker.pkg.dev/synthace/docker/smoke-test:master
    json_key:
      from_secret: google_credentials
  volumes:
  - name: docker-gcr
    path: /var/lib/docker

Drone is able to fetch and push to/from both GCR and AR, as validated in other steps.

However, in this particular step it fails because the first image in the Dockerfile is fetching from eu.gcr.io/private_repo. So it seems as if, when using AR, you cannot then fetch images from a private GCR repository.

FROM eu.gcr.io/private-repo/conda:py3.7-alpine-glibc-forge AS build-base
LABEL vendor="synthace.com"
    
COPY requirements.txt /tmp/