112 lines
2.3 KiB
YAML
112 lines
2.3 KiB
YAML
---
|
|
kind: pipeline
|
|
name: test
|
|
|
|
steps:
|
|
- name: test
|
|
image: golang:1.15
|
|
commands:
|
|
- make test
|
|
|
|
- name: check
|
|
image: python:3
|
|
commands:
|
|
- pip install docker-compose pre-commit
|
|
- wget -L -O /usr/bin/hadolint https://github.com/hadolint/hadolint/releases/download/v1.18.0/hadolint-Linux-x86_64
|
|
- chmod +x /usr/bin/hadolint
|
|
- make check
|
|
|
|
# - name: itest
|
|
# image: docker/compose:alpine-1.26.2
|
|
# environment:
|
|
# VERSION: ${DRONE_TAG:-${DRONE_COMMIT}}
|
|
# commands:
|
|
# - apk add make bash
|
|
# - make itest
|
|
|
|
- name: notify
|
|
image: drillster/drone-email
|
|
settings:
|
|
host:
|
|
from_secret: SMTP_HOST # pragma: whitelist secret
|
|
username:
|
|
from_secret: SMTP_USER # pragma: whitelist secret
|
|
password:
|
|
from_secret: SMTP_PASS # pragma: whitelist secret
|
|
from: drone@iamthefij.com
|
|
when:
|
|
status: [changed, failure]
|
|
|
|
---
|
|
kind: pipeline
|
|
name: publish
|
|
|
|
depends_on:
|
|
- test
|
|
|
|
trigger:
|
|
event:
|
|
- push
|
|
- tag
|
|
refs:
|
|
- refs/heads/master
|
|
- refs/tags/v*
|
|
|
|
steps:
|
|
- name: build
|
|
image: golang:1.12
|
|
environment:
|
|
VERSION: ${DRONE_TAG:-${DRONE_COMMIT}}
|
|
commands:
|
|
- make build-linux-static
|
|
|
|
- name: push image - arm
|
|
image: plugins/docker
|
|
settings:
|
|
repo: iamthefij/dockron
|
|
auto_tag: true
|
|
auto_tag_suffix: linux-arm
|
|
username:
|
|
from_secret: docker_username
|
|
password:
|
|
from_secret: docker_password
|
|
build_args:
|
|
- ARCH=arm
|
|
- REPO=arm32v7
|
|
|
|
- name: push image - arm64
|
|
image: plugins/docker
|
|
settings:
|
|
repo: iamthefij/dockron
|
|
auto_tag: true
|
|
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/dockron
|
|
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
|
|
username:
|
|
from_secret: docker_username
|
|
password:
|
|
from_secret: docker_password
|