Add .gitlab-ci.yml to build Dockerfile with cache for master, tag, and all.
This commit is contained in:
parent
a75614edd7
commit
2794910665
|
|
@ -0,0 +1,40 @@
|
|||
image: docker:latest
|
||||
|
||||
services:
|
||||
- docker:dind
|
||||
|
||||
before_script:
|
||||
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
|
||||
|
||||
build-master:
|
||||
stage: build
|
||||
script:
|
||||
- docker pull "$CI_REGISTRY_IMAGE:latest" || true
|
||||
- docker build --cache-from "$CI_REGISTRY_IMAGE:latest" --pull -t "$CI_REGISTRY_IMAGE:latest" .
|
||||
- docker push "$CI_REGISTRY_IMAGE:latest"
|
||||
only:
|
||||
- master
|
||||
- schedules
|
||||
|
||||
build-master-tag:
|
||||
stage: build
|
||||
script:
|
||||
- docker build --pull -t $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG .
|
||||
- docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_TAG
|
||||
only:
|
||||
- tags
|
||||
- schedules
|
||||
- master
|
||||
except:
|
||||
- branches
|
||||
|
||||
build:
|
||||
stage: build
|
||||
script:
|
||||
- docker pull "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" || true
|
||||
- docker build --cache-from "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" --pull -t "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" .
|
||||
- docker push "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG"
|
||||
except:
|
||||
- master
|
||||
only:
|
||||
- branches
|
||||
Loading…
Reference in New Issue