168 lines
3.4 KiB
YAML
168 lines
3.4 KiB
YAML
workspace:
|
|
base: /go/src
|
|
path: github.com/appleboy/gorush
|
|
|
|
clone:
|
|
git:
|
|
image: plugins/git
|
|
depth: 50
|
|
tags: true
|
|
|
|
pipeline:
|
|
deps:
|
|
image: appleboy/golang-testing:1.9.1
|
|
group: golang
|
|
commands:
|
|
- make deps
|
|
- make embedmd
|
|
|
|
lint:
|
|
image: appleboy/golang-testing:1.9.1
|
|
group: golang
|
|
commands:
|
|
- make vet
|
|
- make lint
|
|
|
|
vendor:
|
|
image: appleboy/golang-testing:1.9.1
|
|
group: golang
|
|
commands:
|
|
- make test-vendor
|
|
- make misspell-check
|
|
- make fmt-check
|
|
|
|
build_linux_amd64:
|
|
image: appleboy/golang-testing:1.9.1
|
|
group: golang
|
|
commands:
|
|
- make docker_build
|
|
|
|
build_linux_arm64:
|
|
image: appleboy/golang-testing:1.9.1
|
|
group: golang
|
|
commands:
|
|
- make docker_build_arm64
|
|
|
|
build_linux_arm:
|
|
image: appleboy/golang-testing:1.9.1
|
|
group: golang
|
|
commands:
|
|
- make docker_build_arm
|
|
|
|
coverage:
|
|
image: appleboy/golang-testing:1.9.1
|
|
group: golang
|
|
secrets: [ android_test_token, android_api_key ]
|
|
commands:
|
|
- coverage all
|
|
|
|
codecov:
|
|
image: robertstettner/drone-codecov
|
|
secrets: [ codecov_token ]
|
|
files:
|
|
- .cover/coverage.txt
|
|
when:
|
|
event: [ push, pull_request ]
|
|
|
|
release:
|
|
image: appleboy/golang-testing:1.9.1
|
|
pull: true
|
|
commands:
|
|
- make release
|
|
when:
|
|
event: [ tag ]
|
|
ref: [ refs/tags/* ]
|
|
|
|
publish_linux_amd64:
|
|
image: plugins/docker
|
|
group: publish
|
|
repo: ${DRONE_REPO}
|
|
tags: [ 'latest' ]
|
|
secrets: [ docker_username, docker_password ]
|
|
when:
|
|
event: [ push ]
|
|
branch: [ master ]
|
|
local: false
|
|
|
|
publish_linux_arm:
|
|
image: plugins/docker
|
|
group: publish
|
|
repo: ${DRONE_REPO}
|
|
tags: [ linux-arm ]
|
|
dockerfile: Dockerfile.arm
|
|
secrets: [ docker_username, docker_password ]
|
|
when:
|
|
event: [ push ]
|
|
branch: [ master ]
|
|
local: false
|
|
|
|
publish_linux_arm64:
|
|
image: plugins/docker
|
|
group: publish
|
|
repo: ${DRONE_REPO}
|
|
tags: [ linux-arm64 ]
|
|
dockerfile: Dockerfile.arm64
|
|
secrets: [ docker_username, docker_password ]
|
|
when:
|
|
event: [ push ]
|
|
branch: [ master ]
|
|
local: false
|
|
|
|
publish_linux_amd64:
|
|
image: plugins/docker
|
|
group: tag
|
|
repo: ${DRONE_REPO}
|
|
tags: [ '${DRONE_TAG}' ]
|
|
secrets: [ docker_username, docker_password ]
|
|
group: release
|
|
when:
|
|
event: [ tag ]
|
|
ref: [ refs/tags/* ]
|
|
local: false
|
|
|
|
publish_linux_arm:
|
|
image: plugins/docker
|
|
group: tag
|
|
repo: ${DRONE_REPO}
|
|
tags: [ linux-arm, 'linux-arm-${DRONE_TAG}' ]
|
|
dockerfile: Dockerfile.arm
|
|
secrets: [ docker_username, docker_password ]
|
|
when:
|
|
event: [ tag ]
|
|
ref: [ refs/tags/* ]
|
|
local: false
|
|
|
|
publish_linux_arm64:
|
|
image: plugins/docker
|
|
group: tag
|
|
repo: ${DRONE_REPO}
|
|
tags: [ linux-arm64, 'linux-arm64-${DRONE_TAG}' ]
|
|
dockerfile: Dockerfile.arm64
|
|
secrets: [ docker_username, docker_password ]
|
|
when:
|
|
event: [ tag ]
|
|
ref: [ refs/tags/* ]
|
|
local: false
|
|
|
|
release_tag:
|
|
image: plugins/github-release
|
|
secrets: [ github_release_api_key ]
|
|
group: release
|
|
files:
|
|
- dist/release/*
|
|
when:
|
|
event: [ tag ]
|
|
ref: [ refs/tags/* ]
|
|
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
|