minitor-go/.drone.yml

137 lines
2.6 KiB
YAML
Raw Normal View History

2019-11-16 01:30:29 +00:00
---
2019-10-07 21:59:39 +00:00
kind: pipeline
name: test
steps:
- name: test
2021-01-08 23:13:34 +00:00
image: golang:1.15
2020-07-07 18:37:55 +00:00
environment:
VERSION: ${DRONE_TAG:-${DRONE_COMMIT}}
2019-10-07 21:59:39 +00:00
commands:
- make test
2019-11-16 01:30:29 +00:00
- name: check
2021-01-08 22:21:02 +00:00
image: iamthefij/drone-pre-commit:personal
2019-11-16 01:30:29 +00:00
---
kind: pipeline
name: publish
depends_on:
- test
trigger:
event:
- push
- tag
refs:
- refs/heads/master
- refs/tags/v*
steps:
2020-01-10 21:58:17 +00:00
- name: build all binaries
2021-01-08 23:13:34 +00:00
image: golang:1.15
2020-07-07 18:37:55 +00:00
environment:
VERSION: ${DRONE_TAG:-${DRONE_COMMIT}}
2020-01-10 21:58:17 +00:00
commands:
2021-01-08 22:21:02 +00:00
- make all
- name: compress binaries for release
image: ubuntu
commands:
- find ./dist -type f -executable -execdir tar -czvf {}.tar.gz {} \;
when:
event: tag
- name: upload gitea release
image: plugins/gitea-release
settings:
title: ${DRONE_TAG}
files: dist/*.tar.gz
checksum:
- md5
- sha1
- sha256
- sha512
base_url:
from_secret: gitea_base_url
api_key:
from_secret: gitea_token
when:
event: tag
2020-01-10 21:58:17 +00:00
- name: push image - arm
image: plugins/docker
settings:
repo: iamthefij/minitor-go
auto_tag: true
auto_tag_suffix: linux-arm
username:
from_secret: docker_username
password:
from_secret: docker_password
build_args:
- ARCH=arm
- REPO=arm32v7
2019-11-16 01:30:29 +00:00
2020-01-10 21:58:17 +00:00
- name: push image - arm64
2019-11-16 01:30:29 +00:00
image: plugins/docker
settings:
repo: iamthefij/minitor-go
auto_tag: true
2020-01-10 21:58:17 +00:00
auto_tag_suffix: linux-arm64
username:
from_secret: docker_username
password:
from_secret: docker_password
build_args:
- ARCH=arm64
- REPO=arm64v8
- name: push image - amd64
image: plugins/docker
settings:
repo: iamthefij/minitor-go
auto_tag: true
auto_tag_suffix: linux-amd64
username:
from_secret: docker_username
password:
from_secret: docker_password
- name: publish manifest
image: plugins/manifest
settings:
spec: manifest.tmpl
auto_tag: true
ignore_missing: true
2019-11-16 01:30:29 +00:00
username:
from_secret: docker_username
password:
from_secret: docker_password
2020-01-10 22:25:02 +00:00
2021-01-08 22:21:02 +00:00
---
kind: pipeline
name: notify
depends_on:
- test
- publish
trigger:
status:
- failure
steps:
2020-01-10 22:25:02 +00:00
- name: notify
image: drillster/drone-email
settings:
host:
2021-01-08 22:21:02 +00:00
from_secret: SMTP_HOST # pragma: whitelist secret
2020-01-10 22:25:02 +00:00
username:
2021-01-08 22:21:02 +00:00
from_secret: SMTP_USER # pragma: whitelist secret
2020-01-10 22:25:02 +00:00
password:
2021-01-08 22:21:02 +00:00
from_secret: SMTP_PASS # pragma: whitelist secret
2020-01-10 22:25:02 +00:00
from: drone@iamthefij.com