ci(gitlab-ci): use new registry-waiting procedure for backend container
This commit is contained in:
parent
35faf1422c
commit
426ea5b170
@ -74,15 +74,17 @@ setup:dynamic:
|
||||
rules:
|
||||
- when: always
|
||||
|
||||
setup:containers:frontend:
|
||||
setup:containers:frontend: &setup-container
|
||||
stage: setup
|
||||
needs:
|
||||
- setup:dynamic
|
||||
image: ${IMAGE_BUILDER}
|
||||
variables:
|
||||
IMAGE_TYPE: frontend
|
||||
before_script: &container-before
|
||||
- FRONTEND_IMAGE_VERSION=`cat frontend-image-version`
|
||||
- IMAGE_TAG=frontend/${CI_COMMIT_REF_SLUG}:${FRONTEND_IMAGE_VERSION}
|
||||
- REGISTRY_DESTINATION=${CI_REGISTRY_IMAGE}/frontend/${CI_COMMIT_REF_SLUG}:${FRONTEND_IMAGE_VERSION}
|
||||
- IMAGE_VERSION=`cat ${IMAGE_TYPE}-image-version`
|
||||
- IMAGE_TAG=${IMAGE_TYPE}/${CI_COMMIT_REF_SLUG}:${IMAGE_VERSION}
|
||||
- REGISTRY_DESTINATION=${CI_REGISTRY_IMAGE}/${IMAGE_TYPE}/${CI_COMMIT_REF_SLUG}:${IMAGE_VERSION}
|
||||
script:
|
||||
- curl --request GET --header "PRIVATE-TOKEN:${REGISTRY_AUTH_TOKEN}" "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/registry/repositories?tags=true" > .gitlab-ci/.container-registry-contents.json
|
||||
- IMAGE_EXISTS=`grep \""${REGISTRY_DESTINATION}"\" .gitlab-ci/.container-registry-contents.json`
|
||||
@ -91,7 +93,7 @@ setup:containers:frontend:
|
||||
- >
|
||||
if [ -z "${IMAGE_EXISTS}" -o "${CI_JOB_MANUAL}" = true ] ; then
|
||||
echo "Building image..."
|
||||
buildah bud -t ${IMAGE_TAG} --build-arg PROJECT_DIR=${CI_PROJECT_DIR} --volume ${CI_PROJECT_DIR}:/tmp/${CI_PROJECT_DIR} --file docker/frontend/Dockerfile
|
||||
buildah bud -t ${IMAGE_TAG} --build-arg PROJECT_DIR=${CI_PROJECT_DIR} --volume ${CI_PROJECT_DIR}:/tmp/${CI_PROJECT_DIR} --file docker/${IMAGE_TYPE}/Dockerfile
|
||||
buildah push --creds "${CI_REGISTRY_USER}:${CI_JOB_TOKEN}" ${IMAGE_TAG} ${REGISTRY_DESTINATION}
|
||||
else
|
||||
echo "Image ${IMAGE_TAG} already exists in the container registry. Skipping build."
|
||||
@ -100,13 +102,13 @@ setup:containers:frontend:
|
||||
- if: $CI_MERGE_REQUEST_ID
|
||||
when: never
|
||||
- when: always
|
||||
setup:containers:frontend:wait:
|
||||
setup:containers:frontend:wait: &setup-container-wait
|
||||
stage: setup
|
||||
needs:
|
||||
- setup:dynamic
|
||||
before_script: *container-before
|
||||
script:
|
||||
- apt-get -y install curl
|
||||
- apt-get -y update && apt-get -y install curl
|
||||
- >
|
||||
while ! curl --request GET --header "PRIVATE-TOKEN:${REGISTRY_AUTH_TOKEN}" "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/registry/repositories?tags=true" | grep \""${REGISTRY_DESTINATION}"\" ; do
|
||||
echo "Waiting for container ${IMAGE_TAG} to appear in the container registry..."
|
||||
@ -117,29 +119,14 @@ setup:containers:frontend:wait:
|
||||
when: always
|
||||
- when: never
|
||||
|
||||
# TODO: switch to exec logic as above (see frontend container)
|
||||
setup:containers:backend: &containers-backend
|
||||
stage: setup
|
||||
needs:
|
||||
- setup:dynamic
|
||||
image: ${IMAGE_BUILDER}
|
||||
script:
|
||||
- BACKEND_IMAGE_VERSION=`cat backend-image-version`
|
||||
- buildah bud -t backend/${CI_COMMIT_REF_SLUG}:${BACKEND_IMAGE_VERSION} --build-arg PROJECT_DIR=${CI_PROJECT_DIR} --volume ${CI_PROJECT_DIR}:/tmp/${CI_PROJECT_DIR} --file docker/backend/Dockerfile
|
||||
- buildah push --creds "${CI_REGISTRY_USER}:${CI_JOB_TOKEN}" backend/${CI_COMMIT_REF_SLUG}:${BACKEND_IMAGE_VERSION} ${CI_REGISTRY_IMAGE}/backend/${CI_COMMIT_REF_SLUG}:${BACKEND_IMAGE_VERSION}
|
||||
rules:
|
||||
- changes:
|
||||
paths:
|
||||
- docker/backend/Dockerfile
|
||||
- package.yaml
|
||||
- stack.yaml
|
||||
- stack.yaml.lock
|
||||
interruptible: false
|
||||
setup:containers:backend:manual:
|
||||
<<: *containers-backend
|
||||
rules:
|
||||
- when: manual
|
||||
allow_failure: true
|
||||
setup:containers:backend:
|
||||
<<: *setup-container
|
||||
variables:
|
||||
IMAGE_TYPE: backend
|
||||
setup:containers:backend:wait:
|
||||
<<: *setup-container-wait
|
||||
variables:
|
||||
IMAGE_TYPE: backend
|
||||
|
||||
|
||||
frontend:
|
||||
|
||||
2
Makefile
2
Makefile
@ -122,7 +122,7 @@ frontend-%: node_modules well-known --frontend-%;
|
||||
|
||||
.PHONY: --frontend-test
|
||||
--frontend-test: karma.conf.cjs
|
||||
@echo Karma frontend tests are currently work in progress and have been temporarily disabled.
|
||||
@echo Karma frontend tests are currently broken after npm update and have therefor been temporarily disabled.
|
||||
# npx -- karma start --conf karma.conf.cjs $(WATCH)
|
||||
|
||||
.PHONY: --frontend-test-watch
|
||||
|
||||
Reference in New Issue
Block a user