проде без git?
в базу клади
делаю тимплейт для сборки докер образов. Некоторые образа нужно собирать в матрице. Некоторые просто собирать без матрицы. Сделал в тимплейте сиая ямл тимплейт с телом сборки + 2 джобы. Одну хочу включать в случае, если тимплейт с матрицей не определен, другой, если определен. .build_image: stage: build image: name: moby/buildkit:rootless entrypoint: [ "sh", "-c" ] script: - | buildctl-daemonless.sh --debug build \ --frontend=dockerfile.v0 \ --local context=. \ --local dockerfile="${DOCKERFILE:-.}" \ --import-cache type=registry,ref=${DOCKER_REGISTRY}/${CI_IMAGE_TAG} \ --export-cache type=inline \ --output type=image,\"name=${DOCKER_REGISTRY}/${CI_PROJECT_NAME}:${CI_COMMIT_TAG:-$CI_COMMIT_SHORT_SHA},${DOCKER_REGISTRY}/${CI_IMAGE_TAG}\",push=true \ ${BUILD_EXTRA_OPTS} variables: BUILDKITD_FLAGS: --oci-worker-no-process-sandbox Build Docker Image: extends: - .build_image rules: - if: тут условие Build Parallel Docker Image: extends: - .build_image parallel: !reference [.parallel,parallel] CI который вызывает эту барбитуру - include: - project: infrastructure/gitlab/gitlab-ci-templates ref: add_build_args file: docker-image-build.yml .parallel: parallel: matrix: - PYTHON_IMAGE_TYPE: - slim - alpine PYTHON_VERSION: - "3.10" - "3.11"
Мой куриный мозг это не осилил, сорян
нужно какое то условие, которо чекнет, что .parallel тимплейт существует или нет) я чет вот не соображу. можно дефайнить аля переменную. но хочется по красивее как то
Может просто параллель из одного элемента вставлять ? Ну я хз
Обсуждают сегодня