mirror of
https://github.com/josmo/drone-rancher.git
synced 2026-06-04 18:24:22 +08:00
Getting Rancher plugin to conform to the current drone-plugins conventions
This commit is contained in:
+79
-18
@@ -2,32 +2,93 @@ workspace:
|
||||
base: /go
|
||||
path: src/github.com/josmo/drone-rancher
|
||||
pipeline:
|
||||
build:
|
||||
image: golang:1.6
|
||||
environment:
|
||||
- CGO_ENABLED=0
|
||||
test:
|
||||
image: golang:1.9
|
||||
commands:
|
||||
- go vet
|
||||
- go test -cover -coverprofile=coverage.out
|
||||
- go build -ldflags "-s -w -X main.build=$DRONE_BUILD_NUMBER" -a -tags netgo
|
||||
|
||||
publish:
|
||||
build_linux_amd64:
|
||||
image: golang:1.9
|
||||
group: build
|
||||
environment:
|
||||
- GOOS=linux
|
||||
- GOARCH=amd64
|
||||
- CGO_ENABLED=0
|
||||
commands:
|
||||
- go build -v -ldflags "-X main.build=${DRONE_BUILD_NUMBER}" -a -o release/linux/amd64/drone-rancher
|
||||
|
||||
build_linux_arm64:
|
||||
image: golang:1.9
|
||||
group: build
|
||||
environment:
|
||||
- GOOS=linux
|
||||
- GOARCH=arm64
|
||||
- CGO_ENABLED=0
|
||||
commands:
|
||||
- go build -v -ldflags "-X main.build=${DRONE_BUILD_NUMBER}" -a -o release/linux/arm64/drone-rancher
|
||||
|
||||
build_linux_arm:
|
||||
image: golang:1.9
|
||||
group: build
|
||||
environment:
|
||||
- GOOS=linux
|
||||
- GOARCH=arm
|
||||
- CGO_ENABLED=0
|
||||
- GOARM=7
|
||||
commands:
|
||||
- go build -v -ldflags "-X main.build=${DRONE_BUILD_NUMBER}" -a -o release/linux/arm/drone-rancher
|
||||
|
||||
# build_windows_amd64:
|
||||
# image: golang:1.9-nanoserver
|
||||
# group: build
|
||||
# environment:
|
||||
# - GOOS=windows
|
||||
# - GOARCH=amd64
|
||||
# - CGO_ENABLED=0
|
||||
# commands:
|
||||
# - go build -v -ldflags "-X main.build=${DRONE_BUILD_NUMBER}" -a -o release/windows/amd64/drone-webhook
|
||||
|
||||
publish_linux_amd64:
|
||||
image: plugins/docker
|
||||
username: josmo
|
||||
secrets: [ docker_password ]
|
||||
repo: peloton/drone-rancher
|
||||
tag:
|
||||
- ${DRONE_BUILD_NUMBER}
|
||||
- latest
|
||||
tags: [ latest, 1.0.0, 1.0, 1 ]
|
||||
secrets: [ docker_password ]
|
||||
dockerfile: Dockerfile
|
||||
when:
|
||||
branch: master
|
||||
event: push
|
||||
|
||||
plugin:
|
||||
name: Rancher
|
||||
desc: Deploy or update a project on Rancher
|
||||
type: deploy
|
||||
image: peloton/rancher
|
||||
labels:
|
||||
- rancher
|
||||
- docker
|
||||
publish_linux_arm64:
|
||||
image: plugins/docker
|
||||
username: josmo
|
||||
repo: peloton/drone-rancher
|
||||
tags: [ linux-arm64 ]
|
||||
secrets: [ docker_password ]
|
||||
dockerfile: Dockerfile.arm64
|
||||
when:
|
||||
branch: master
|
||||
event: push
|
||||
|
||||
publish_linux_arm:
|
||||
image: plugins/docker
|
||||
username: josmo
|
||||
repo: peloton/drone-rancher
|
||||
tags: [ linux-arm ]
|
||||
secrets: [ docker_password ]
|
||||
dockerfile: Dockerfile.arm
|
||||
when:
|
||||
branch: master
|
||||
event: push
|
||||
|
||||
# publish_windows_amd64:
|
||||
# image: plugins/docker
|
||||
# username: josmo
|
||||
# repo: peloton/drone-rancher
|
||||
# tags: [ windows-amd64 ]
|
||||
# secrets: [ docker_password ]
|
||||
# dockerfile: Dockerfile.windows
|
||||
# when:
|
||||
# branch: master
|
||||
# event: push
|
||||
|
||||
+14
-9
@@ -1,11 +1,16 @@
|
||||
# Docker image for the Drone build runner
|
||||
#
|
||||
# CGO_ENABLED=0 go build -a -tags netgo
|
||||
# docker build --rm=true -t plugins/drone-rancher .
|
||||
FROM alpine:3.6 as alpine
|
||||
RUN apk add -U --no-cache ca-certificates
|
||||
|
||||
FROM gliderlabs/alpine:3.2
|
||||
RUN apk add --update \
|
||||
ca-certificates
|
||||
ADD drone-rancher /bin/
|
||||
FROM scratch
|
||||
|
||||
ENV GODEBUG=netdns=go
|
||||
|
||||
COPY --from=alpine /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/
|
||||
|
||||
LABEL org.label-schema.version=latest
|
||||
LABEL org.label-schema.vcs-url="https://github.com/josmo/drone-rancher.git"
|
||||
LABEL org.label-schema.name="Drone Rancher"
|
||||
LABEL org.label-schema.vendor="Josmo"
|
||||
|
||||
ADD release/linux/amd64/drone-rancher /bin/
|
||||
ENTRYPOINT ["/bin/drone-rancher"]
|
||||
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
FROM alpine:3.6 as alpine
|
||||
RUN apk add -U --no-cache ca-certificates
|
||||
|
||||
FROM scratch
|
||||
|
||||
ENV GODEBUG=netdns=go
|
||||
|
||||
COPY --from=alpine /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/
|
||||
|
||||
LABEL org.label-schema.version=latest
|
||||
LABEL org.label-schema.vcs-url="https://github.com/josmo/drone-rancher.git"
|
||||
LABEL org.label-schema.name="Drone Rancher"
|
||||
LABEL org.label-schema.vendor="Josmo"
|
||||
LABEL org.label-schema.schema-version="1.0"
|
||||
|
||||
ADD release/linux/arm/drone-rancher /bin/
|
||||
ENTRYPOINT ["/bin/drone-rancher"]
|
||||
@@ -0,0 +1,20 @@
|
||||
|
||||
FROM alpine:3.6 as alpine
|
||||
RUN apk add -U --no-cache ca-certificates mailcap
|
||||
|
||||
FROM scratch
|
||||
MAINTAINER Drone.IO Community <drone-dev@googlegroups.com>
|
||||
|
||||
ENV GODEBUG=netdns=go
|
||||
|
||||
COPY --from=alpine /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/
|
||||
COPY --from=alpine /etc/mime.types /etc/
|
||||
|
||||
LABEL org.label-schema.version=latest
|
||||
LABEL org.label-schema.vcs-url="https://github.com/josmo/drone-rancher.git"
|
||||
LABEL org.label-schema.name="Drone Rancher"
|
||||
LABEL org.label-schema.vendor="Josmo"
|
||||
LABEL org.label-schema.schema-version="1.0"
|
||||
|
||||
ADD release/linux/arm64/drone-rancher /bin/
|
||||
ENTRYPOINT ["/bin/drone-rancher"]
|
||||
@@ -0,0 +1,13 @@
|
||||
FROM microsoft/nanoserver:latest
|
||||
MAINTAINER Drone.IO Community <drone-dev@googlegroups.com>
|
||||
|
||||
ENV GODEBUG=netdns=go
|
||||
|
||||
LABEL org.label-schema.version=latest
|
||||
LABEL org.label-schema.vcs-url="https://github.com/josmo/drone-rancher.git"
|
||||
LABEL org.label-schema.name="Drone Rancher"
|
||||
LABEL org.label-schema.vendor="Josmo"
|
||||
LABEL org.label-schema.schema-version="1.0"
|
||||
|
||||
ADD release/windows/amd64/drone-rancher /bin/
|
||||
ENTRYPOINT [ "/bin/drone-rancher" ]
|
||||
@@ -2,6 +2,7 @@ package main
|
||||
|
||||
import (
|
||||
"github.com/codegangsta/cli"
|
||||
"fmt"
|
||||
"log"
|
||||
"os"
|
||||
)
|
||||
@@ -19,14 +20,15 @@ type Rancher struct {
|
||||
BatchSize int64 `json:"batch_size"`
|
||||
}
|
||||
|
||||
var version string // build number set at compile-time
|
||||
var build string // build number set at compile-time
|
||||
|
||||
func main() {
|
||||
app := cli.NewApp()
|
||||
app.Name = "rancher publish"
|
||||
app.Usage = "rancher publish"
|
||||
app.Action = run
|
||||
app.Version = version
|
||||
app.Version = fmt.Sprintf("1.0.0+%s", build)
|
||||
|
||||
app.Flags = []cli.Flag{
|
||||
|
||||
cli.StringFlag{
|
||||
|
||||
Reference in New Issue
Block a user