Newer
Older
image: docker:stable
stages:
- build
before_script:
- echo -n $CI_JOB_TOKEN | docker login -u gitlab-ci-token --password-stdin $CI_REGISTRY
build:
stage: build
script:
- docker pull $CI_REGISTRY_IMAGE:latest || true
- if [ $CI_COMMIT_TAG != '' ]; then
docker build --cache-from $CI_REGISTRY_IMAGE:latest
--tag $CI_REGISTRY_IMAGE:$CI_COMMIT_SHORT_SHA
--tag $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG
--tag $CI_REGISTRY_IMAGE:latest .
else
docker build --cache-from $CI_REGISTRY_IMAGE:latest
--tag $CI_REGISTRY_IMAGE:$CI_COMMIT_SHORT_SHA --tag $CI_REGISTRY_IMAGE:latest .
- docker push $CI_REGISTRY_IMAGE:latest
- if [ $CI_COMMIT_TAG != '' ]; then docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG ;fi