Gitlab GKE runner push в GCR с использованием идентификатора рабочей нагрузки

Я пытаюсь использовать бегун gitlab для создания изображения в GKE, а затем отправить это изображение в GCR. Это всегда дает сбой и сначала выдает ошибку AWS.

Насколько я понимаю, модуль здания создается в том же пространстве имен, что и моя учетная запись соответствующей службы GCR. Кажется, что модуль не использует идентификатор рабочей нагрузки или не работает по какой-либо другой причине.

Гитлаб Ямл

buildmygcr:
  stage: build
  image:
    name: gcr.io/kaniko-project/executor:debug
    entrypoint: [""]
  tags: 
    - cluster
    - kubernetes
  script:
    - /kaniko/executor --verbosity debug --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/Dockerfile --destination gcr.io/myproject/test:test --cache=false

Ошибка сборки

DEBU[0000] Copying file /builds/user/test/Dockerfile to /kaniko/Dockerfile 
E0403 20:18:16.646782      21 aws_credentials.go:77] while getting AWS credentials NoCredentialProviders: no valid providers in chain. Deprecated.
    For verbose messaging see aws.Config.CredentialsChainVerboseErrors
error checking push permissions -- make sure you entered the correct tag name, and that you are authenticated correctly, and try again: checking push permission for "gcr.io/myproject/test:test": creating push check transport for gcr.io failed: GET https://gcr.io/v2/token?scope=repository%myproject%2Ftest%3Apush%2Cpull&service=gcr.io: UNAUTHORIZED: You don't have the needed permissions to perform this operation, and you may have invalid credentials. To authenticate your request, follow the steps in: https://cloud.google.com/container-registry/docs/advanced-authentication
Cleaning up file based variables
00:00
ERROR: Job failed: command terminated with exit code 1

Проверка идентификации рабочей нагрузки показывает правильную учетную запись для пространства имен

root@workload-identity-test:/# gcloud auth list
                Credentialed Accounts
ACTIVE  ACCOUNT
*       [email protected]

To set the active account, run:
    $ gcloud config set account `ACCOUNT`

Это похоже на ту же проблему в этом Почта. github.com/GoogleContainerTools/kaniko/issues/1287

Alex G 05.04.2021 13:01
Создание приборной панели для анализа данных на GCP - часть I
Создание приборной панели для анализа данных на GCP - часть I
Недавно я столкнулся с интересной бизнес-задачей - визуализацией сбоев в цепочке поставок лекарств, которую могут просматривать врачи и...
0
1
15
0

Другие вопросы по теме