mirror of
https://github.com/thegeeklab/drone-matrix.git
synced 2024-11-24 11:10:40 +00:00
149 lines
3.7 KiB
YAML
149 lines
3.7 KiB
YAML
workspace:
|
|
base: /go
|
|
path: src/github.com/drone-plugins/drone-matrix
|
|
|
|
pipeline:
|
|
deps:
|
|
image: golang:1.10
|
|
pull: true
|
|
commands:
|
|
- go get -u github.com/golang/dep/cmd/dep
|
|
- dep ensure
|
|
|
|
test:
|
|
image: golang:1.10
|
|
pull: true
|
|
commands:
|
|
- go vet ./...
|
|
- go test -cover ./...
|
|
|
|
build_linux_amd64:
|
|
image: golang:1.10
|
|
pull: true
|
|
group: build
|
|
environment:
|
|
- GOOS=linux
|
|
- GOARCH=amd64
|
|
- CGO_ENABLED=0
|
|
commands:
|
|
- |
|
|
if test "${DRONE_TAG}" = ""; then
|
|
go build -v -ldflags "-X main.build=${DRONE_BUILD_NUMBER}" -a -o release/linux/amd64/drone-matrix
|
|
else
|
|
go build -v -ldflags "-X main.version=${DRONE_TAG##v} -X main.build=${DRONE_BUILD_NUMBER}" -a -o release/linux/amd64/drone-matrix
|
|
fi
|
|
|
|
build_linux_i386:
|
|
image: golang:1.10
|
|
pull: true
|
|
group: build
|
|
environment:
|
|
- GOOS=linux
|
|
- GOARCH=386
|
|
- CGO_ENABLED=0
|
|
commands:
|
|
- |
|
|
if test "${DRONE_TAG}" = ""; then
|
|
go build -v -ldflags "-X main.build=${DRONE_BUILD_NUMBER}" -a -o release/linux/i386/drone-matrix
|
|
else
|
|
go build -v -ldflags "-X main.version=${DRONE_TAG##v} -X main.build=${DRONE_BUILD_NUMBER}" -a -o release/linux/i386/drone-matrix
|
|
fi
|
|
|
|
build_linux_arm64:
|
|
image: golang:1.10
|
|
pull: true
|
|
group: build
|
|
environment:
|
|
- GOOS=linux
|
|
- GOARCH=arm64
|
|
- CGO_ENABLED=0
|
|
commands:
|
|
- |
|
|
if test "${DRONE_TAG}" = ""; then
|
|
go build -v -ldflags "-X main.build=${DRONE_BUILD_NUMBER}" -a -o release/linux/arm64/drone-matrix
|
|
else
|
|
go build -v -ldflags "-X main.version=${DRONE_TAG##v} -X main.build=${DRONE_BUILD_NUMBER}" -a -o release/linux/arm64/drone-matrix
|
|
fi
|
|
|
|
build_linux_arm:
|
|
image: golang:1.10
|
|
pull: true
|
|
group: build
|
|
environment:
|
|
- GOOS=linux
|
|
- GOARCH=arm
|
|
- CGO_ENABLED=0
|
|
- GOARM=7
|
|
commands:
|
|
- |
|
|
if test "${DRONE_TAG}" = ""; then
|
|
go build -v -ldflags "-X main.build=${DRONE_BUILD_NUMBER}" -a -o release/linux/arm/drone-matrix
|
|
else
|
|
go build -v -ldflags "-X main.version=${DRONE_TAG##v} -X main.build=${DRONE_BUILD_NUMBER}" -a -o release/linux/arm/drone-matrix
|
|
fi
|
|
|
|
publish_linux_amd64:
|
|
image: plugins/docker:17.12
|
|
pull: true
|
|
secrets: [ docker_username, docker_password ]
|
|
group: docker
|
|
repo: plugins/matrix
|
|
auto_tag: true
|
|
auto_tag_suffix: linux-amd64
|
|
dockerfile: Dockerfile
|
|
when:
|
|
event: [ push, tag ]
|
|
|
|
publish_linux_i386:
|
|
image: plugins/docker:17.12
|
|
pull: true
|
|
secrets: [ docker_username, docker_password ]
|
|
group: docker
|
|
repo: plugins/matrix
|
|
auto_tag: true
|
|
auto_tag_suffix: linux-i386
|
|
dockerfile: Dockerfile.i386
|
|
when:
|
|
event: [ push, tag ]
|
|
|
|
publish_linux_arm64:
|
|
image: plugins/docker:17.12
|
|
pull: true
|
|
secrets: [ docker_username, docker_password ]
|
|
group: docker
|
|
repo: plugins/matrix
|
|
auto_tag: true
|
|
auto_tag_suffix: linux-arm64
|
|
dockerfile: Dockerfile.arm64
|
|
when:
|
|
event: [ push, tag ]
|
|
|
|
publish_linux_arm:
|
|
image: plugins/docker:17.12
|
|
pull: true
|
|
secrets: [ docker_username, docker_password ]
|
|
group: docker
|
|
repo: plugins/matrix
|
|
auto_tag: true
|
|
auto_tag_suffix: linux-arm
|
|
dockerfile: Dockerfile.arm
|
|
when:
|
|
event: [ push, tag ]
|
|
|
|
manifests:
|
|
image: plugins/manifest:1
|
|
pull: true
|
|
secrets: [ docker_username, docker_password ]
|
|
spec: manifest.tmpl
|
|
auto_tag: true
|
|
ignore_missing: true
|
|
when:
|
|
event: [ push, tag ]
|
|
|
|
microbadger:
|
|
image: plugins/webhook:1
|
|
pull: true
|
|
secrets: [ webhook_url ]
|
|
when:
|
|
status: [ success ]
|