mirror of
https://github.com/drone-plugins/drone-docker.git
synced 2026-06-16 14:50:37 +08:00
Compare commits
37 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 1f0cfcc3ef | |||
| 17639d6cbf | |||
| 4c09b80365 | |||
| 39da697e1e | |||
| 5be3f2c282 | |||
| 0d7f74aa65 | |||
| 2184682042 | |||
| 2124bb2c8d | |||
| aa2a947782 | |||
| 6e2e66de0e | |||
| 1672823733 | |||
| 261afaa9ed | |||
| 7b060dd935 | |||
| 3336758708 | |||
| 98722a6680 | |||
| 8d8851bf98 | |||
| 65e411842e | |||
| d880d528ec | |||
| 43c45fed4d | |||
| acd38d572c | |||
| ac4f39236e | |||
| 90fab79dc3 | |||
| e8be4981da | |||
| 1bdd82a4a7 | |||
| 3c2802ea17 | |||
| f65d51bcc8 | |||
| e7fc4bb483 | |||
| b47dd5d7bc | |||
| 14e80ddb03 | |||
| db96c9a78b | |||
| b5b34938c5 | |||
| ebce953fc4 | |||
| 13f2944b04 | |||
| d49219b56b | |||
| 0e57ad9715 | |||
| f69f3d2b74 | |||
| babff9c7ad |
@@ -21,6 +21,15 @@ local pipeline = import 'pipeline.libsonnet';
|
|||||||
'linux-arm',
|
'linux-arm',
|
||||||
]),
|
]),
|
||||||
|
|
||||||
|
pipeline.build('acr', 'linux', 'amd64'),
|
||||||
|
pipeline.build('acr', 'linux', 'arm64'),
|
||||||
|
pipeline.build('acr', 'linux', 'arm'),
|
||||||
|
pipeline.notifications('acr', depends_on=[
|
||||||
|
'linux-amd64',
|
||||||
|
'linux-arm64',
|
||||||
|
'linux-arm',
|
||||||
|
]),
|
||||||
|
|
||||||
pipeline.build('ecr', 'linux', 'amd64'),
|
pipeline.build('ecr', 'linux', 'amd64'),
|
||||||
pipeline.build('ecr', 'linux', 'arm64'),
|
pipeline.build('ecr', 'linux', 'arm64'),
|
||||||
pipeline.build('ecr', 'linux', 'arm'),
|
pipeline.build('ecr', 'linux', 'arm'),
|
||||||
|
|||||||
@@ -1,26 +0,0 @@
|
|||||||
local pipeline = import 'pipeline.libsonnet';
|
|
||||||
|
|
||||||
[
|
|
||||||
pipeline.test('windows', 'amd64', '1803'),
|
|
||||||
|
|
||||||
pipeline.build('docker', 'windows', 'amd64', '1803'),
|
|
||||||
pipeline.build('docker', 'windows', 'amd64', '1809'),
|
|
||||||
pipeline.notifications('docker', 'windows', 'amd64', '1809', [
|
|
||||||
'windows-1803',
|
|
||||||
'windows-1809'
|
|
||||||
]),
|
|
||||||
|
|
||||||
pipeline.build('gcr', 'windows', 'amd64', '1803'),
|
|
||||||
pipeline.build('gcr', 'windows', 'amd64', '1809'),
|
|
||||||
pipeline.notifications('gcr', 'windows', 'amd64', '1809', [
|
|
||||||
'windows-1803',
|
|
||||||
'windows-1809'
|
|
||||||
]),
|
|
||||||
|
|
||||||
pipeline.build('ecr', 'windows', 'amd64', '1803'),
|
|
||||||
pipeline.build('ecr', 'windows', 'amd64', '1809'),
|
|
||||||
pipeline.notifications('ecr', 'windows', 'amd64', '1809', [
|
|
||||||
'windows-1803',
|
|
||||||
'windows-1809'
|
|
||||||
]),
|
|
||||||
]
|
|
||||||
@@ -1,706 +0,0 @@
|
|||||||
---
|
|
||||||
kind: pipeline
|
|
||||||
name: testing
|
|
||||||
|
|
||||||
platform:
|
|
||||||
os: windows
|
|
||||||
arch: amd64
|
|
||||||
version: 1803
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: vet
|
|
||||||
pull: always
|
|
||||||
image: golang:1.11-windowsservercore-1803
|
|
||||||
commands:
|
|
||||||
- go vet ./...
|
|
||||||
environment:
|
|
||||||
GO111MODULE: on
|
|
||||||
volumes:
|
|
||||||
- name: gopath
|
|
||||||
path: C:\\gopath
|
|
||||||
|
|
||||||
- name: test
|
|
||||||
pull: always
|
|
||||||
image: golang:1.11-windowsservercore-1803
|
|
||||||
commands:
|
|
||||||
- go test -cover ./...
|
|
||||||
environment:
|
|
||||||
GO111MODULE: on
|
|
||||||
volumes:
|
|
||||||
- name: gopath
|
|
||||||
path: C:\\gopath
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
- name: gopath
|
|
||||||
temp: {}
|
|
||||||
|
|
||||||
trigger:
|
|
||||||
ref:
|
|
||||||
- refs/heads/master
|
|
||||||
- "refs/tags/**"
|
|
||||||
- "refs/pull/**"
|
|
||||||
|
|
||||||
---
|
|
||||||
kind: pipeline
|
|
||||||
name: windows-1803-docker
|
|
||||||
|
|
||||||
platform:
|
|
||||||
os: windows
|
|
||||||
arch: amd64
|
|
||||||
version: 1803
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: build-push
|
|
||||||
pull: always
|
|
||||||
image: golang:1.11-windowsservercore-1803
|
|
||||||
commands:
|
|
||||||
- "go build -v -ldflags \"-X main.version=${DRONE_COMMIT_SHA:0:8}\" -a -tags netgo -o release/windows/amd64/drone-docker.exe ./cmd/drone-docker"
|
|
||||||
environment:
|
|
||||||
CGO_ENABLED: 0
|
|
||||||
GO111MODULE: on
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
exclude:
|
|
||||||
- tag
|
|
||||||
|
|
||||||
- name: build-tag
|
|
||||||
pull: always
|
|
||||||
image: golang:1.11-windowsservercore-1803
|
|
||||||
commands:
|
|
||||||
- "go build -v -ldflags \"-X main.version=${DRONE_TAG##v}\" -a -tags netgo -o release/windows/amd64/drone-docker.exe ./cmd/drone-docker"
|
|
||||||
environment:
|
|
||||||
CGO_ENABLED: 0
|
|
||||||
GO111MODULE: on
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
- tag
|
|
||||||
|
|
||||||
- name: executable
|
|
||||||
pull: always
|
|
||||||
image: golang:1.11-windowsservercore-1803
|
|
||||||
commands:
|
|
||||||
- ./release/windows/amd64/drone-docker.exe --help
|
|
||||||
|
|
||||||
- name: dryrun
|
|
||||||
pull: always
|
|
||||||
image: plugins/docker:windows-1803
|
|
||||||
settings:
|
|
||||||
daemon_off: true
|
|
||||||
dockerfile: docker/docker/Dockerfile.windows.1803
|
|
||||||
dry_run: true
|
|
||||||
password:
|
|
||||||
from_secret: docker_password
|
|
||||||
repo: plugins/docker
|
|
||||||
tags: windows-1803
|
|
||||||
username:
|
|
||||||
from_secret: docker_username
|
|
||||||
volumes:
|
|
||||||
- name: docker_pipe
|
|
||||||
path: \\\\.\\pipe\\docker_engine
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
- pull_request
|
|
||||||
|
|
||||||
- name: publish
|
|
||||||
pull: always
|
|
||||||
image: plugins/docker:windows-1803
|
|
||||||
settings:
|
|
||||||
auto_tag: true
|
|
||||||
auto_tag_suffix: windows-1803
|
|
||||||
daemon_off: true
|
|
||||||
dockerfile: docker/docker/Dockerfile.windows.1803
|
|
||||||
password:
|
|
||||||
from_secret: docker_password
|
|
||||||
repo: plugins/docker
|
|
||||||
username:
|
|
||||||
from_secret: docker_username
|
|
||||||
volumes:
|
|
||||||
- name: docker_pipe
|
|
||||||
path: \\\\.\\pipe\\docker_engine
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
exclude:
|
|
||||||
- pull_request
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
- name: docker_pipe
|
|
||||||
host:
|
|
||||||
path: \\\\.\\pipe\\docker_engine
|
|
||||||
|
|
||||||
trigger:
|
|
||||||
ref:
|
|
||||||
- refs/heads/master
|
|
||||||
- "refs/tags/**"
|
|
||||||
- "refs/pull/**"
|
|
||||||
|
|
||||||
depends_on:
|
|
||||||
- testing
|
|
||||||
|
|
||||||
---
|
|
||||||
kind: pipeline
|
|
||||||
name: windows-1809-docker
|
|
||||||
|
|
||||||
platform:
|
|
||||||
os: windows
|
|
||||||
arch: amd64
|
|
||||||
version: 1809
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: build-push
|
|
||||||
pull: always
|
|
||||||
image: golang:1.11-windowsservercore-1809
|
|
||||||
commands:
|
|
||||||
- "go build -v -ldflags \"-X main.version=${DRONE_COMMIT_SHA:0:8}\" -a -tags netgo -o release/windows/amd64/drone-docker.exe ./cmd/drone-docker"
|
|
||||||
environment:
|
|
||||||
CGO_ENABLED: 0
|
|
||||||
GO111MODULE: on
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
exclude:
|
|
||||||
- tag
|
|
||||||
|
|
||||||
- name: build-tag
|
|
||||||
pull: always
|
|
||||||
image: golang:1.11-windowsservercore-1809
|
|
||||||
commands:
|
|
||||||
- "go build -v -ldflags \"-X main.version=${DRONE_TAG##v}\" -a -tags netgo -o release/windows/amd64/drone-docker.exe ./cmd/drone-docker"
|
|
||||||
environment:
|
|
||||||
CGO_ENABLED: 0
|
|
||||||
GO111MODULE: on
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
- tag
|
|
||||||
|
|
||||||
- name: executable
|
|
||||||
pull: always
|
|
||||||
image: golang:1.11-windowsservercore-1809
|
|
||||||
commands:
|
|
||||||
- ./release/windows/amd64/drone-docker.exe --help
|
|
||||||
|
|
||||||
- name: dryrun
|
|
||||||
pull: always
|
|
||||||
image: plugins/docker:windows-1809
|
|
||||||
settings:
|
|
||||||
daemon_off: true
|
|
||||||
dockerfile: docker/docker/Dockerfile.windows.1809
|
|
||||||
dry_run: true
|
|
||||||
password:
|
|
||||||
from_secret: docker_password
|
|
||||||
repo: plugins/docker
|
|
||||||
tags: windows-1809
|
|
||||||
username:
|
|
||||||
from_secret: docker_username
|
|
||||||
volumes:
|
|
||||||
- name: docker_pipe
|
|
||||||
path: \\\\.\\pipe\\docker_engine
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
- pull_request
|
|
||||||
|
|
||||||
- name: publish
|
|
||||||
pull: always
|
|
||||||
image: plugins/docker:windows-1809
|
|
||||||
settings:
|
|
||||||
auto_tag: true
|
|
||||||
auto_tag_suffix: windows-1809
|
|
||||||
daemon_off: true
|
|
||||||
dockerfile: docker/docker/Dockerfile.windows.1809
|
|
||||||
password:
|
|
||||||
from_secret: docker_password
|
|
||||||
repo: plugins/docker
|
|
||||||
username:
|
|
||||||
from_secret: docker_username
|
|
||||||
volumes:
|
|
||||||
- name: docker_pipe
|
|
||||||
path: \\\\.\\pipe\\docker_engine
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
exclude:
|
|
||||||
- pull_request
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
- name: docker_pipe
|
|
||||||
host:
|
|
||||||
path: \\\\.\\pipe\\docker_engine
|
|
||||||
|
|
||||||
trigger:
|
|
||||||
ref:
|
|
||||||
- refs/heads/master
|
|
||||||
- "refs/tags/**"
|
|
||||||
- "refs/pull/**"
|
|
||||||
|
|
||||||
depends_on:
|
|
||||||
- testing
|
|
||||||
|
|
||||||
---
|
|
||||||
kind: pipeline
|
|
||||||
name: notifications-docker
|
|
||||||
|
|
||||||
platform:
|
|
||||||
os: windows
|
|
||||||
arch: amd64
|
|
||||||
version: 1809
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: manifest
|
|
||||||
pull: always
|
|
||||||
image: plugins/manifest
|
|
||||||
settings:
|
|
||||||
ignore_missing: true
|
|
||||||
password:
|
|
||||||
from_secret: docker_password
|
|
||||||
spec: docker/docker/manifest.tmpl
|
|
||||||
username:
|
|
||||||
from_secret: docker_username
|
|
||||||
|
|
||||||
- name: microbadger
|
|
||||||
pull: always
|
|
||||||
image: plugins/webhook
|
|
||||||
settings:
|
|
||||||
urls:
|
|
||||||
from_secret: microbadger_docker
|
|
||||||
|
|
||||||
trigger:
|
|
||||||
ref:
|
|
||||||
- refs/heads/master
|
|
||||||
- "refs/tags/**"
|
|
||||||
|
|
||||||
depends_on:
|
|
||||||
- windows-1803-docker
|
|
||||||
- windows-1809-docker
|
|
||||||
|
|
||||||
---
|
|
||||||
kind: pipeline
|
|
||||||
name: windows-1803-gcr
|
|
||||||
|
|
||||||
platform:
|
|
||||||
os: windows
|
|
||||||
arch: amd64
|
|
||||||
version: 1803
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: build-push
|
|
||||||
pull: always
|
|
||||||
image: golang:1.11-windowsservercore-1803
|
|
||||||
commands:
|
|
||||||
- "go build -v -ldflags \"-X main.version=${DRONE_COMMIT_SHA:0:8}\" -a -tags netgo -o release/windows/amd64/drone-gcr.exe ./cmd/drone-gcr"
|
|
||||||
environment:
|
|
||||||
CGO_ENABLED: 0
|
|
||||||
GO111MODULE: on
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
exclude:
|
|
||||||
- tag
|
|
||||||
|
|
||||||
- name: build-tag
|
|
||||||
pull: always
|
|
||||||
image: golang:1.11-windowsservercore-1803
|
|
||||||
commands:
|
|
||||||
- "go build -v -ldflags \"-X main.version=${DRONE_TAG##v}\" -a -tags netgo -o release/windows/amd64/drone-gcr.exe ./cmd/drone-gcr"
|
|
||||||
environment:
|
|
||||||
CGO_ENABLED: 0
|
|
||||||
GO111MODULE: on
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
- tag
|
|
||||||
|
|
||||||
- name: dryrun
|
|
||||||
pull: always
|
|
||||||
image: plugins/docker:windows-1803
|
|
||||||
settings:
|
|
||||||
daemon_off: true
|
|
||||||
dockerfile: docker/gcr/Dockerfile.windows.1803
|
|
||||||
dry_run: true
|
|
||||||
password:
|
|
||||||
from_secret: docker_password
|
|
||||||
repo: plugins/gcr
|
|
||||||
tags: windows-1803
|
|
||||||
username:
|
|
||||||
from_secret: docker_username
|
|
||||||
volumes:
|
|
||||||
- name: docker_pipe
|
|
||||||
path: \\\\.\\pipe\\docker_engine
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
- pull_request
|
|
||||||
|
|
||||||
- name: publish
|
|
||||||
pull: always
|
|
||||||
image: plugins/docker:windows-1803
|
|
||||||
settings:
|
|
||||||
auto_tag: true
|
|
||||||
auto_tag_suffix: windows-1803
|
|
||||||
daemon_off: true
|
|
||||||
dockerfile: docker/gcr/Dockerfile.windows.1803
|
|
||||||
password:
|
|
||||||
from_secret: docker_password
|
|
||||||
repo: plugins/gcr
|
|
||||||
username:
|
|
||||||
from_secret: docker_username
|
|
||||||
volumes:
|
|
||||||
- name: docker_pipe
|
|
||||||
path: \\\\.\\pipe\\docker_engine
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
exclude:
|
|
||||||
- pull_request
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
- name: docker_pipe
|
|
||||||
host:
|
|
||||||
path: \\\\.\\pipe\\docker_engine
|
|
||||||
|
|
||||||
trigger:
|
|
||||||
ref:
|
|
||||||
- refs/heads/master
|
|
||||||
- "refs/tags/**"
|
|
||||||
- "refs/pull/**"
|
|
||||||
|
|
||||||
depends_on:
|
|
||||||
- windows-1803-docker
|
|
||||||
|
|
||||||
---
|
|
||||||
kind: pipeline
|
|
||||||
name: windows-1809-gcr
|
|
||||||
|
|
||||||
platform:
|
|
||||||
os: windows
|
|
||||||
arch: amd64
|
|
||||||
version: 1809
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: build-push
|
|
||||||
pull: always
|
|
||||||
image: golang:1.11-windowsservercore-1809
|
|
||||||
commands:
|
|
||||||
- "go build -v -ldflags \"-X main.version=${DRONE_COMMIT_SHA:0:8}\" -a -tags netgo -o release/windows/amd64/drone-gcr.exe ./cmd/drone-gcr"
|
|
||||||
environment:
|
|
||||||
CGO_ENABLED: 0
|
|
||||||
GO111MODULE: on
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
exclude:
|
|
||||||
- tag
|
|
||||||
|
|
||||||
- name: build-tag
|
|
||||||
pull: always
|
|
||||||
image: golang:1.11-windowsservercore-1809
|
|
||||||
commands:
|
|
||||||
- "go build -v -ldflags \"-X main.version=${DRONE_TAG##v}\" -a -tags netgo -o release/windows/amd64/drone-gcr.exe ./cmd/drone-gcr"
|
|
||||||
environment:
|
|
||||||
CGO_ENABLED: 0
|
|
||||||
GO111MODULE: on
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
- tag
|
|
||||||
|
|
||||||
- name: dryrun
|
|
||||||
pull: always
|
|
||||||
image: plugins/docker:windows-1809
|
|
||||||
settings:
|
|
||||||
daemon_off: true
|
|
||||||
dockerfile: docker/gcr/Dockerfile.windows.1809
|
|
||||||
dry_run: true
|
|
||||||
password:
|
|
||||||
from_secret: docker_password
|
|
||||||
repo: plugins/gcr
|
|
||||||
tags: windows-1809
|
|
||||||
username:
|
|
||||||
from_secret: docker_username
|
|
||||||
volumes:
|
|
||||||
- name: docker_pipe
|
|
||||||
path: \\\\.\\pipe\\docker_engine
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
- pull_request
|
|
||||||
|
|
||||||
- name: publish
|
|
||||||
pull: always
|
|
||||||
image: plugins/docker:windows-1809
|
|
||||||
settings:
|
|
||||||
auto_tag: true
|
|
||||||
auto_tag_suffix: windows-1809
|
|
||||||
daemon_off: true
|
|
||||||
dockerfile: docker/gcr/Dockerfile.windows.1809
|
|
||||||
password:
|
|
||||||
from_secret: docker_password
|
|
||||||
repo: plugins/gcr
|
|
||||||
username:
|
|
||||||
from_secret: docker_username
|
|
||||||
volumes:
|
|
||||||
- name: docker_pipe
|
|
||||||
path: \\\\.\\pipe\\docker_engine
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
exclude:
|
|
||||||
- pull_request
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
- name: docker_pipe
|
|
||||||
host:
|
|
||||||
path: \\\\.\\pipe\\docker_engine
|
|
||||||
|
|
||||||
trigger:
|
|
||||||
ref:
|
|
||||||
- refs/heads/master
|
|
||||||
- "refs/tags/**"
|
|
||||||
- "refs/pull/**"
|
|
||||||
|
|
||||||
depends_on:
|
|
||||||
- windows-1809-docker
|
|
||||||
|
|
||||||
---
|
|
||||||
kind: pipeline
|
|
||||||
name: notifications-gcr
|
|
||||||
|
|
||||||
platform:
|
|
||||||
os: windows
|
|
||||||
arch: amd64
|
|
||||||
version: 1809
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: manifest
|
|
||||||
pull: always
|
|
||||||
image: plugins/manifest
|
|
||||||
settings:
|
|
||||||
ignore_missing: true
|
|
||||||
password:
|
|
||||||
from_secret: docker_password
|
|
||||||
spec: docker/gcr/manifest.tmpl
|
|
||||||
username:
|
|
||||||
from_secret: docker_username
|
|
||||||
|
|
||||||
- name: microbadger
|
|
||||||
pull: always
|
|
||||||
image: plugins/webhook
|
|
||||||
settings:
|
|
||||||
urls:
|
|
||||||
from_secret: microbadger_gcr
|
|
||||||
|
|
||||||
trigger:
|
|
||||||
ref:
|
|
||||||
- refs/heads/master
|
|
||||||
- "refs/tags/**"
|
|
||||||
|
|
||||||
depends_on:
|
|
||||||
- windows-1803-gcr
|
|
||||||
- windows-1809-gcr
|
|
||||||
|
|
||||||
---
|
|
||||||
kind: pipeline
|
|
||||||
name: windows-1803-ecr
|
|
||||||
|
|
||||||
platform:
|
|
||||||
os: windows
|
|
||||||
arch: amd64
|
|
||||||
version: 1803
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: build-push
|
|
||||||
pull: always
|
|
||||||
image: golang:1.11-windowsservercore-1803
|
|
||||||
commands:
|
|
||||||
- "go build -v -ldflags \"-X main.version=${DRONE_COMMIT_SHA:0:8}\" -a -tags netgo -o release/windows/amd64/drone-ecr.exe ./cmd/drone-ecr"
|
|
||||||
environment:
|
|
||||||
CGO_ENABLED: 0
|
|
||||||
GO111MODULE: on
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
exclude:
|
|
||||||
- tag
|
|
||||||
|
|
||||||
- name: build-tag
|
|
||||||
pull: always
|
|
||||||
image: golang:1.11-windowsservercore-1803
|
|
||||||
commands:
|
|
||||||
- "go build -v -ldflags \"-X main.version=${DRONE_TAG##v}\" -a -tags netgo -o release/windows/amd64/drone-ecr.exe ./cmd/drone-ecr"
|
|
||||||
environment:
|
|
||||||
CGO_ENABLED: 0
|
|
||||||
GO111MODULE: on
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
- tag
|
|
||||||
|
|
||||||
- name: dryrun
|
|
||||||
pull: always
|
|
||||||
image: plugins/docker:windows-1803
|
|
||||||
settings:
|
|
||||||
daemon_off: true
|
|
||||||
dockerfile: docker/ecr/Dockerfile.windows.1803
|
|
||||||
dry_run: true
|
|
||||||
password:
|
|
||||||
from_secret: docker_password
|
|
||||||
repo: plugins/ecr
|
|
||||||
tags: windows-1803
|
|
||||||
username:
|
|
||||||
from_secret: docker_username
|
|
||||||
volumes:
|
|
||||||
- name: docker_pipe
|
|
||||||
path: \\\\.\\pipe\\docker_engine
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
- pull_request
|
|
||||||
|
|
||||||
- name: publish
|
|
||||||
pull: always
|
|
||||||
image: plugins/docker:windows-1803
|
|
||||||
settings:
|
|
||||||
auto_tag: true
|
|
||||||
auto_tag_suffix: windows-1803
|
|
||||||
daemon_off: true
|
|
||||||
dockerfile: docker/ecr/Dockerfile.windows.1803
|
|
||||||
password:
|
|
||||||
from_secret: docker_password
|
|
||||||
repo: plugins/ecr
|
|
||||||
username:
|
|
||||||
from_secret: docker_username
|
|
||||||
volumes:
|
|
||||||
- name: docker_pipe
|
|
||||||
path: \\\\.\\pipe\\docker_engine
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
exclude:
|
|
||||||
- pull_request
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
- name: docker_pipe
|
|
||||||
host:
|
|
||||||
path: \\\\.\\pipe\\docker_engine
|
|
||||||
|
|
||||||
trigger:
|
|
||||||
ref:
|
|
||||||
- refs/heads/master
|
|
||||||
- "refs/tags/**"
|
|
||||||
- "refs/pull/**"
|
|
||||||
|
|
||||||
depends_on:
|
|
||||||
- windows-1803-docker
|
|
||||||
|
|
||||||
---
|
|
||||||
kind: pipeline
|
|
||||||
name: windows-1809-ecr
|
|
||||||
|
|
||||||
platform:
|
|
||||||
os: windows
|
|
||||||
arch: amd64
|
|
||||||
version: 1809
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: build-push
|
|
||||||
pull: always
|
|
||||||
image: golang:1.11-windowsservercore-1809
|
|
||||||
commands:
|
|
||||||
- "go build -v -ldflags \"-X main.version=${DRONE_COMMIT_SHA:0:8}\" -a -tags netgo -o release/windows/amd64/drone-ecr.exe ./cmd/drone-ecr"
|
|
||||||
environment:
|
|
||||||
CGO_ENABLED: 0
|
|
||||||
GO111MODULE: on
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
exclude:
|
|
||||||
- tag
|
|
||||||
|
|
||||||
- name: build-tag
|
|
||||||
pull: always
|
|
||||||
image: golang:1.11-windowsservercore-1809
|
|
||||||
commands:
|
|
||||||
- "go build -v -ldflags \"-X main.version=${DRONE_TAG##v}\" -a -tags netgo -o release/windows/amd64/drone-ecr.exe ./cmd/drone-ecr"
|
|
||||||
environment:
|
|
||||||
CGO_ENABLED: 0
|
|
||||||
GO111MODULE: on
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
- tag
|
|
||||||
|
|
||||||
- name: dryrun
|
|
||||||
pull: always
|
|
||||||
image: plugins/docker:windows-1809
|
|
||||||
settings:
|
|
||||||
daemon_off: true
|
|
||||||
dockerfile: docker/ecr/Dockerfile.windows.1809
|
|
||||||
dry_run: true
|
|
||||||
password:
|
|
||||||
from_secret: docker_password
|
|
||||||
repo: plugins/ecr
|
|
||||||
tags: windows-1809
|
|
||||||
username:
|
|
||||||
from_secret: docker_username
|
|
||||||
volumes:
|
|
||||||
- name: docker_pipe
|
|
||||||
path: \\\\.\\pipe\\docker_engine
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
- pull_request
|
|
||||||
|
|
||||||
- name: publish
|
|
||||||
pull: always
|
|
||||||
image: plugins/docker:windows-1809
|
|
||||||
settings:
|
|
||||||
auto_tag: true
|
|
||||||
auto_tag_suffix: windows-1809
|
|
||||||
daemon_off: true
|
|
||||||
dockerfile: docker/ecr/Dockerfile.windows.1809
|
|
||||||
password:
|
|
||||||
from_secret: docker_password
|
|
||||||
repo: plugins/ecr
|
|
||||||
username:
|
|
||||||
from_secret: docker_username
|
|
||||||
volumes:
|
|
||||||
- name: docker_pipe
|
|
||||||
path: \\\\.\\pipe\\docker_engine
|
|
||||||
when:
|
|
||||||
event:
|
|
||||||
exclude:
|
|
||||||
- pull_request
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
- name: docker_pipe
|
|
||||||
host:
|
|
||||||
path: \\\\.\\pipe\\docker_engine
|
|
||||||
|
|
||||||
trigger:
|
|
||||||
ref:
|
|
||||||
- refs/heads/master
|
|
||||||
- "refs/tags/**"
|
|
||||||
- "refs/pull/**"
|
|
||||||
|
|
||||||
depends_on:
|
|
||||||
- windows-1809-docker
|
|
||||||
|
|
||||||
---
|
|
||||||
kind: pipeline
|
|
||||||
name: notifications-ecr
|
|
||||||
|
|
||||||
platform:
|
|
||||||
os: windows
|
|
||||||
arch: amd64
|
|
||||||
version: 1809
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: manifest
|
|
||||||
pull: always
|
|
||||||
image: plugins/manifest
|
|
||||||
settings:
|
|
||||||
ignore_missing: true
|
|
||||||
password:
|
|
||||||
from_secret: docker_password
|
|
||||||
spec: docker/ecr/manifest.tmpl
|
|
||||||
username:
|
|
||||||
from_secret: docker_username
|
|
||||||
|
|
||||||
- name: microbadger
|
|
||||||
pull: always
|
|
||||||
image: plugins/webhook
|
|
||||||
settings:
|
|
||||||
urls:
|
|
||||||
from_secret: microbadger_ecr
|
|
||||||
|
|
||||||
trigger:
|
|
||||||
ref:
|
|
||||||
- refs/heads/master
|
|
||||||
- "refs/tags/**"
|
|
||||||
|
|
||||||
depends_on:
|
|
||||||
- windows-1803-ecr
|
|
||||||
- windows-1809-ecr
|
|
||||||
|
|
||||||
...
|
|
||||||
+383
-24
@@ -39,6 +39,82 @@ trigger:
|
|||||||
- "refs/tags/**"
|
- "refs/tags/**"
|
||||||
- "refs/pull/**"
|
- "refs/pull/**"
|
||||||
|
|
||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
type: ssh
|
||||||
|
name: windows-1809-amd64-docker
|
||||||
|
|
||||||
|
platform:
|
||||||
|
os: windows
|
||||||
|
|
||||||
|
server:
|
||||||
|
host: windows.1809.amd64.plugins.drone.ci
|
||||||
|
password:
|
||||||
|
from_secret: windows_password
|
||||||
|
user:
|
||||||
|
from_secret: windows_username
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: build
|
||||||
|
commands:
|
||||||
|
# TODO use the new DRONE_SEMVER_SHORT environment variables to
|
||||||
|
# publish docker images for tag events.
|
||||||
|
- go build -o release/windows/amd64/drone-docker.exe ./cmd/drone-docker
|
||||||
|
- docker login -u $env:USERNAME -p $env:PASSWORD
|
||||||
|
- docker build -f docker/docker/Dockerfile.windows.1809 -t plugins/docker:windows-1809-amd64 .
|
||||||
|
- docker push plugins/docker:windows-1809-amd64
|
||||||
|
environment:
|
||||||
|
CGO_ENABLED: "0"
|
||||||
|
USERNAME:
|
||||||
|
from_secret: docker_username
|
||||||
|
PASSWORD:
|
||||||
|
from_secret: docker_password
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
event:
|
||||||
|
- push
|
||||||
|
|
||||||
|
depends_on:
|
||||||
|
- testing
|
||||||
|
|
||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
type: ssh
|
||||||
|
name: windows-1903-amd64-docker
|
||||||
|
|
||||||
|
platform:
|
||||||
|
os: windows
|
||||||
|
|
||||||
|
server:
|
||||||
|
host: windows.1903.amd64.plugins.drone.ci
|
||||||
|
password:
|
||||||
|
from_secret: windows_password
|
||||||
|
user:
|
||||||
|
from_secret: windows_username
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: build
|
||||||
|
commands:
|
||||||
|
# TODO use the new DRONE_SEMVER_SHORT environment variables to
|
||||||
|
# publish docker images for tag events.
|
||||||
|
- go build -o release/windows/amd64/drone-docker.exe ./cmd/drone-docker
|
||||||
|
- docker login -u $env:USERNAME -p $env:PASSWORD
|
||||||
|
- docker build -f docker/docker/Dockerfile.windows.1903 -t plugins/docker:windows-1903-amd64 .
|
||||||
|
- docker push plugins/docker:windows-1903-amd64
|
||||||
|
environment:
|
||||||
|
CGO_ENABLED: "0"
|
||||||
|
USERNAME:
|
||||||
|
from_secret: docker_username
|
||||||
|
PASSWORD:
|
||||||
|
from_secret: docker_password
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
event:
|
||||||
|
- push
|
||||||
|
|
||||||
|
depends_on:
|
||||||
|
- testing
|
||||||
|
|
||||||
---
|
---
|
||||||
kind: pipeline
|
kind: pipeline
|
||||||
name: linux-amd64-docker
|
name: linux-amd64-docker
|
||||||
@@ -81,7 +157,7 @@ steps:
|
|||||||
|
|
||||||
- name: dryrun
|
- name: dryrun
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-amd64
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
daemon_off: false
|
daemon_off: false
|
||||||
dockerfile: docker/docker/Dockerfile.linux.amd64
|
dockerfile: docker/docker/Dockerfile.linux.amd64
|
||||||
@@ -98,7 +174,7 @@ steps:
|
|||||||
|
|
||||||
- name: publish
|
- name: publish
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-amd64
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
auto_tag: true
|
auto_tag: true
|
||||||
auto_tag_suffix: linux-amd64
|
auto_tag_suffix: linux-amd64
|
||||||
@@ -165,7 +241,7 @@ steps:
|
|||||||
|
|
||||||
- name: dryrun
|
- name: dryrun
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-arm64
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
daemon_off: false
|
daemon_off: false
|
||||||
dockerfile: docker/docker/Dockerfile.linux.arm64
|
dockerfile: docker/docker/Dockerfile.linux.arm64
|
||||||
@@ -182,7 +258,7 @@ steps:
|
|||||||
|
|
||||||
- name: publish
|
- name: publish
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-arm64
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
auto_tag: true
|
auto_tag: true
|
||||||
auto_tag_suffix: linux-arm64
|
auto_tag_suffix: linux-arm64
|
||||||
@@ -249,7 +325,7 @@ steps:
|
|||||||
|
|
||||||
- name: dryrun
|
- name: dryrun
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-arm
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
daemon_off: false
|
daemon_off: false
|
||||||
dockerfile: docker/docker/Dockerfile.linux.arm
|
dockerfile: docker/docker/Dockerfile.linux.arm
|
||||||
@@ -266,7 +342,7 @@ steps:
|
|||||||
|
|
||||||
- name: publish
|
- name: publish
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-arm
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
auto_tag: true
|
auto_tag: true
|
||||||
auto_tag_suffix: linux-arm
|
auto_tag_suffix: linux-arm
|
||||||
@@ -304,6 +380,7 @@ steps:
|
|||||||
pull: always
|
pull: always
|
||||||
image: plugins/manifest
|
image: plugins/manifest
|
||||||
settings:
|
settings:
|
||||||
|
auto_tag: true
|
||||||
ignore_missing: true
|
ignore_missing: true
|
||||||
password:
|
password:
|
||||||
from_secret: docker_password
|
from_secret: docker_password
|
||||||
@@ -314,6 +391,7 @@ steps:
|
|||||||
- name: microbadger
|
- name: microbadger
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/webhook
|
image: plugins/webhook
|
||||||
|
failure: ignore
|
||||||
settings:
|
settings:
|
||||||
urls:
|
urls:
|
||||||
from_secret: microbadger_docker
|
from_secret: microbadger_docker
|
||||||
@@ -324,6 +402,8 @@ trigger:
|
|||||||
- "refs/tags/**"
|
- "refs/tags/**"
|
||||||
|
|
||||||
depends_on:
|
depends_on:
|
||||||
|
- windows-1809-amd64-docker
|
||||||
|
- windows-1903-amd64-docker
|
||||||
- linux-amd64-docker
|
- linux-amd64-docker
|
||||||
- linux-arm64-docker
|
- linux-arm64-docker
|
||||||
- linux-arm-docker
|
- linux-arm-docker
|
||||||
@@ -364,7 +444,7 @@ steps:
|
|||||||
|
|
||||||
- name: dryrun
|
- name: dryrun
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-amd64
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
daemon_off: false
|
daemon_off: false
|
||||||
dockerfile: docker/gcr/Dockerfile.linux.amd64
|
dockerfile: docker/gcr/Dockerfile.linux.amd64
|
||||||
@@ -381,7 +461,7 @@ steps:
|
|||||||
|
|
||||||
- name: publish
|
- name: publish
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-amd64
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
auto_tag: true
|
auto_tag: true
|
||||||
auto_tag_suffix: linux-amd64
|
auto_tag_suffix: linux-amd64
|
||||||
@@ -442,7 +522,7 @@ steps:
|
|||||||
|
|
||||||
- name: dryrun
|
- name: dryrun
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-arm64
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
daemon_off: false
|
daemon_off: false
|
||||||
dockerfile: docker/gcr/Dockerfile.linux.arm64
|
dockerfile: docker/gcr/Dockerfile.linux.arm64
|
||||||
@@ -459,7 +539,7 @@ steps:
|
|||||||
|
|
||||||
- name: publish
|
- name: publish
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-arm64
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
auto_tag: true
|
auto_tag: true
|
||||||
auto_tag_suffix: linux-arm64
|
auto_tag_suffix: linux-arm64
|
||||||
@@ -520,7 +600,7 @@ steps:
|
|||||||
|
|
||||||
- name: dryrun
|
- name: dryrun
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-arm
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
daemon_off: false
|
daemon_off: false
|
||||||
dockerfile: docker/gcr/Dockerfile.linux.arm
|
dockerfile: docker/gcr/Dockerfile.linux.arm
|
||||||
@@ -537,7 +617,7 @@ steps:
|
|||||||
|
|
||||||
- name: publish
|
- name: publish
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-arm
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
auto_tag: true
|
auto_tag: true
|
||||||
auto_tag_suffix: linux-arm
|
auto_tag_suffix: linux-arm
|
||||||
@@ -575,6 +655,7 @@ steps:
|
|||||||
pull: always
|
pull: always
|
||||||
image: plugins/manifest
|
image: plugins/manifest
|
||||||
settings:
|
settings:
|
||||||
|
auto_tag: true
|
||||||
ignore_missing: true
|
ignore_missing: true
|
||||||
password:
|
password:
|
||||||
from_secret: docker_password
|
from_secret: docker_password
|
||||||
@@ -585,6 +666,7 @@ steps:
|
|||||||
- name: microbadger
|
- name: microbadger
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/webhook
|
image: plugins/webhook
|
||||||
|
failure: ignore
|
||||||
settings:
|
settings:
|
||||||
urls:
|
urls:
|
||||||
from_secret: microbadger_gcr
|
from_secret: microbadger_gcr
|
||||||
@@ -635,7 +717,7 @@ steps:
|
|||||||
|
|
||||||
- name: dryrun
|
- name: dryrun
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-amd64
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
daemon_off: false
|
daemon_off: false
|
||||||
dockerfile: docker/ecr/Dockerfile.linux.amd64
|
dockerfile: docker/ecr/Dockerfile.linux.amd64
|
||||||
@@ -652,7 +734,7 @@ steps:
|
|||||||
|
|
||||||
- name: publish
|
- name: publish
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-amd64
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
auto_tag: true
|
auto_tag: true
|
||||||
auto_tag_suffix: linux-amd64
|
auto_tag_suffix: linux-amd64
|
||||||
@@ -713,7 +795,7 @@ steps:
|
|||||||
|
|
||||||
- name: dryrun
|
- name: dryrun
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-arm64
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
daemon_off: false
|
daemon_off: false
|
||||||
dockerfile: docker/ecr/Dockerfile.linux.arm64
|
dockerfile: docker/ecr/Dockerfile.linux.arm64
|
||||||
@@ -730,7 +812,7 @@ steps:
|
|||||||
|
|
||||||
- name: publish
|
- name: publish
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-arm64
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
auto_tag: true
|
auto_tag: true
|
||||||
auto_tag_suffix: linux-arm64
|
auto_tag_suffix: linux-arm64
|
||||||
@@ -791,7 +873,7 @@ steps:
|
|||||||
|
|
||||||
- name: dryrun
|
- name: dryrun
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-arm
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
daemon_off: false
|
daemon_off: false
|
||||||
dockerfile: docker/ecr/Dockerfile.linux.arm
|
dockerfile: docker/ecr/Dockerfile.linux.arm
|
||||||
@@ -808,7 +890,7 @@ steps:
|
|||||||
|
|
||||||
- name: publish
|
- name: publish
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-arm
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
auto_tag: true
|
auto_tag: true
|
||||||
auto_tag_suffix: linux-arm
|
auto_tag_suffix: linux-arm
|
||||||
@@ -846,6 +928,7 @@ steps:
|
|||||||
pull: always
|
pull: always
|
||||||
image: plugins/manifest
|
image: plugins/manifest
|
||||||
settings:
|
settings:
|
||||||
|
auto_tag: true
|
||||||
ignore_missing: true
|
ignore_missing: true
|
||||||
password:
|
password:
|
||||||
from_secret: docker_password
|
from_secret: docker_password
|
||||||
@@ -856,6 +939,7 @@ steps:
|
|||||||
- name: microbadger
|
- name: microbadger
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/webhook
|
image: plugins/webhook
|
||||||
|
failure: ignore
|
||||||
settings:
|
settings:
|
||||||
urls:
|
urls:
|
||||||
from_secret: microbadger_ecr
|
from_secret: microbadger_ecr
|
||||||
@@ -906,7 +990,7 @@ steps:
|
|||||||
|
|
||||||
- name: dryrun
|
- name: dryrun
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-amd64
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
daemon_off: false
|
daemon_off: false
|
||||||
dockerfile: docker/heroku/Dockerfile.linux.amd64
|
dockerfile: docker/heroku/Dockerfile.linux.amd64
|
||||||
@@ -923,7 +1007,7 @@ steps:
|
|||||||
|
|
||||||
- name: publish
|
- name: publish
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-amd64
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
auto_tag: true
|
auto_tag: true
|
||||||
auto_tag_suffix: linux-amd64
|
auto_tag_suffix: linux-amd64
|
||||||
@@ -984,7 +1068,7 @@ steps:
|
|||||||
|
|
||||||
- name: dryrun
|
- name: dryrun
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-arm64
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
daemon_off: false
|
daemon_off: false
|
||||||
dockerfile: docker/heroku/Dockerfile.linux.arm64
|
dockerfile: docker/heroku/Dockerfile.linux.arm64
|
||||||
@@ -1001,7 +1085,7 @@ steps:
|
|||||||
|
|
||||||
- name: publish
|
- name: publish
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-arm64
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
auto_tag: true
|
auto_tag: true
|
||||||
auto_tag_suffix: linux-arm64
|
auto_tag_suffix: linux-arm64
|
||||||
@@ -1062,7 +1146,7 @@ steps:
|
|||||||
|
|
||||||
- name: dryrun
|
- name: dryrun
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-arm
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
daemon_off: false
|
daemon_off: false
|
||||||
dockerfile: docker/heroku/Dockerfile.linux.arm
|
dockerfile: docker/heroku/Dockerfile.linux.arm
|
||||||
@@ -1079,7 +1163,7 @@ steps:
|
|||||||
|
|
||||||
- name: publish
|
- name: publish
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/docker:linux-arm
|
image: plugins/docker:18
|
||||||
settings:
|
settings:
|
||||||
auto_tag: true
|
auto_tag: true
|
||||||
auto_tag_suffix: linux-arm
|
auto_tag_suffix: linux-arm
|
||||||
@@ -1117,6 +1201,7 @@ steps:
|
|||||||
pull: always
|
pull: always
|
||||||
image: plugins/manifest
|
image: plugins/manifest
|
||||||
settings:
|
settings:
|
||||||
|
auto_tag: true
|
||||||
ignore_missing: true
|
ignore_missing: true
|
||||||
password:
|
password:
|
||||||
from_secret: docker_password
|
from_secret: docker_password
|
||||||
@@ -1127,6 +1212,7 @@ steps:
|
|||||||
- name: microbadger
|
- name: microbadger
|
||||||
pull: always
|
pull: always
|
||||||
image: plugins/webhook
|
image: plugins/webhook
|
||||||
|
failure: ignore
|
||||||
settings:
|
settings:
|
||||||
urls:
|
urls:
|
||||||
from_secret: microbadger_heroku
|
from_secret: microbadger_heroku
|
||||||
@@ -1141,4 +1227,277 @@ depends_on:
|
|||||||
- linux-arm64-heroku
|
- linux-arm64-heroku
|
||||||
- linux-arm-heroku
|
- linux-arm-heroku
|
||||||
|
|
||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
name: linux-amd64-acr
|
||||||
|
|
||||||
|
platform:
|
||||||
|
os: linux
|
||||||
|
arch: amd64
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: build-push
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11
|
||||||
|
commands:
|
||||||
|
- "go build -v -ldflags \"-X main.build=${DRONE_BUILD_NUMBER}\" -a -tags netgo -o release/linux/amd64/drone-acr ./cmd/drone-acr"
|
||||||
|
environment:
|
||||||
|
CGO_ENABLED: 0
|
||||||
|
GO111MODULE: on
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
exclude:
|
||||||
|
- tag
|
||||||
|
|
||||||
|
- name: build-tag
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11
|
||||||
|
commands:
|
||||||
|
- "go build -v -ldflags \"-X main.version=${DRONE_TAG##v} -X main.build=${DRONE_BUILD_NUMBER}\" -a -tags netgo -o release/linux/amd64/drone-acr ./cmd/drone-acr"
|
||||||
|
environment:
|
||||||
|
CGO_ENABLED: 0
|
||||||
|
GO111MODULE: on
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
- tag
|
||||||
|
|
||||||
|
- name: dryrun
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:18
|
||||||
|
settings:
|
||||||
|
daemon_off: false
|
||||||
|
dockerfile: docker/acr/Dockerfile.linux.amd64
|
||||||
|
dry_run: true
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
repo: plugins/acr
|
||||||
|
tags: linux-amd64
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
- pull_request
|
||||||
|
|
||||||
|
- name: publish
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:18
|
||||||
|
settings:
|
||||||
|
auto_tag: true
|
||||||
|
auto_tag_suffix: linux-amd64
|
||||||
|
daemon_off: false
|
||||||
|
dockerfile: docker/acr/Dockerfile.linux.amd64
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
repo: plugins/acr
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
exclude:
|
||||||
|
- pull_request
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
ref:
|
||||||
|
- refs/heads/master
|
||||||
|
- "refs/tags/**"
|
||||||
|
- "refs/pull/**"
|
||||||
|
|
||||||
|
depends_on:
|
||||||
|
- linux-amd64-docker
|
||||||
|
|
||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
name: linux-arm64-acr
|
||||||
|
|
||||||
|
platform:
|
||||||
|
os: linux
|
||||||
|
arch: arm64
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: build-push
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11
|
||||||
|
commands:
|
||||||
|
- "go build -v -ldflags \"-X main.build=${DRONE_BUILD_NUMBER}\" -a -tags netgo -o release/linux/arm64/drone-acr ./cmd/drone-acr"
|
||||||
|
environment:
|
||||||
|
CGO_ENABLED: 0
|
||||||
|
GO111MODULE: on
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
exclude:
|
||||||
|
- tag
|
||||||
|
|
||||||
|
- name: build-tag
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11
|
||||||
|
commands:
|
||||||
|
- "go build -v -ldflags \"-X main.version=${DRONE_TAG##v} -X main.build=${DRONE_BUILD_NUMBER}\" -a -tags netgo -o release/linux/arm64/drone-acr ./cmd/drone-acr"
|
||||||
|
environment:
|
||||||
|
CGO_ENABLED: 0
|
||||||
|
GO111MODULE: on
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
- tag
|
||||||
|
|
||||||
|
- name: dryrun
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:18
|
||||||
|
settings:
|
||||||
|
daemon_off: false
|
||||||
|
dockerfile: docker/acr/Dockerfile.linux.arm64
|
||||||
|
dry_run: true
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
repo: plugins/acr
|
||||||
|
tags: linux-arm64
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
- pull_request
|
||||||
|
|
||||||
|
- name: publish
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:18
|
||||||
|
settings:
|
||||||
|
auto_tag: true
|
||||||
|
auto_tag_suffix: linux-arm64
|
||||||
|
daemon_off: false
|
||||||
|
dockerfile: docker/acr/Dockerfile.linux.arm64
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
repo: plugins/acr
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
exclude:
|
||||||
|
- pull_request
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
ref:
|
||||||
|
- refs/heads/master
|
||||||
|
- "refs/tags/**"
|
||||||
|
- "refs/pull/**"
|
||||||
|
|
||||||
|
depends_on:
|
||||||
|
- linux-arm64-docker
|
||||||
|
|
||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
name: linux-arm-acr
|
||||||
|
|
||||||
|
platform:
|
||||||
|
os: linux
|
||||||
|
arch: arm
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: build-push
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11
|
||||||
|
commands:
|
||||||
|
- "go build -v -ldflags \"-X main.build=${DRONE_BUILD_NUMBER}\" -a -tags netgo -o release/linux/arm/drone-acr ./cmd/drone-acr"
|
||||||
|
environment:
|
||||||
|
CGO_ENABLED: 0
|
||||||
|
GO111MODULE: on
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
exclude:
|
||||||
|
- tag
|
||||||
|
|
||||||
|
- name: build-tag
|
||||||
|
pull: always
|
||||||
|
image: golang:1.11
|
||||||
|
commands:
|
||||||
|
- "go build -v -ldflags \"-X main.version=${DRONE_TAG##v} -X main.build=${DRONE_BUILD_NUMBER}\" -a -tags netgo -o release/linux/arm/drone-acr ./cmd/drone-acr"
|
||||||
|
environment:
|
||||||
|
CGO_ENABLED: 0
|
||||||
|
GO111MODULE: on
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
- tag
|
||||||
|
|
||||||
|
- name: dryrun
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:18
|
||||||
|
settings:
|
||||||
|
daemon_off: false
|
||||||
|
dockerfile: docker/acr/Dockerfile.linux.arm
|
||||||
|
dry_run: true
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
repo: plugins/acr
|
||||||
|
tags: linux-arm
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
- pull_request
|
||||||
|
|
||||||
|
- name: publish
|
||||||
|
pull: always
|
||||||
|
image: plugins/docker:18
|
||||||
|
settings:
|
||||||
|
auto_tag: true
|
||||||
|
auto_tag_suffix: linux-arm
|
||||||
|
daemon_off: false
|
||||||
|
dockerfile: docker/acr/Dockerfile.linux.arm
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
repo: plugins/acr
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
when:
|
||||||
|
event:
|
||||||
|
exclude:
|
||||||
|
- pull_request
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
ref:
|
||||||
|
- refs/heads/master
|
||||||
|
- "refs/tags/**"
|
||||||
|
- "refs/pull/**"
|
||||||
|
|
||||||
|
depends_on:
|
||||||
|
- linux-arm-docker
|
||||||
|
|
||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
name: notifications-acr
|
||||||
|
|
||||||
|
platform:
|
||||||
|
os: linux
|
||||||
|
arch: amd64
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: manifest
|
||||||
|
pull: always
|
||||||
|
image: plugins/manifest
|
||||||
|
settings:
|
||||||
|
ignore_missing: true
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
spec: docker/acr/manifest.tmpl
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
|
||||||
|
- name: microbadger
|
||||||
|
pull: always
|
||||||
|
image: plugins/webhook
|
||||||
|
failure: ignore
|
||||||
|
settings:
|
||||||
|
url:
|
||||||
|
from_secret: microbadger_acr
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
ref:
|
||||||
|
- refs/heads/master
|
||||||
|
- "refs/tags/**"
|
||||||
|
|
||||||
|
depends_on:
|
||||||
|
- linux-amd64-acr
|
||||||
|
- linux-arm64-acr
|
||||||
|
- linux-arm-acr
|
||||||
|
|
||||||
|
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -23,6 +23,7 @@ export GO111MODULE=on
|
|||||||
go build -v -a -tags netgo -o release/linux/amd64/drone-docker ./cmd/drone-docker
|
go build -v -a -tags netgo -o release/linux/amd64/drone-docker ./cmd/drone-docker
|
||||||
go build -v -a -tags netgo -o release/linux/amd64/drone-gcr ./cmd/drone-gcr
|
go build -v -a -tags netgo -o release/linux/amd64/drone-gcr ./cmd/drone-gcr
|
||||||
go build -v -a -tags netgo -o release/linux/amd64/drone-ecr ./cmd/drone-ecr
|
go build -v -a -tags netgo -o release/linux/amd64/drone-ecr ./cmd/drone-ecr
|
||||||
|
go build -v -a -tags netgo -o release/linux/amd64/drone-acr ./cmd/drone-acr
|
||||||
go build -v -a -tags netgo -o release/linux/amd64/drone-heroku ./cmd/drone-heroku
|
go build -v -a -tags netgo -o release/linux/amd64/drone-heroku ./cmd/drone-heroku
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -46,6 +47,11 @@ docker build \
|
|||||||
--label org.label-schema.vcs-ref=$(git rev-parse --short HEAD) \
|
--label org.label-schema.vcs-ref=$(git rev-parse --short HEAD) \
|
||||||
--file docker/ecr/Dockerfile.linux.amd64 --tag plugins/ecr .
|
--file docker/ecr/Dockerfile.linux.amd64 --tag plugins/ecr .
|
||||||
|
|
||||||
|
docker build \
|
||||||
|
--label org.label-schema.build-date=$(date -u +"%Y-%m-%dT%H:%M:%SZ") \
|
||||||
|
--label org.label-schema.vcs-ref=$(git rev-parse --short HEAD) \
|
||||||
|
--file docker/acr/Dockerfile.linux.amd64 --tag plugins/acr .
|
||||||
|
|
||||||
docker build \
|
docker build \
|
||||||
--label org.label-schema.build-date=$(date -u +"%Y-%m-%dT%H:%M:%SZ") \
|
--label org.label-schema.build-date=$(date -u +"%Y-%m-%dT%H:%M:%SZ") \
|
||||||
--label org.label-schema.vcs-ref=$(git rev-parse --short HEAD) \
|
--label org.label-schema.vcs-ref=$(git rev-parse --short HEAD) \
|
||||||
|
|||||||
@@ -0,0 +1,53 @@
|
|||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"os"
|
||||||
|
"os/exec"
|
||||||
|
"strings"
|
||||||
|
)
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
var (
|
||||||
|
repo = getenv("PLUGIN_REPO")
|
||||||
|
registry = getenv("PLUGIN_REGISTRY")
|
||||||
|
username = getenv("SERVICE_PRINCIPAL_CLIENT_ID")
|
||||||
|
password = getenv("SERVICE_PRINCIPAL_CLIENT_SECRET")
|
||||||
|
)
|
||||||
|
|
||||||
|
// default registry value
|
||||||
|
if registry == "" {
|
||||||
|
registry = "azurecr.io"
|
||||||
|
}
|
||||||
|
|
||||||
|
// must use the fully qualified repo name. If the
|
||||||
|
// repo name does not have the registry prefix we
|
||||||
|
// should prepend.
|
||||||
|
if !strings.HasPrefix(repo, registry) {
|
||||||
|
repo = fmt.Sprintf("%s/%s", registry, repo)
|
||||||
|
}
|
||||||
|
|
||||||
|
os.Setenv("PLUGIN_REPO", repo)
|
||||||
|
os.Setenv("PLUGIN_REGISTRY", registry)
|
||||||
|
os.Setenv("DOCKER_USERNAME", username)
|
||||||
|
os.Setenv("DOCKER_PASSWORD", password)
|
||||||
|
|
||||||
|
// invoke the base docker plugin binary
|
||||||
|
cmd := exec.Command("drone-docker")
|
||||||
|
cmd.Stdout = os.Stdout
|
||||||
|
cmd.Stderr = os.Stderr
|
||||||
|
err := cmd.Run()
|
||||||
|
if err != nil {
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func getenv(key ...string) (s string) {
|
||||||
|
for _, k := range key {
|
||||||
|
s = os.Getenv(k)
|
||||||
|
if s != "" {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
@@ -223,6 +223,11 @@ func main() {
|
|||||||
Usage: "do not use cached intermediate containers",
|
Usage: "do not use cached intermediate containers",
|
||||||
EnvVar: "PLUGIN_NO_CACHE",
|
EnvVar: "PLUGIN_NO_CACHE",
|
||||||
},
|
},
|
||||||
|
cli.StringSliceFlag{
|
||||||
|
Name: "add-host",
|
||||||
|
Usage: "additional host:IP mapping",
|
||||||
|
EnvVar: "PLUGIN_ADD_HOST",
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
if err := app.Run(os.Args); err != nil {
|
if err := app.Run(os.Args); err != nil {
|
||||||
@@ -257,6 +262,7 @@ func run(c *cli.Context) error {
|
|||||||
Labels: c.StringSlice("custom-labels"),
|
Labels: c.StringSlice("custom-labels"),
|
||||||
LabelSchema: c.StringSlice("label-schema"),
|
LabelSchema: c.StringSlice("label-schema"),
|
||||||
NoCache: c.Bool("no-cache"),
|
NoCache: c.Bool("no-cache"),
|
||||||
|
AddHost: c.StringSlice("add-host"),
|
||||||
},
|
},
|
||||||
Daemon: docker.Daemon{
|
Daemon: docker.Daemon{
|
||||||
Registry: c.String("docker.registry"),
|
Registry: c.String("docker.registry"),
|
||||||
|
|||||||
+19
-3
@@ -12,6 +12,7 @@ import (
|
|||||||
|
|
||||||
"github.com/aws/aws-sdk-go/aws"
|
"github.com/aws/aws-sdk-go/aws"
|
||||||
"github.com/aws/aws-sdk-go/aws/awserr"
|
"github.com/aws/aws-sdk-go/aws/awserr"
|
||||||
|
"github.com/aws/aws-sdk-go/aws/credentials/stscreds"
|
||||||
"github.com/aws/aws-sdk-go/aws/session"
|
"github.com/aws/aws-sdk-go/aws/session"
|
||||||
"github.com/aws/aws-sdk-go/service/ecr"
|
"github.com/aws/aws-sdk-go/service/ecr"
|
||||||
)
|
)
|
||||||
@@ -21,12 +22,14 @@ const defaultRegion = "us-east-1"
|
|||||||
func main() {
|
func main() {
|
||||||
var (
|
var (
|
||||||
repo = getenv("PLUGIN_REPO")
|
repo = getenv("PLUGIN_REPO")
|
||||||
|
registry = getenv("PLUGIN_REGISTRY")
|
||||||
region = getenv("PLUGIN_REGION", "ECR_REGION", "AWS_REGION")
|
region = getenv("PLUGIN_REGION", "ECR_REGION", "AWS_REGION")
|
||||||
key = getenv("PLUGIN_ACCESS_KEY", "ECR_ACCESS_KEY", "AWS_ACCESS_KEY_ID")
|
key = getenv("PLUGIN_ACCESS_KEY", "ECR_ACCESS_KEY", "AWS_ACCESS_KEY_ID")
|
||||||
secret = getenv("PLUGIN_SECRET_KEY", "ECR_SECRET_KEY", "AWS_SECRET_ACCESS_KEY")
|
secret = getenv("PLUGIN_SECRET_KEY", "ECR_SECRET_KEY", "AWS_SECRET_ACCESS_KEY")
|
||||||
create = parseBoolOrDefault(false, getenv("PLUGIN_CREATE_REPOSITORY", "ECR_CREATE_REPOSITORY"))
|
create = parseBoolOrDefault(false, getenv("PLUGIN_CREATE_REPOSITORY", "ECR_CREATE_REPOSITORY"))
|
||||||
lifecyclePolicy = getenv("PLUGIN_LIFECYCLE_POLICY")
|
lifecyclePolicy = getenv("PLUGIN_LIFECYCLE_POLICY")
|
||||||
repositoryPolicy = getenv("PLUGIN_REPOSITORY_POLICY")
|
repositoryPolicy = getenv("PLUGIN_REPOSITORY_POLICY")
|
||||||
|
assumeRole = getenv("PLUGIN_ASSUME_ROLE")
|
||||||
)
|
)
|
||||||
|
|
||||||
// set the region
|
// set the region
|
||||||
@@ -42,13 +45,17 @@ func main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
sess, err := session.NewSession(&aws.Config{Region: ®ion})
|
sess, err := session.NewSession(&aws.Config{Region: ®ion})
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal(fmt.Sprintf("error creating aws session: %v", err))
|
log.Fatal(fmt.Sprintf("error creating aws session: %v", err))
|
||||||
}
|
}
|
||||||
|
|
||||||
svc := ecr.New(sess)
|
svc := getECRClient(sess, assumeRole)
|
||||||
username, password, registry, err := getAuthInfo(svc)
|
username, password, defaultRegistry, err := getAuthInfo(svc)
|
||||||
|
|
||||||
|
if registry == "" {
|
||||||
|
registry = defaultRegistry
|
||||||
|
}
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal(fmt.Sprintf("error getting ECR auth: %v", err))
|
log.Fatal(fmt.Sprintf("error getting ECR auth: %v", err))
|
||||||
}
|
}
|
||||||
@@ -178,3 +185,12 @@ func getenv(key ...string) (s string) {
|
|||||||
}
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func getECRClient(sess *session.Session, role string) *ecr.ECR {
|
||||||
|
if role == "" {
|
||||||
|
return ecr.New(sess)
|
||||||
|
}
|
||||||
|
return ecr.New(sess, &aws.Config{
|
||||||
|
Credentials: stscreds.NewCredentials(sess, role),
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|||||||
@@ -0,0 +1,26 @@
|
|||||||
|
// +build !windows
|
||||||
|
|
||||||
|
package docker
|
||||||
|
|
||||||
|
import (
|
||||||
|
"io/ioutil"
|
||||||
|
"os"
|
||||||
|
)
|
||||||
|
|
||||||
|
const dockerExe = "/usr/local/bin/docker"
|
||||||
|
const dockerdExe = "/usr/local/bin/dockerd"
|
||||||
|
|
||||||
|
func (p Plugin) startDaemon() {
|
||||||
|
cmd := commandDaemon(p.Daemon)
|
||||||
|
if p.Daemon.Debug {
|
||||||
|
cmd.Stdout = os.Stdout
|
||||||
|
cmd.Stderr = os.Stderr
|
||||||
|
} else {
|
||||||
|
cmd.Stdout = ioutil.Discard
|
||||||
|
cmd.Stderr = ioutil.Discard
|
||||||
|
}
|
||||||
|
go func() {
|
||||||
|
trace(cmd)
|
||||||
|
cmd.Run()
|
||||||
|
}()
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
// +build windows
|
||||||
|
|
||||||
|
package docker
|
||||||
|
|
||||||
|
const dockerExe = "C:\\bin\\docker.exe"
|
||||||
|
const dockerdExe = ""
|
||||||
|
|
||||||
|
func (p Plugin) startDaemon() {
|
||||||
|
// this is a no-op on windows
|
||||||
|
}
|
||||||
@@ -2,7 +2,6 @@ package docker
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
"io/ioutil"
|
|
||||||
"os"
|
"os"
|
||||||
"os/exec"
|
"os/exec"
|
||||||
"strings"
|
"strings"
|
||||||
@@ -53,6 +52,7 @@ type (
|
|||||||
LabelSchema []string // label-schema Label map
|
LabelSchema []string // label-schema Label map
|
||||||
Labels []string // Label map
|
Labels []string // Label map
|
||||||
NoCache bool // Docker build no-cache
|
NoCache bool // Docker build no-cache
|
||||||
|
AddHost []string // Docker build add-host
|
||||||
}
|
}
|
||||||
|
|
||||||
// Plugin defines the Docker plugin parameters.
|
// Plugin defines the Docker plugin parameters.
|
||||||
@@ -69,18 +69,7 @@ type (
|
|||||||
func (p Plugin) Exec() error {
|
func (p Plugin) Exec() error {
|
||||||
// start the Docker daemon server
|
// start the Docker daemon server
|
||||||
if !p.Daemon.Disabled {
|
if !p.Daemon.Disabled {
|
||||||
cmd := commandDaemon(p.Daemon)
|
p.startDaemon()
|
||||||
if p.Daemon.Debug {
|
|
||||||
cmd.Stdout = os.Stdout
|
|
||||||
cmd.Stderr = os.Stderr
|
|
||||||
} else {
|
|
||||||
cmd.Stdout = ioutil.Discard
|
|
||||||
cmd.Stderr = ioutil.Discard
|
|
||||||
}
|
|
||||||
go func() {
|
|
||||||
trace(cmd)
|
|
||||||
cmd.Run()
|
|
||||||
}()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// poll the docker daemon until it is started. This ensures the daemon is
|
// poll the docker daemon until it is started. This ensures the daemon is
|
||||||
@@ -154,9 +143,6 @@ func (p Plugin) Exec() error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
const dockerExe = "/usr/local/bin/docker"
|
|
||||||
const dockerdExe = "/usr/local/bin/dockerd"
|
|
||||||
|
|
||||||
// helper function to create the docker login command.
|
// helper function to create the docker login command.
|
||||||
func commandLogin(login Login) *exec.Cmd {
|
func commandLogin(login Login) *exec.Cmd {
|
||||||
if login.Email != "" {
|
if login.Email != "" {
|
||||||
@@ -230,6 +216,9 @@ func commandBuild(build Build) *exec.Cmd {
|
|||||||
for _, arg := range build.Args {
|
for _, arg := range build.Args {
|
||||||
args = append(args, "--build-arg", arg)
|
args = append(args, "--build-arg", arg)
|
||||||
}
|
}
|
||||||
|
for _, host := range build.AddHost {
|
||||||
|
args = append(args, "--add-host", host)
|
||||||
|
}
|
||||||
if build.Target != "" {
|
if build.Target != "" {
|
||||||
args = append(args, "--target", build.Target)
|
args = append(args, "--target", build.Target)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,4 @@
|
|||||||
|
FROM plugins/docker:linux-amd64
|
||||||
|
|
||||||
|
ADD release/linux/amd64/drone-acr /bin/
|
||||||
|
ENTRYPOINT ["/usr/local/bin/dockerd-entrypoint.sh", "/bin/drone-acr"]
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
FROM plugins/docker:linux-arm
|
||||||
|
|
||||||
|
ADD release/linux/arm/drone-acr /bin/
|
||||||
|
ENTRYPOINT ["/usr/local/bin/dockerd-entrypoint.sh", "/bin/drone-acr"]
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
FROM plugins/docker:linux-arm64
|
||||||
|
|
||||||
|
ADD release/linux/arm64/drone-acr /bin/
|
||||||
|
ENTRYPOINT ["/usr/local/bin/dockerd-entrypoint.sh", "/bin/drone-acr"]
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
# escape=`
|
||||||
|
FROM plugins/docker:windows-1803
|
||||||
|
|
||||||
|
LABEL maintainer="Drone.IO Community <drone-dev@googlegroups.com>" `
|
||||||
|
org.label-schema.name="Drone ACR" `
|
||||||
|
org.label-schema.vendor="Drone.IO Community" `
|
||||||
|
org.label-schema.schema-version="1.0"
|
||||||
|
|
||||||
|
ADD release/windows/amd64/drone-acr.exe C:/bin/drone-acr.exe
|
||||||
|
ENTRYPOINT [ "C:\\bin\\drone-acr.exe" ]
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
# escape=`
|
||||||
|
FROM plugins/docker:windows-1809
|
||||||
|
|
||||||
|
LABEL maintainer="Drone.IO Community <drone-dev@googlegroups.com>" `
|
||||||
|
org.label-schema.name="Drone ACR" `
|
||||||
|
org.label-schema.vendor="Drone.IO Community" `
|
||||||
|
org.label-schema.schema-version="1.0"
|
||||||
|
|
||||||
|
ADD release/windows/amd64/drone-acr.exe C:/bin/drone-acr.exe
|
||||||
|
ENTRYPOINT [ "C:\\bin\\drone-acr.exe" ]
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
image: plugins/acr:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}}
|
||||||
|
{{#if build.tags}}
|
||||||
|
tags:
|
||||||
|
{{#each build.tags}}
|
||||||
|
- {{this}}
|
||||||
|
{{/each}}
|
||||||
|
{{/if}}
|
||||||
|
manifests:
|
||||||
|
-
|
||||||
|
image: plugins/acr:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-amd64
|
||||||
|
platform:
|
||||||
|
architecture: amd64
|
||||||
|
os: linux
|
||||||
|
-
|
||||||
|
image: plugins/acr:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-arm64
|
||||||
|
platform:
|
||||||
|
architecture: arm64
|
||||||
|
os: linux
|
||||||
|
variant: v8
|
||||||
|
-
|
||||||
|
image: plugins/acr:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-arm
|
||||||
|
platform:
|
||||||
|
architecture: arm
|
||||||
|
os: linux
|
||||||
|
variant: v7
|
||||||
|
-
|
||||||
|
image: plugins/acr:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}windows-1803
|
||||||
|
platform:
|
||||||
|
architecture: amd64
|
||||||
|
os: windows
|
||||||
|
version: 1803
|
||||||
|
-
|
||||||
|
image: plugins/acr:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}windows-1809
|
||||||
|
platform:
|
||||||
|
architecture: amd64
|
||||||
|
os: windows
|
||||||
|
version: 1809
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
FROM docker:18.06-dind
|
FROM docker:18.09.0-dind
|
||||||
|
|
||||||
ADD release/linux/amd64/drone-docker /bin/
|
ADD release/linux/amd64/drone-docker /bin/
|
||||||
ENTRYPOINT ["/usr/local/bin/dockerd-entrypoint.sh", "/bin/drone-docker"]
|
ENTRYPOINT ["/usr/local/bin/dockerd-entrypoint.sh", "/bin/drone-docker"]
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
FROM arm32v6/docker:18.06-dind
|
FROM arm32v6/docker:18.09.0-dind
|
||||||
|
|
||||||
ADD release/linux/arm/drone-docker /bin/
|
ADD release/linux/arm/drone-docker /bin/
|
||||||
ENTRYPOINT ["/usr/local/bin/dockerd-entrypoint.sh", "/bin/drone-docker"]
|
ENTRYPOINT ["/usr/local/bin/dockerd-entrypoint.sh", "/bin/drone-docker"]
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
FROM arm64v8/docker:18.06-dind
|
FROM arm64v8/docker:18.09.0-dind
|
||||||
|
|
||||||
ADD release/linux/arm64/drone-docker /bin/
|
ADD release/linux/arm64/drone-docker /bin/
|
||||||
ENTRYPOINT ["/usr/local/bin/dockerd-entrypoint.sh", "/bin/drone-docker"]
|
ENTRYPOINT ["/usr/local/bin/dockerd-entrypoint.sh", "/bin/drone-docker"]
|
||||||
|
|||||||
@@ -13,7 +13,8 @@ RUN [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tl
|
|||||||
Invoke-WebRequest $('https://github.com/docker/toolbox/releases/download/v{0}/DockerToolbox-{0}.exe' -f $env:DOCKER_VERSION) -OutFile 'dockertoolbox.exe' -UseBasicParsing
|
Invoke-WebRequest $('https://github.com/docker/toolbox/releases/download/v{0}/DockerToolbox-{0}.exe' -f $env:DOCKER_VERSION) -OutFile 'dockertoolbox.exe' -UseBasicParsing
|
||||||
RUN /innoextract.exe dockertoolbox.exe
|
RUN /innoextract.exe dockertoolbox.exe
|
||||||
|
|
||||||
FROM plugins/base:windows-1809
|
FROM mcr.microsoft.com/windows/nanoserver:1809
|
||||||
|
USER ContainerAdministrator
|
||||||
|
|
||||||
LABEL maintainer="Drone.IO Community <drone-dev@googlegroups.com>" `
|
LABEL maintainer="Drone.IO Community <drone-dev@googlegroups.com>" `
|
||||||
org.label-schema.name="Drone Docker" `
|
org.label-schema.name="Drone Docker" `
|
||||||
|
|||||||
@@ -0,0 +1,28 @@
|
|||||||
|
# escape=`
|
||||||
|
FROM mcr.microsoft.com/windows/servercore:1903 as download
|
||||||
|
|
||||||
|
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
|
||||||
|
|
||||||
|
ENV DOCKER_VERSION 19.03.1
|
||||||
|
|
||||||
|
RUN Invoke-WebRequest 'http://constexpr.org/innoextract/files/innoextract-1.7-windows.zip' -OutFile 'innoextract.zip' -UseBasicParsing ; `
|
||||||
|
Expand-Archive innoextract.zip -DestinationPath C:\ ; `
|
||||||
|
Remove-Item -Path innoextract.zip
|
||||||
|
|
||||||
|
RUN [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 ; `
|
||||||
|
Invoke-WebRequest $('https://github.com/docker/toolbox/releases/download/v{0}/DockerToolbox-{0}.exe' -f $env:DOCKER_VERSION) -OutFile 'dockertoolbox.exe' -UseBasicParsing
|
||||||
|
RUN /innoextract.exe dockertoolbox.exe
|
||||||
|
|
||||||
|
FROM mcr.microsoft.com/windows/nanoserver:1903
|
||||||
|
USER ContainerAdministrator
|
||||||
|
|
||||||
|
LABEL maintainer="Drone.IO Community <drone-dev@googlegroups.com>" `
|
||||||
|
org.label-schema.name="Drone Docker" `
|
||||||
|
org.label-schema.vendor="Drone.IO Community" `
|
||||||
|
org.label-schema.schema-version="1.0"
|
||||||
|
|
||||||
|
RUN mkdir C:\bin
|
||||||
|
COPY --from=download /windows/system32/netapi32.dll /windows/system32/netapi32.dll
|
||||||
|
COPY --from=download /app/docker.exe C:/bin/docker.exe
|
||||||
|
ADD release/windows/amd64/drone-docker.exe C:/bin/drone-docker.exe
|
||||||
|
ENTRYPOINT [ "C:\\bin\\drone-docker.exe" ]
|
||||||
@@ -30,8 +30,14 @@ manifests:
|
|||||||
os: windows
|
os: windows
|
||||||
version: 1803
|
version: 1803
|
||||||
-
|
-
|
||||||
image: plugins/docker:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}windows-1809
|
image: plugins/docker:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}windows-1809-amd64
|
||||||
platform:
|
platform:
|
||||||
architecture: amd64
|
architecture: amd64
|
||||||
os: windows
|
os: windows
|
||||||
version: 1809
|
version: 1809
|
||||||
|
-
|
||||||
|
image: plugins/docker:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}windows-1903-amd64
|
||||||
|
platform:
|
||||||
|
architecture: amd64
|
||||||
|
os: windows
|
||||||
|
version: 1903
|
||||||
|
|||||||
@@ -183,6 +183,7 @@ local golang_image(os, version) =
|
|||||||
password: { from_secret: 'docker_password' },
|
password: { from_secret: 'docker_password' },
|
||||||
spec: 'docker/' + name + '/manifest.tmpl',
|
spec: 'docker/' + name + '/manifest.tmpl',
|
||||||
ignore_missing: true,
|
ignore_missing: true,
|
||||||
|
auto_tag: true,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user