diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 6142b4129..2e6d0bf57 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -26,6 +26,18 @@ variables: IMAGE_BUILDER: quay.io/buildah/stable:latest + FRONTEND_IMAGE_DEPENDENCIES: + docker/frontend/Dockerfile + package.json + package-lock.json + webpack.config.js + BACKEND_IMAGE_DEPENDENCIES: + docker/backend/Dockerfile + package.yaml + package.yaml.lock + stack.yaml + stack.yaml.lock + default: @@ -54,8 +66,8 @@ setup:dynamic: - apt-get -y update - apt-get -y install git script: - - FRONTEND_IMAGE_VERSION=`git log docker/frontend/Dockerfile | grep '^commit' | wc --lines | tee frontend-image-version` - - BACKEND_IMAGE_VERSION=`git log docker/backend/Dockerfile | grep '^commit' | wc --lines | tee backend-image-version` + - FRONTEND_IMAGE_VERSION=`git log ${FRONTEND_IMAGE_DEPENDENCIES} | grep '^commit' | wc --lines | tee frontend-image-version` + - BACKEND_IMAGE_VERSION=`git log ${BACKEND_IMAGE_DEPENDENCIES} | grep '^commit' | wc --lines | tee backend-image-version` - cat .gitlab-ci/frontend.yml | .gitlab-ci/dynamci.pl FRONTEND_IMAGE_VERSION=${FRONTEND_IMAGE_VERSION} > frontend.yml - cat .gitlab-ci/backend.yml | .gitlab-ci/dynamci.pl BACKEND_IMAGE_VERSION=${BACKEND_IMAGE_VERSION} > backend.yml artifacts: @@ -78,7 +90,8 @@ setup:containers:frontend: &containers-frontend - buildah push --creds "${CI_REGISTRY_USER}:${CI_JOB_TOKEN}" frontend/${CI_COMMIT_REF_SLUG}:${FRONTEND_IMAGE_VERSION} ${CI_REGISTRY_IMAGE}/frontend/${CI_COMMIT_REF_SLUG}:${FRONTEND_IMAGE_VERSION} rules: - changes: - - docker/frontend/Dockerfile + paths: + - ${FRONTEND_IMAGE_DEPENDENCIES} interruptible: false setup:containers:frontend:manual: <<: *containers-frontend @@ -97,7 +110,8 @@ setup:containers:backend: &containers-backend - 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: - - docker/backend/Dockerfile + paths: + - ${BACKEND_IMAGE_DEPENDENCIES} interruptible: false setup:containers:backend:manual: <<: *containers-backend