diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b8e021a..620b085 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -12,6 +12,5 @@ variables: IMAGE_NAME: docs-portal include: - - ci/develop.yml - - "ci/rules.yml" + - ci/*.yml - "ci/deploy/*.inc.yml" diff --git a/ci/develop.yml b/ci/build-image.yml similarity index 63% rename from ci/develop.yml rename to ci/build-image.yml index 9a4a9c9..c1b89dd 100644 --- a/ci/develop.yml +++ b/ci/build-image.yml @@ -1,34 +1,4 @@ -develop:npm: - image: harbor.vimpelcom.ru/dockerhub/library/node:lts - stage: build - cache: - - key: - files: - - package.json - paths: - - node_modules/ - rules: - - !reference [.build-npm-rules, rules] - variables: - PRODUCT: "$PRODUCT_PROD" - script: - - export PRODUCT_VERSION=$(node -p "require('./package.json').version") - - echo PRODUCT_VERSION="$PRODUCT_VERSION" >> .env - - echo PRODUCT="$PRODUCT_PROD" >> .env - - npm install - - npm run build - - export VITE_NEW_VERSION="true" - - echo "$DMZ_DIST_DIR" - - ./node_modules/.bin/vitepress build src --outDir "$DMZ_DIST_DIR" - artifacts: - paths: - - "$DIST_DIR" - - "$DMZ_DIST_DIR" - reports: - dotenv: .env - expire_in: 1h - -build-image-npm: +build-image: image: harbor.vimpelcom.ru/dockerhub/library/docker:20.10.11-dind stage: package rules: @@ -46,7 +16,7 @@ build-image-npm: - docker push ${CONTAINER_REGISTRY}/${PRODUCT_DMZ}/${IMAGE_NAME}:$PRODUCT_VERSION - docker push ${CONTAINER_REGISTRY}/${PRODUCT_DMZ}/${IMAGE_NAME}:latest needs: - - job: develop:npm + - job: build:npm artifacts: true optional: true artifacts: diff --git a/ci/build-npm.yml b/ci/build-npm.yml new file mode 100644 index 0000000..b53dc8d --- /dev/null +++ b/ci/build-npm.yml @@ -0,0 +1,29 @@ +build:npm: + image: harbor.vimpelcom.ru/dockerhub/library/node:lts + stage: build + cache: + - key: + files: + - package.json + paths: + - node_modules/ + rules: + - !reference [.build-npm-rules, rules] + variables: + PRODUCT: "$PRODUCT_PROD" + script: + - export PRODUCT_VERSION=$(node -p "require('./package.json').version") + - echo PRODUCT_VERSION="$PRODUCT_VERSION" >> .env + - echo PRODUCT="$PRODUCT_PROD" >> .env + - npm install + - npm run build + - export VITE_NEW_VERSION="true" + - echo "$DMZ_DIST_DIR" + - ./node_modules/.bin/vitepress build src --outDir "$DMZ_DIST_DIR" + artifacts: + paths: + - "$DIST_DIR" + - "$DMZ_DIST_DIR" + reports: + dotenv: .env + expire_in: 1h diff --git a/ci/deploy/deploy-cloud.inc.yml b/ci/deploy/deploy-cloud.inc.yml index 6eb51ee..5a4ee49 100644 --- a/ci/deploy/deploy-cloud.inc.yml +++ b/ci/deploy/deploy-cloud.inc.yml @@ -4,12 +4,7 @@ deploy-test-stand: variables: stand: cloud-stand.vega-dev.cloud.vimpelcom.ru rules: - - if: $CI_COMMIT_BRANCH && $CI_OPEN_MERGE_REQUESTS - when: never - - if: $CI_COMMIT_BRANCH && $CI_PIPELINE_SOURCE == "merge_request_event" - when: never - - if: $CI_PIPELINE_SOURCE == "push" - when: manual + - !reference [.build-npm-rules, rules] before_script: - | sed -i s%https://dl-cdn.alpinelinux.org/%http://rhrepo.vimpelcom.ru/ext/ya/mirrors/% /etc/apk/repositories && \ @@ -37,5 +32,5 @@ deploy-test-stand: ~/deploy.sh ${IMAGE_NAME} && rm -f ~/deploy.sh" needs: - - job: build-image-npm + - job: build-image optional: true diff --git a/ci/deploy/deploy-template.inc.yml b/ci/deploy/deploy-template.inc.yml index 44591a9..663d5cc 100644 --- a/ci/deploy/deploy-template.inc.yml +++ b/ci/deploy/deploy-template.inc.yml @@ -69,5 +69,5 @@ rm -f ~/deploy.sh" done needs: - - job: build-image-npm + - job: build-image optional: true