From 57c971e8c659994b2d998eccd99dcbe8e804726c Mon Sep 17 00:00:00 2001 From: skeris Date: Fri, 26 Jul 2024 16:08:17 +0300 Subject: [PATCH] add rules to ci for build only when some files changed --- .gitlab-ci.yml | 34 +++++++++++++++++++++++++++++++--- 1 file changed, 31 insertions(+), 3 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 521eeff..8ed3ee6 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,19 +1,47 @@ stages: - build -build_images: +golang: stage: build tags: - gobuild - rules: - - if: $CI_COMMIT_BRANCH == "main" + only: + changes: + - golang/Dockerfile before_script: - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY script: - docker build -t $CI_REGISTRY_IMAGE/golang:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID $CI_PROJECT_DIR/golang - docker push $CI_REGISTRY_IMAGE/golang:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID + after_script: + - docker system prune --all --volumes --force + +alpine: + stage: build + tags: + - gobuild + only: + changes: + - alpine/Dockerfile + before_script: + - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY + script: - docker build -t $CI_REGISTRY_IMAGE/alpine:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID $CI_PROJECT_DIR/alpine - docker push $CI_REGISTRY_IMAGE/alpine:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID + after_script: + - docker system prune --all --volumes --force + +golint: + stage: build + tags: + - gobuild + only: + changes: + - golint/Dockerfile + - golint/golangci-lint + before_script: + - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY + script: - docker build -t $CI_REGISTRY_IMAGE/golint:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID $CI_PROJECT_DIR/golint - docker push $CI_REGISTRY_IMAGE/golint:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID after_script: