Мы пытаемся построить конвейер для docker изображения, используя jenkins и облачную сборку. Дженкинс извлекает исходный код из набора битов, выполняет анализ кода soanrqube, строит артефакты, используя maven, и переносит их в артефакт nexus. После успешного завершения всех этих шагов следующий шаг - запустить сборку облака Google, которая создаст изображение docker, загрузив артефакт из артефакта nexus и отправив изображение в GCR.
Здесь у нас есть проблема. На этапе сборки maven мы сохраняем версию артефакта от pom. xml до переменной скажем VERSION. То же значение было передано в облачную сборку в качестве замены значения. Но значение не передается от этапа сборки maven к этапу построения облака. Ниже приведен код облачной сборки
- steps:
- name: gcr.io/cloud-builders/gsutil
args: ['cp', 'gs://test-docker-sai/Dockerfile.txt', 'Dockerfile']
- name: 'gcr.io/cloud-builders/docker'
args: [ 'build', '-t', 'gcr.io/$PROJECT_ID/test-image:$_TAG', '.' ]
substitutions:
_TAG=$VERSION
images: - 'gcr.io/$PROJECT_ID/test-image:$_TAG'
Ниже приведена ошибка из облачной сборки
Step #1: invalid argument "gcr.io/abcd-ef-ghi/test-image:$VERSION" for "-t, --tag" flag: invalid reference format