--- kind: pipeline type: docker name: build-test-deploy image_pull_secrets: - registryLogins platform: os: linux arch: amd64 volumes: - name: dockersock host: path: /var/run/docker.sock steps: - name: notify_start image: appleboy/drone-telegram settings: token: ${TELEGRAM_SECRET_TOKEN} to: ${TELEGRAM_TO} message: > {{uppercase repo.name}}:${DRONE_COMMIT_BRANCH}:{{build.number}} CI build started - name: deploy image: wizewerx/wizewerx-docker-compose volumes: - name: dockersock path: /var/run/docker.sock environment: DOCKER_AUTH_CONFIG: from_secret: registryLogins commands: - mkdir -p "/root/.docker" && echo $DOCKER_AUTH_CONFIG > "/root/.docker/config.json" - export BUILD_TARGET=wizewerx/${DRONE_REPO_NAME}:${DRONE_COMMIT_BRANCH} - export PULL_IMAGE=`docker manifest inspect $BUILD_TARGET > /dev/null;echo $?` - if [[ "$PULL_IMAGE" -eq 0 ]]; then docker pull $BUILD_TARGET ;fi - docker build --cache-from $BUILD_TARGET --build-arg GEM_CACHE=$BUILD_TARGET -f ./Dockerfile -t $BUILD_TARGET . - docker push $BUILD_TARGET when: branch: - master - production - name: notify_end image: appleboy/drone-telegram settings: token: ${TELEGRAM_SECRET_TOKEN} to: ${TELEGRAM_TO} message: > {{uppercase repo.name}}:${DRONE_COMMIT_BRANCH}:{{build.number}}{{#success build.status}} succeeded. Good job. {{else}} failed. FIX THE BUILD!!!.{{/success}} Build took {{since build.started}} when: status: [ success, failure ] branch: - master - production