104 lines
3.6 KiB
YAML
104 lines
3.6 KiB
YAML
---
|
|
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: plugins/slack
|
|
settings:
|
|
webhook: https://team.wizewerx.tech/hooks/5eq841fropn3prt4kzgoaoprgr
|
|
channel: builds
|
|
template: >
|
|
{{uppercase repo.name}}:{{uppercase build.branch}}:{{build.number}} CI build started
|
|
- name: consumer
|
|
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 BM_COMPONENT=consumer
|
|
- export BUILD_TARGET=wizewerx/bettermail_${BM_COMPONENT}:${DRONE_COMMIT_BRANCH}
|
|
- docker pull $BUILD_TARGET
|
|
- docker build --cache-from $BUILD_TARGET --build-arg GEM_CACHE=$BUILD_TARGET -f ./consumer/docker/Dockerfile -t $BUILD_TARGET .
|
|
- docker push $BUILD_TARGET
|
|
- name: portal
|
|
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 BM_COMPONENT=portal
|
|
- export BUILD_TARGET=wizewerx/bettermail_${BM_COMPONENT}:${DRONE_COMMIT_BRANCH}
|
|
- docker pull $BUILD_TARGET
|
|
- docker build --cache-from $BUILD_TARGET --build-arg GEM_CACHE=$BUILD_TARGET -f ./consumer/docker/Dockerfile -t $BUILD_TARGET .
|
|
- docker push $BUILD_TARGET
|
|
- name: proxy
|
|
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 BM_COMPONENT=proxy
|
|
- export BUILD_TARGET=wizewerx/bettermail_${BM_COMPONENT}:${DRONE_COMMIT_BRANCH}
|
|
- docker pull $BUILD_TARGET
|
|
- docker build --cache-from $BUILD_TARGET --build-arg GEM_CACHE=$BUILD_TARGET -f ./consumer/docker/Dockerfile -t $BUILD_TARGET .
|
|
- docker push $BUILD_TARGET
|
|
- name: notifications
|
|
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 BM_COMPONENT=notifications
|
|
- export BUILD_TARGET=wizewerx/bettermail_${BM_COMPONENT}:${DRONE_COMMIT_BRANCH}
|
|
- docker pull $BUILD_TARGET
|
|
- docker build --cache-from $BUILD_TARGET --build-arg GEM_CACHE=$BUILD_TARGET -f ./consumer/docker/Dockerfile -t $BUILD_TARGET .
|
|
- docker push $BUILD_TARGET
|
|
- name: notify_end
|
|
image: plugins/slack
|
|
settings:
|
|
webhook: https://team.wizewerx.tech/hooks/5eq841fropn3prt4kzgoaoprgr
|
|
channel: builds
|
|
username: mike
|
|
template: >
|
|
{{uppercase repo.name}}:{{uppercase build.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
|
|
depends_on:
|
|
- consumer
|
|
- portal
|
|
- proxy
|
|
- notifications
|