Gitlab CI?
У меня просто ситуация следующая: есть файлы проекта, который завернут в Docker. Vue, Django, Nginx. Eсть два .yml файла для gitlab-ci. И если содержимое файла .gitlab-ci-backend я еще как-то понимаю, то происходящее в файле для frontend не понимаю совсем. Может кто-нибудь помочь понять, что там происходит и зачем это надо вообще?
Файлы-то покажите
# Set up the docker container for build docker images image: docker:stable-dind # CI stages stages: - build - deploy # Prerequirements .build: stage: build image: name: gcr.io/kaniko-project/executor:v1.8.1-debug entrypoint: [""] before_script: - | echo "{\"auths\":{\"${REGISTRY}\":{\"auth\":\"$(printf "%s:%s" "${REGISTRY_USERNAME}" "${REGISTRY_PASSWORD}" | base64 | tr -d '\n')\"}}}" > /kaniko/.docker/config.json echo "$ENV" > .env script: - | /kaniko/executor --context $CI_PROJECT_DIR \ --dockerfile $CI_PROJECT_DIR/Dockerfile \ --destination $REGISTRY/$REGISTRY_IMAGE_PATH/$CI_COMMIT_BRANCH/$LOCALE:$CI_COMMIT_SHORT_SHA \ --destination $REGISTRY/$REGISTRY_IMAGE_PATH/$CI_COMMIT_BRANCH/$LOCALE:latest \ --cache=true build:production:uz: rules: - if: $CI_COMMIT_BRANCH == "stable" extends: - .build variables: LOCALE: uz ENV: $ENV_PROD_UZ deploy:production: stage: deploy image: node:14.18.0-alpine only: - stable before_script: - | apk --update add --quiet --no-cache openssh-client bind-tools eval $(ssh-agent -s) echo "$SSH_PRIVATE_KEY" | ssh-add - script: - ssh -o StrictHostKeyChecking=no theking@theking.uz "cd ~/theking.uz/ && sed -i '/FRONTEND_UZ_IMAGE/cFRONTEND_UZ_IMAGE=$REGISTRY/$REGISTRY_IMAGE_PATH/$CI_COMMIT_BRANCH/uz:$CI_COMMIT_SHORT_SHA' .env && docker-compose up -d frontend-uz"
Не понимаю некоторых, вроде как очевидных на первый взгляд вещей: 1. $REGISTRY_IMAGE_PATH на сколько я понимаю он должен быть $CI_REGISTRY_IMAGE_PATH и береться он каким-то образом у Gitlab. Это выходит что-то переопределили в ENV файле, да? Тоже самое касается $REGISTRY. 2. Что такое вообще этот $REGISTRY? Это имеет какое-то отношение к Docker login?
Предопределённые переменные и их смысловую нагрузку можете посмотреть здесь https://docs.gitlab.com/ee/ci/variables/predefined_variables.html
Обсуждают сегодня