BadDaemons/.drone.yml

119 lines
2.6 KiB
YAML

---
kind: pipeline
name: default
steps:
- name: Download submodules
image: alpine/git
commands:
- git submodule update --recursive --remote
- name: "Main: Build web"
image: plugins/hugo
settings:
hugo_version: 0.74.3
url: https://daemons.it
validate: true
when:
event: push
branch: develop
- name: "Main: Build docker image"
image: banzaicloud/drone-kaniko
settings:
username:
from_secret: docker_user
password:
from_secret: docker_password
repo: baddaemons
registry:
from_secret: docker_registry
tags: latest
when:
event: push
branch: develop
- name: "Main: Deploy testing docker image"
image: appleboy/drone-ssh
host: daemons.it
username: drone
port: 6699
secrets: [ssh_key]
script:
- sudo docker pull registry.daemons.it/baddaemons:testing
- sudo systemctl restart docker-hugo-test
when:
event: push
branch: develop
- name: "Main: Test page"
image: wjdp/htmltest
commands:
- htmltest -c .htmltest.yml
when:
event: push
branch: develop
- name: "Testing: Build web"
image: plugins/hugo
settings:
hugo_version: 0.74.3
validate: true
url: https://test.daemons.it
when:
event: push
branch: testing
- name: "Testing: Build docker image"
image: banzaicloud/drone-kaniko
settings:
username:
from_secret: docker_user
password:
from_secret: docker_password
repo: baddaemons
registry:
from_secret: docker_registry
tags: testing
when:
event: push
branch: testing
- name: "Testing: Deploy docker image"
image: appleboy/drone-ssh
settings:
host: daemons.it
username: drone
port: 6699
key:
from_secret: ssh_key
script:
- sudo docker pull registry.daemons.it/baddaemons:testing
- sudo systemctl restart docker-hugo-test
script_stop: true
when:
event: push
branch: testing
- name: "Testing: Test page"
image: wjdp/htmltest
commands:
- htmltest -c .htmltest.yml
when:
event: push
branch: testing
- name: Notify
image: registry.daemons.it/drone-xmpp
environment:
XMPP_USER:
from_secret: xmpp_user
XMPP_PASSWORD:
from_secret: xmpp_password
XMPP_ROOM:
from_secret: xmpp_room
PLUGIN_MESSAGE: "Beep, boop, I'm a bot. The CI job finished: {build_status}\n- Job url: {build_link}"
when:
status: [success, failure]
event: push