Skip to content
Snippets Groups Projects

Prepared definition of application docker image

Merged Bartek Wrona requested to merge bw_caddy_based_app into main
1 file
+ 1
18
Compare changes
  • Side-by-side
  • Inline
+ 45
18
image: node:20.18.3
stages:
- build
- deploy
include:
- template: Workflows/Branch-Pipelines.gitlab-ci.yml
- project: 'hive/common-ci-configuration'
ref: 19b15e2e0ea83de72ce3552a44ca59ab2201de73
file:
- '/templates/docker_image_jobs.gitlab-ci.yml'
- '/templates/npm_projects.gitlab-ci.yml'
variables:
GIT_DEPTH: 0
GIT_STRATEGY: clone
GIT_SUBMODULE_STRATEGY: recursive
cache:
key:
files:
- pnpm-lock.yaml
paths:
- node_modules/
- .pnpm-store/
default:
tags:
- public-runner-docker
.npm_based_job:
before_script:
- corepack enable
- corepack prepare pnpm@10.0.0 --activate
- pnpm config set store-dir .pnpm-store
- pnpm install --frozen-lockfile
build:
extends: .npm_based_job
extends: .npm_based_job_base
stage: build
script:
- pnpm build
@@ -39,6 +30,42 @@ build:
when: always
expire_in: 1 week
.build_app_image_base:
extends: .docker_image_builder_job_template
stage: deploy
needs:
- job: build
artifacts: true
variables:
GIT_SUBMODULE_STRATEGY: normal
GIT_DEPTH: 1
IMAGE_TAG: ""
script:
- echo "$CI_REGISTRY_PASSWORD" | docker login -u "$CI_REGISTRY_USER" "$CI_REGISTRY" --password-stdin
- ./scripts/ci-helpers/build_instance.sh --push "$IMAGE_TAG" "$CI_PROJECT_DIR" "$CI_REGISTRY_IMAGE" --progress="plain"
artifacts:
reports:
dotenv: app_docker_image_name.env
build_app_image:
extends: .build_app_image_base
variables:
IMAGE_TAG: "$CI_COMMIT_SHORT_SHA"
push_protected_app_image:
extends: .build_app_image_base
stage: deploy
variables:
IMAGE_TAG: "$CI_COMMIT_REF_NAME"
rules:
- if: '$CI_COMMIT_REF_PROTECTED == "true"'
when: on_success
- when: never
pages:
stage: deploy
script:
Loading