Migrate configs to drone 1.0.0 and drop appveyor
This commit is contained in:
404
.drone.jsonnet
Normal file
404
.drone.jsonnet
Normal file
@@ -0,0 +1,404 @@
|
||||
local PipelineTesting = {
|
||||
kind: "pipeline",
|
||||
name: "testing",
|
||||
platform: {
|
||||
os: "linux",
|
||||
arch: "amd64",
|
||||
},
|
||||
steps: [
|
||||
{
|
||||
name: "vet",
|
||||
image: "golang:1.11",
|
||||
pull: "always",
|
||||
environment: {
|
||||
GO111MODULE: "on",
|
||||
},
|
||||
commands: [
|
||||
"go vet ./...",
|
||||
],
|
||||
},
|
||||
{
|
||||
name: "test",
|
||||
image: "golang:1.11",
|
||||
pull: "always",
|
||||
environment: {
|
||||
GO111MODULE: "on",
|
||||
},
|
||||
commands: [
|
||||
"go test -cover ./...",
|
||||
],
|
||||
},
|
||||
],
|
||||
trigger: {
|
||||
branch: [ "master" ],
|
||||
},
|
||||
};
|
||||
|
||||
local PipelineBuild(os="linux", arch="amd64") = {
|
||||
kind: "pipeline",
|
||||
name: os + "-" + arch,
|
||||
platform: {
|
||||
os: os,
|
||||
arch: arch,
|
||||
},
|
||||
steps: [
|
||||
{
|
||||
name: "build-docker",
|
||||
image: "golang:1.11",
|
||||
pull: "always",
|
||||
environment: {
|
||||
CGO_ENABLED: "0",
|
||||
GO111MODULE: "on",
|
||||
},
|
||||
commands: [
|
||||
"go build -v -ldflags \"-X main.build=${DRONE_BUILD_NUMBER}\" -a -tags netgo -o release/" + os + "/" + arch + "/drone-docker ./cmd/drone-docker",
|
||||
],
|
||||
when: {
|
||||
event: [ "push", "pull_request" ],
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "build-docker",
|
||||
image: "golang:1.11",
|
||||
pull: "always",
|
||||
environment: {
|
||||
CGO_ENABLED: "0",
|
||||
GO111MODULE: "on",
|
||||
},
|
||||
commands: [
|
||||
"go build -v -ldflags \"-X main.version=${DRONE_TAG##v} -X main.build=${DRONE_BUILD_NUMBER}\" -a -tags netgo -o release/" + os + "/" + arch + "/drone-docker ./cmd/drone-docker",
|
||||
],
|
||||
when: {
|
||||
event: [ "tag" ],
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "dryrun-docker",
|
||||
image: "plugins/docker:" + os + "-" + arch,
|
||||
pull: "always",
|
||||
settings: {
|
||||
dry_run: true,
|
||||
tags: os + "-" + arch,
|
||||
dockerfile: "docker/docker/Dockerfile." + os + "." + arch,
|
||||
repo: "plugins/docker",
|
||||
username: { "from_secret": "docker_username" },
|
||||
password: { "from_secret": "docker_password" },
|
||||
},
|
||||
when: {
|
||||
event: [ "pull_request" ],
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "publish-docker",
|
||||
image: "plugins/docker:" + os + "-" + arch,
|
||||
pull: "always",
|
||||
settings: {
|
||||
auto_tag: true,
|
||||
auto_tag_suffix: os + "-" + arch,
|
||||
dockerfile: "docker/docker/Dockerfile." + os + "." + arch,
|
||||
repo: "plugins/docker",
|
||||
username: { "from_secret": "docker_username" },
|
||||
password: { "from_secret": "docker_password" },
|
||||
},
|
||||
when: {
|
||||
event: [ "push", "tag" ],
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "build-heroku",
|
||||
image: "golang:1.11",
|
||||
pull: "always",
|
||||
environment: {
|
||||
CGO_ENABLED: "0",
|
||||
GO111MODULE: "on",
|
||||
},
|
||||
commands: [
|
||||
"go build -v -ldflags \"-X main.build=${DRONE_BUILD_NUMBER}\" -a -tags netgo -o release/" + os + "/" + arch + "/drone-heroku ./cmd/drone-heroku",
|
||||
],
|
||||
when: {
|
||||
event: [ "push", "pull_request" ],
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "build-heroku",
|
||||
image: "golang:1.11",
|
||||
pull: "always",
|
||||
environment: {
|
||||
CGO_ENABLED: "0",
|
||||
GO111MODULE: "on",
|
||||
},
|
||||
commands: [
|
||||
"go build -v -ldflags \"-X main.version=${DRONE_TAG##v} -X main.build=${DRONE_BUILD_NUMBER}\" -a -tags netgo -o release/" + os + "/" + arch + "/drone-heroku ./cmd/drone-heroku",
|
||||
],
|
||||
when: {
|
||||
event: [ "tag" ],
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "dryrun-heroku",
|
||||
image: "plugins/docker:" + os + "-" + arch,
|
||||
pull: "always",
|
||||
settings: {
|
||||
dry_run: true,
|
||||
tags: os + "-" + arch,
|
||||
herokufile: "docker/heroku/Dockerfile." + os + "." + arch,
|
||||
repo: "plugins/heroku",
|
||||
username: { "from_secret": "heroku_username" },
|
||||
password: { "from_secret": "heroku_password" },
|
||||
},
|
||||
when: {
|
||||
event: [ "pull_request" ],
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "publish-heroku",
|
||||
image: "plugins/docker:" + os + "-" + arch,
|
||||
pull: "always",
|
||||
settings: {
|
||||
auto_tag: true,
|
||||
auto_tag_suffix: os + "-" + arch,
|
||||
herokufile: "docker/heroku/Dockerfile." + os + "." + arch,
|
||||
repo: "plugins/heroku",
|
||||
username: { "from_secret": "heroku_username" },
|
||||
password: { "from_secret": "heroku_password" },
|
||||
},
|
||||
when: {
|
||||
event: [ "push", "tag" ],
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "build-gcr",
|
||||
image: "golang:1.11",
|
||||
pull: "always",
|
||||
environment: {
|
||||
CGO_ENABLED: "0",
|
||||
GO111MODULE: "on",
|
||||
},
|
||||
commands: [
|
||||
"go build -v -ldflags \"-X main.build=${DRONE_BUILD_NUMBER}\" -a -tags netgo -o release/" + os + "/" + arch + "/drone-gcr ./cmd/drone-gcr",
|
||||
],
|
||||
when: {
|
||||
event: [ "push", "pull_request" ],
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "build-gcr",
|
||||
image: "golang:1.11",
|
||||
pull: "always",
|
||||
environment: {
|
||||
CGO_ENABLED: "0",
|
||||
GO111MODULE: "on",
|
||||
},
|
||||
commands: [
|
||||
"go build -v -ldflags \"-X main.version=${DRONE_TAG##v} -X main.build=${DRONE_BUILD_NUMBER}\" -a -tags netgo -o release/" + os + "/" + arch + "/drone-gcr ./cmd/drone-gcr",
|
||||
],
|
||||
when: {
|
||||
event: [ "tag" ],
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "dryrun-gcr",
|
||||
image: "plugins/docker:" + os + "-" + arch,
|
||||
pull: "always",
|
||||
settings: {
|
||||
dry_run: true,
|
||||
tags: os + "-" + arch,
|
||||
gcrfile: "docker/gcr/Dockerfile." + os + "." + arch,
|
||||
repo: "plugins/gcr",
|
||||
username: { "from_secret": "gcr_username" },
|
||||
password: { "from_secret": "gcr_password" },
|
||||
},
|
||||
when: {
|
||||
event: [ "pull_request" ],
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "publish-gcr",
|
||||
image: "plugins/docker:" + os + "-" + arch,
|
||||
pull: "always",
|
||||
settings: {
|
||||
auto_tag: true,
|
||||
auto_tag_suffix: os + "-" + arch,
|
||||
gcrfile: "docker/gcr/Dockerfile." + os + "." + arch,
|
||||
repo: "plugins/gcr",
|
||||
username: { "from_secret": "gcr_username" },
|
||||
password: { "from_secret": "gcr_password" },
|
||||
},
|
||||
when: {
|
||||
event: [ "push", "tag" ],
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "build-ecr",
|
||||
image: "golang:1.11",
|
||||
pull: "always",
|
||||
environment: {
|
||||
CGO_ENABLED: "0",
|
||||
GO111MODULE: "on",
|
||||
},
|
||||
commands: [
|
||||
"go build -v -ldflags \"-X main.build=${DRONE_BUILD_NUMBER}\" -a -tags netgo -o release/" + os + "/" + arch + "/drone-ecr ./cmd/drone-ecr",
|
||||
],
|
||||
when: {
|
||||
event: [ "push", "pull_request" ],
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "build-ecr",
|
||||
image: "golang:1.11",
|
||||
pull: "always",
|
||||
environment: {
|
||||
CGO_ENABLED: "0",
|
||||
GO111MODULE: "on",
|
||||
},
|
||||
commands: [
|
||||
"go build -v -ldflags \"-X main.version=${DRONE_TAG##v} -X main.build=${DRONE_BUILD_NUMBER}\" -a -tags netgo -o release/" + os + "/" + arch + "/drone-ecr ./cmd/drone-ecr",
|
||||
],
|
||||
when: {
|
||||
event: [ "tag" ],
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "dryrun-ecr",
|
||||
image: "plugins/docker:" + os + "-" + arch,
|
||||
pull: "always",
|
||||
settings: {
|
||||
dry_run: true,
|
||||
tags: os + "-" + arch,
|
||||
dockerfile: "docker/ecr/Dockerfile." + os + "." + arch,
|
||||
repo: "plugins/ecr",
|
||||
username: { "from_secret": "ecr_username" },
|
||||
password: { "from_secret": "ecr_password" },
|
||||
},
|
||||
when: {
|
||||
event: [ "pull_request" ],
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "publish-ecr",
|
||||
image: "plugins/docker:" + os + "-" + arch,
|
||||
pull: "always",
|
||||
settings: {
|
||||
auto_tag: true,
|
||||
auto_tag_suffix: os + "-" + arch,
|
||||
dockerfile: "docker/ecr/Dockerfile." + os + "." + arch,
|
||||
repo: "plugins/ecr",
|
||||
username: { "from_secret": "ecr_username" },
|
||||
password: { "from_secret": "ecr_password" },
|
||||
},
|
||||
when: {
|
||||
event: [ "push", "tag" ],
|
||||
},
|
||||
},
|
||||
],
|
||||
depends_on: [
|
||||
"testing",
|
||||
],
|
||||
trigger: {
|
||||
branch: [ "master" ],
|
||||
},
|
||||
};
|
||||
|
||||
local PipelineNotifications = {
|
||||
kind: "pipeline",
|
||||
name: "notifications",
|
||||
platform: {
|
||||
os: "linux",
|
||||
arch: "amd64",
|
||||
},
|
||||
steps: [
|
||||
{
|
||||
name: "manifest-docker",
|
||||
image: "plugins/manifest:1",
|
||||
pull: "always",
|
||||
settings: {
|
||||
username: { "from_secret": "docker_username" },
|
||||
password: { "from_secret": "docker_password" },
|
||||
spec: "docker/docker/manifest.tmpl",
|
||||
ignore_missing: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "microbadger-docker",
|
||||
image: "plugins/webhook:1",
|
||||
pull: "always",
|
||||
settings: {
|
||||
url: { "from_secret": "microbadger_docker" },
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "manifest-heroku",
|
||||
image: "plugins/manifest:1",
|
||||
pull: "always",
|
||||
settings: {
|
||||
username: { "from_secret": "heroku_username" },
|
||||
password: { "from_secret": "heroku_password" },
|
||||
spec: "docker/heroku/manifest.tmpl",
|
||||
ignore_missing: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "microbadger-heroku",
|
||||
image: "plugins/webhook:1",
|
||||
pull: "always",
|
||||
settings: {
|
||||
url: { "from_secret": "microbadger_heroku" },
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "manifest-gcr",
|
||||
image: "plugins/manifest:1",
|
||||
pull: "always",
|
||||
settings: {
|
||||
username: { "from_secret": "gcr_username" },
|
||||
password: { "from_secret": "gcr_password" },
|
||||
spec: "docker/gcr/manifest.tmpl",
|
||||
ignore_missing: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "microbadger-gcr",
|
||||
image: "plugins/webhook:1",
|
||||
pull: "always",
|
||||
settings: {
|
||||
url: { "from_secret": "microbadger_gcr" },
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "manifest-ecr",
|
||||
image: "plugins/manifest:1",
|
||||
pull: "always",
|
||||
settings: {
|
||||
username: { "from_secret": "ecr_username" },
|
||||
password: { "from_secret": "ecr_password" },
|
||||
spec: "docker/ecr/manifest.tmpl",
|
||||
ignore_missing: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "microbadger-ecr",
|
||||
image: "plugins/webhook:1",
|
||||
pull: "always",
|
||||
settings: {
|
||||
url: { "from_secret": "microbadger_ecr" },
|
||||
},
|
||||
},
|
||||
],
|
||||
depends_on: [
|
||||
"linux-amd64",
|
||||
"linux-arm64",
|
||||
"linux-arm",
|
||||
],
|
||||
trigger: {
|
||||
branch: [ "master" ],
|
||||
event: [ "push", "tag" ],
|
||||
},
|
||||
};
|
||||
|
||||
[
|
||||
PipelineTesting,
|
||||
PipelineBuild("linux", "amd64"),
|
||||
PipelineBuild("linux", "arm64"),
|
||||
PipelineBuild("linux", "arm"),
|
||||
PipelineNotifications,
|
||||
]
|
||||
Reference in New Issue
Block a user