--- image: docker:18.01.0-ce-git services: - docker:18.01.0-ce-dind stages: - build - deploy variables: HOMOLOG_IMAGE: $CI_REGISTRY_IMAGE:$CI_BUILD_REF_NAME-$CI_COMMIT_SHORT_SHA RELEASE_IMAGE: $CI_REGISTRY_IMAGE:$CI_BUILD_REF_NAME KUBECONFIG: /etc/k8s-config build to homolog: variables: GIT_SUBMODULE_STRATEGY: normal stage: build script: - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY - docker pull mapasculturais/mapasculturais:v5.0.0-RC - docker build -t $HOMOLOG_IMAGE -f compose/production/Dockerfile . - docker push $HOMOLOG_IMAGE only: - /master/ environment: homolog tags: - docker deploy to homolog: stage: deploy image: hacklab/kubectl:latest script: - echo ${kube_config} | base64 -d > ${KUBECONFIG} - kubectl -n mapasculturais-aldirblanc-dev --record deployment.apps/mapasculturais set image deployment.v1.apps/mapasculturais mapasculturais=$HOMOLOG_IMAGE only: - /master/ environment: homolog tags: - docker # build to production: # variables: # GIT_SUBMODULE_STRATEGY: normal # stage: build # script: # - docker login -u "gitlab-ci-token" -p "$CI_JOB_TOKEN" $CI_REGISTRY # - docker pull mapasculturais/mapasculturais:v5.0.0-RC # - docker build -t $RELEASE_IMAGE -f compose/production/Dockerfile . # - docker tag $RELEASE_IMAGE "$CI_REGISTRY_IMAGE:latest" # - docker push $RELEASE_IMAGE # - docker push "$CI_REGISTRY_IMAGE:latest" # only: # - tags # environment: production # tags: # - docker # deploy to production: # stage: deploy # image: hacklab/kubectl:latest # script: # - echo ${kube_config} | base64 -d > ${KUBECONFIG} # - kubectl -n mapasculturais-aldirblanc-prod --record deployment.apps/mapasculturais set image deployment.apps/mapasculturais mapasculturais=$RELEASE_IMAGE # only: # - tags # environment: production # tags: # - docker