ci: add scheduled builds

This commit is contained in:
Rainer Killinger
2023-07-11 16:10:29 +02:00
parent 107a7c5e9e
commit 982b4feb3c
23 changed files with 2266 additions and 1948 deletions

View File

@@ -0,0 +1,33 @@
.limit_base_image_publishing:
- if: $CI_PIPELINE_SOURCE == "schedule" && $CI_COMMIT_BRANCH == 'main'
when: always
base image:
image: docker
stage: setup
tags:
- gitlab-org-docker
inherit:
default:
- interruptible
services:
- docker:dind
script:
- >
docker login -u "${CI_REGISTRY_USER}" -p "${CI_JOB_TOKEN}" "${CI_REGISTRY}" &&
docker build
-t "${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:$(grep -o '"version": "[^"]*' "${DEPLOY_DIR}/package.json" | cut -d'"' -f4)"
-t "${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:latest" "${CI_PROJECT_DIR}/${DEPLOY_DIR}" &&
docker push "${CI_REGISTRY_IMAGE}/${IMAGE_NAME}"
cache: {} # disable irrelevant cache for this job
before_script: [] # do not run irrelevant before script for this job
rules: !reference [.limit_base_image_publishing]
parallel:
matrix:
- IMAGE_NAME: node-base
DEPLOY_DIR: images/node-base
- IMAGE_NAME: node-builder
DEPLOY_DIR: images/node-builder
- IMAGE_NAME: app-builder
DEPLOY_DIR: images/app-builder