Newer
Older
variables:
DOCKER_TLS_CERTDIR: ""
build-master:
image: docker:latest
stage: build
services:
- docker:dind
before_script:
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
script:
- VERSION=`grep 'version="*"' core/Dockerfile | cut -d '"' -f2`
- docker pull "$IMAGE":latest || true
- docker build --cache-from "$IMAGE":latest -t "$IMAGE":latest -t "$IMAGE":$VERSION core/
- docker push "$IMAGE":$VERSION
- docker push "$IMAGE":latest
- VERSION=`grep 'version="*"' preprocessor/Dockerfile | cut -d '"' -f2`
- docker pull "$IMAGE":latest || true
- docker build --cache-from "$IMAGE":latest -t "$IMAGE":latest -t "$IMAGE":$VERSION preprocessor/
- docker push "$IMAGE":$VERSION
- docker push "$IMAGE":latest
- VERSION=`grep 'version="*"' client/Dockerfile | cut -d '"' -f2`
- docker pull "$IMAGE":latest || true
- docker build --cache-from "$IMAGE":latest -t "$IMAGE":latest -t "$IMAGE":$VERSION client/
- docker push "$IMAGE":$VERSION
- docker push "$IMAGE":latest
- VERSION=`grep 'version="*"' cache/Dockerfile | cut -d '"' -f2`
- docker pull "$IMAGE":latest || true
- docker build --cache-from "$IMAGE":latest -t "$IMAGE":latest -t "$IMAGE":$VERSION cache/
- docker push "$IMAGE":$VERSION
- docker push "$IMAGE":latest
only:
- master
build:
image: docker:latest
stage: build
services:
- docker:dind
before_script:
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
script:
- docker pull "$IMAGE":$CI_COMMIT_REF_NAME || true
- docker build --cache-from "$IMAGE":$CI_COMMIT_REF_NAME -t "$IMAGE":$CI_COMMIT_REF_SLUG -t "$IMAGE":$CI_COMMIT_REF_NAME core/
- docker push "$IMAGE:$CI_COMMIT_REF_SLUG"
- docker push "$IMAGE:$CI_COMMIT_REF_NAME"
- docker pull "$IMAGE":$CI_COMMIT_REF_NAME || true
- docker build --cache-from "$IMAGE":$CI_COMMIT_REF_NAME -t "$IMAGE":$CI_COMMIT_REF_SLUG -t "$IMAGE":$CI_COMMIT_REF_NAME preprocessor/
- docker push "$IMAGE:$CI_COMMIT_REF_SLUG"
- docker push "$IMAGE:$CI_COMMIT_REF_NAME"
- docker pull "$IMAGE":$CI_COMMIT_REF_NAME || true
- docker build --cache-from "$IMAGE":$CI_COMMIT_REF_NAME -t "$IMAGE":$CI_COMMIT_REF_SLUG -t "$IMAGE":$CI_COMMIT_REF_NAME client/
- docker push "$IMAGE:$CI_COMMIT_REF_SLUG"
- docker push "$IMAGE:$CI_COMMIT_REF_NAME"
- docker pull "$IMAGE":$CI_COMMIT_REF_NAME || true
- docker build --cache-from "$IMAGE":$CI_COMMIT_REF_NAME -t "$IMAGE":$CI_COMMIT_REF_SLUG -t "$IMAGE":$CI_COMMIT_REF_NAME cache/
- docker push "$IMAGE:$CI_COMMIT_REF_SLUG"
- docker push "$IMAGE:$CI_COMMIT_REF_NAME"
except:
- master
- apk update && apk add bash postgresql-dev gcc python3-dev musl-dev py-pip gdal
- pip3 install -r requirements.txt
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
- chmod +x env_setup.sh wait_for_container.sh registrar_test.sh
- docker tag "$IMAGE" "$IMAGE:latest"
- IMAGE="$CI_REGISTRY_IMAGE/pvs_cache"
- docker tag "$IMAGE" "$IMAGE:latest"
- IMAGE="$CI_REGISTRY_IMAGE/pvs_preprocessor"
- docker tag "$IMAGE" "$IMAGE:latest"
- IMAGE="$CI_REGISTRY_IMAGE/pvs_client"
- docker network create -d overlay emg-extnet
- docker stack deploy -c docker-compose.emg.yml -c docker-compose.emg.dev.yml emg-pvs