diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..39f2280 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,33 @@ +image: docker:18-git + +stages: + - build + - push + +before_script: + - echo -n $HARBOR_TOKEN | docker login -u $HARBOR_USER --password-stdin $HARBOR_REGISTRY + - docker version + - docker info + +after_script: + - docker logout $HARBOR_REGISTRY + +Build: + stage: build + script: + - docker pull $HARBOR_REGISTRY_IMAGE:latest || true + - > + docker build + --pull + --cache-from $HARBOR_REGISTRY_IMAGE:latest + --tag $HARBOR_REGISTRY_IMAGE:$CI_COMMIT_SHA . + - docker push $HARBOR_REGISTRY_IMAGE:$CI_COMMIT_SHA + +Push_When_tag: + stage: push + only: + - tags + script: + - docker pull $HARBOR_REGISTRY_IMAGE:$CI_COMMIT_SHA + - docker tag $HARBOR_REGISTRY_IMAGE:$CI_COMMIT_SHA $HARBOR_REGISTRY_IMAGE:$CI_COMMIT_REF_NAME + - docker push $HARBOR_REGISTRY_IMAGE:$CI_COMMIT_REF_NAME \ No newline at end of file