gorush/.drone.yml

180 lines
3.3 KiB
YAML

workspace:
base: /go/src
path: github.com/appleboy/gorush
clone:
git:
image: plugins/git
depth: 50
tags: true
pipeline:
deps:
image: golang:1.10
pull: true
group: golang
commands:
- make deps
- make embedmd
lint:
image: golang:1.10
pull: true
group: golang
commands:
- make vet
- make lint
vendor:
image: golang:1.10
pull: true
group: golang
commands:
- make test-vendor
- make misspell-check
- make fmt-check
build_linux_amd64:
image: golang:1.10
pull: true
group: golang
commands:
- make build_linux_amd64
build_linux_i386:
image: golang:1.10
pull: true
group: golang
commands:
- make build_linux_i386
build_linux_arm64:
image: golang:1.10
pull: true
group: golang
commands:
- make build_linux_arm64
build_linux_arm:
image: golang:1.10
pull: true
group: golang
commands:
- make build_linux_arm
coverage:
image: golang:1.10.1
pull: true
group: golang
secrets: [ android_test_token, android_api_key ]
commands:
- make unit-test-coverage
generate-coverage:
image: golang:1.10
pull: true
commands:
- make coverage
when:
event: [ push, pull_request ]
codecov:
image: robertstettner/drone-codecov
secrets: [ codecov_token ]
files:
- coverage.all
when:
event: [ push, pull_request ]
release:
image: golang:1.10
pull: true
commands:
- make release
when:
event: [ tag ]
publish_linux_amd64:
image: plugins/docker
group: release
pull: true
secrets: [ docker_username, docker_password ]
default_tags: true
repo: ${DRONE_REPO}
when:
event: [ push, tag ]
local: false
publish_linux_alpine:
image: plugins/docker
group: release
pull: true
dockerfile: Dockerfile.alpine
secrets: [ docker_username, docker_password ]
default_tags: true
default_suffix: alpine
repo: ${DRONE_REPO}
when:
event: [ push, tag ]
local: false
publish_linux_i386:
image: plugins/docker
group: release
pull: true
dockerfile: Dockerfile.i386
secrets: [ docker_username, docker_password ]
default_tags: true
default_suffix: i386
repo: ${DRONE_REPO}
when:
event: [ push, tag ]
local: false
publish_linux_arm:
image: plugins/docker
group: release
pull: true
dockerfile: Dockerfile.arm
secrets: [ docker_username, docker_password ]
default_tags: true
default_suffix: arm
repo: ${DRONE_REPO}
when:
event: [ push, tag ]
local: false
publish_linux_arm64:
image: plugins/docker
group: release
pull: true
dockerfile: Dockerfile.arm64
secrets: [ docker_username, docker_password ]
default_tags: true
default_suffix: arm64
repo: ${DRONE_REPO}
when:
event: [ push, tag ]
local: false
release_tag:
image: plugins/github-release
secrets: [ github_release_api_key ]
group: release
files:
- dist/release/*
when:
event: [ tag ]
local: false
discord:
image: appleboy/drone-discord
pull: true
secrets: [ discord_webhook_id, discord_webhook_token ]
when:
status: [ success, failure ]
services:
redis:
image: redis:alpine