You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
800 B
YAML
33 lines
800 B
YAML
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 |