docs/.drone.yml

217 lines
4.6 KiB
YAML
Raw Normal View History

2021-03-15 11:40:14 +01:00
---
kind: pipeline
type: docker
name: build
platform:
os: linux
arch: amd64
trigger:
branch: master
event: [push, pull_request]
steps:
- name: submodules
pull: always
depends_on: [clone]
image: alpine/git
commands:
- git --version
- git submodule update --init --recursive
- name: pull fedora-hugo
pull: always
depends_on: [clone]
image: immawanderer/fedora-hugo:linux-amd64
commands:
- uname -r
- cat /etc/fedora-release
2022-03-22 16:16:33 +01:00
- name: hugo-extended
pull: if-not-exists
depends_on:
- submodules
- pull fedora-hugo
image: immawanderer/fedora-hugo:linux-amd64
2022-03-22 16:16:33 +01:00
commands:
- hugo version
- hugo --gc=true --minify
2021-03-15 11:40:14 +01:00
2022-03-22 20:07:57 +01:00
# perform basic checks on failure
- name: diagnostics
image: plugins/drone-diagnostics
pull: if-not-exists
commands:
- env
- ls -lah
- ping git.dotya.ml -w 5
- ping www.github.com -w 5
- traceroute -T -p 443 git.dotya.ml
- traceroute -T -p 443 www.github.com
- dig dotya.ml
- echo "end of test"
when:
status:
- failure
---
kind: pipeline
type: docker
name: deploy
platform:
os: linux
arch: amd64
trigger:
branch:
2022-03-22 16:16:33 +01:00
- master
event:
exclude: [pull_request, tag]
environment:
# ref: https://www.docker.com/blog/faster-builds-in-compose-thanks-to-buildkit-support/
COMPOSE_DOCKER_CLI_BUILD: 1
DOCKER_BUILDKIT: 1
node:
r: main
depends_on:
2022-03-22 16:16:33 +01:00
- build
steps:
- name: submodules
pull: always
depends_on: [clone]
image: alpine/git
commands:
- git --version
- git submodule update --init --recursive
- name: pull fedora-hugo
pull: always
depends_on: [clone]
image: immawanderer/fedora-hugo:linux-amd64
commands:
- uname -r
- cat /etc/fedora-release
- name: pull tmaier/docker-compose
pull: always
depends_on: [clone]
image: tmaier/docker-compose:latest
commands:
- uname -r
- cat /etc/os-release
2022-03-22 16:16:33 +01:00
- name: hugo-extended
pull: if-not-exists
depends_on:
- submodules
- pull fedora-hugo
image: immawanderer/fedora-hugo:linux-amd64
2022-03-22 16:16:33 +01:00
commands:
- hugo version
- hugo --gc=true --minify
- name: rm-intermediate
pull: if-not-exists
image: immawanderer/fedora-hugo:linux-amd64
2022-03-22 16:16:33 +01:00
depends_on:
- hugo-extended
commands:
- rm -rf ./public
- name: build
pull: always
image: tmaier/docker-compose:latest
depends_on:
- pull tmaier/docker-compose
2022-03-22 16:16:33 +01:00
- rm-intermediate
volumes:
- name: s
path: /var/run/docker.sock
commands:
- docker-compose build --no-cache
when:
branch: master
status: success
- name: deploy
pull: always
image: tmaier/docker-compose:latest
depends_on:
- build
volumes:
- name: s
path: /var/run/docker.sock
commands:
- docker-compose -p ${DRONE_REPO_NAME} up -d --remove-orphans
when:
branch: master
status: success
2022-03-22 20:07:57 +01:00
# perform basic checks on failure
- name: diagnostics
image: plugins/drone-diagnostics
pull: if-not-exists
commands:
- env
- ls -lah
- ping git.dotya.ml -w 5
- ping www.github.com -w 5
- traceroute -T -p 443 git.dotya.ml
- traceroute -T -p 443 www.github.com
- dig dotya.ml
- echo "end of test"
when:
status:
- failure
volumes:
2022-03-22 16:16:33 +01:00
- name: s
host:
path: /var/run/docker.sock
2021-03-15 11:40:14 +01:00
---
kind: pipeline
name: notifications
platform:
os: linux
arch: amd64
clone:
disable: true
trigger:
branch: master
event: [push, tag, pull_request]
status: [success, failure]
depends_on: [build]
steps:
- name: discord
pull: if-not-exists
image: appleboy/drone-discord:latest
settings:
message: >
{{#success build.status}}
✅ [Build #{{build.number}}]({{build.link}}) of `{{repo.name}}` succeeded.
event: **`{{build.event}}`**
commit [`${DRONE_COMMIT_SHA:0:7}`](https://git.dotya.ml/${DRONE_REPO}/commit/${DRONE_COMMIT_SHA}) by {{commit.author}} on `{{commit.branch}}`
{{else}}
❌ [Build #{{build.number}}]({{build.link}}) of `{{repo.name}}` failed.
event: **`${DRONE_BUILD_EVENT}`**
failed stage(s): **`${DRONE_FAILED_STAGES}`**
commit [`${DRONE_COMMIT_SHA:0:7}`](https://git.dotya.ml/${DRONE_REPO}/commit/${DRONE_COMMIT_SHA}) by {{commit.author}} on `{{commit.branch}}`
```{{commit.message}}```
{{/success}}
webhook_id:
from_secret: discord_webhook_id
webhook_token:
from_secret: discord_webhook_token