alpine/.drone.yml

376 lines
6.9 KiB
YAML
Raw Normal View History

2020-10-28 09:05:49 +01:00
---
kind: pipeline
name: test
platform:
os: linux
arch: amd64
steps:
- name: markdownlint
image: thegeeklab/markdownlint-cli
commands:
- markdownlint 'README.md'
2020-10-28 09:17:36 +01:00
trigger:
ref:
- refs/heads/main
2020-10-28 09:17:36 +01:00
- refs/tags/**
2021-01-10 15:19:12 +01:00
- refs/pull/**
2020-10-28 09:17:36 +01:00
2020-02-22 16:21:17 +01:00
---
kind: pipeline
2021-01-10 15:19:12 +01:00
name: build-container-amd64
2020-02-22 16:21:17 +01:00
platform:
os: linux
arch: amd64
steps:
2021-01-09 23:40:11 +01:00
- name: wait-for
2021-01-09 23:42:17 +01:00
image: thegeeklab/wait-for
2021-01-09 23:40:11 +01:00
commands:
2021-01-10 15:19:12 +01:00
- wait-for dind-amd64:2376
2021-01-09 23:40:11 +01:00
environment:
WAITFOR_TIMEOUT: 60
2020-02-22 16:21:17 +01:00
- name: dryrun
2021-01-10 21:52:12 +01:00
image: thegeeklab/drone-docker-buildx
settings:
config:
from_secret: docker_config
dockerfile: docker/Dockerfile.amd64
dry_run: true
password:
from_secret: docker_password
platforms:
- linux/amd64
repo: thegeeklab/buildx-alpine
username:
from_secret: docker_username
2020-02-22 16:21:17 +01:00
when:
ref:
- refs/pull/**
2021-01-09 23:52:31 +01:00
depends_on:
- wait-for
2020-02-22 16:21:17 +01:00
2020-05-04 19:47:03 +02:00
- name: tags
2020-09-21 22:11:02 +02:00
image: thegeeklab/docker-autotag
2020-05-04 19:47:03 +02:00
environment:
DOCKER_AUTOTAG_FORCE_LATEST: True
DOCKER_AUTOTAG_IGNORE_PRERELEASE: True
DOCKER_AUTOTAG_OUTPUT_FILE: .tags
DOCKER_AUTOTAG_VERSION: ${DRONE_TAG}
when:
ref:
- refs/heads/main
2020-05-04 19:47:03 +02:00
- refs/tags/**
2021-01-09 23:52:31 +01:00
depends_on:
- wait-for
2020-05-04 19:47:03 +02:00
2020-08-30 15:37:45 +02:00
- name: publish-dockerhub
2021-01-10 00:43:01 +01:00
image: jdrouet/docker-with-buildx:stable
commands:
- docker login -u "$$DOCKER_USERNAME" -p "$$DOCKER_PASSWORD"
- docker buildx create --use
2021-01-10 15:54:34 +01:00
- docker buildx build --push --platform linux/amd64 --tag thegeeklab/buildx-alpine:amd64 -f "$$DOCKERFILE" .
2021-01-10 00:43:01 +01:00
environment:
2021-01-10 15:50:58 +01:00
DOCKERFILE: Dockerfile.amd64
2021-01-10 00:43:01 +01:00
DOCKER_PASSWORD:
2020-02-22 16:21:17 +01:00
from_secret: docker_password
2021-01-10 00:43:01 +01:00
DOCKER_USERNAME:
2020-02-22 16:21:17 +01:00
from_secret: docker_username
2021-01-10 00:43:01 +01:00
volumes:
2021-01-10 15:19:12 +01:00
- name: dockersock-amd64
2021-01-10 00:43:01 +01:00
path: /var/run
2020-08-30 15:37:45 +02:00
when:
ref:
- refs/heads/main
2020-08-30 15:37:45 +02:00
- refs/tags/**
depends_on:
- tags
2020-02-22 16:21:17 +01:00
2021-01-10 15:19:12 +01:00
services:
- name: dind-amd64
image: docker:dind
privileged: true
volumes:
- name: dockersock-amd64
path: /var/run
volumes:
- name: dockersock-amd64
temp: {}
trigger:
ref:
- refs/heads/main
- refs/tags/**
- refs/pull/**
depends_on:
- test
---
kind: pipeline
2021-01-10 15:22:47 +01:00
name: build-container-arm64
2021-01-10 15:19:12 +01:00
platform:
os: linux
arch: amd64
steps:
- name: wait-for
image: thegeeklab/wait-for
commands:
- wait-for dind-arm64_v8:2376
environment:
WAITFOR_TIMEOUT: 60
- name: dryrun
2021-01-10 21:52:12 +01:00
image: thegeeklab/drone-docker-buildx
settings:
config:
from_secret: docker_config
dockerfile: docker/Dockerfile.arm64
dry_run: true
password:
from_secret: docker_password
platforms:
- linux/arm64/v8
repo: thegeeklab/buildx-alpine
username:
from_secret: docker_username
2021-01-10 15:19:12 +01:00
when:
ref:
- refs/pull/**
depends_on:
- wait-for
- name: tags
image: thegeeklab/docker-autotag
environment:
DOCKER_AUTOTAG_FORCE_LATEST: True
DOCKER_AUTOTAG_IGNORE_PRERELEASE: True
DOCKER_AUTOTAG_OUTPUT_FILE: .tags
DOCKER_AUTOTAG_VERSION: ${DRONE_TAG}
2020-02-22 16:21:17 +01:00
when:
ref:
2021-01-10 15:19:12 +01:00
- refs/heads/main
2020-02-22 16:21:17 +01:00
- refs/tags/**
2020-08-30 15:37:45 +02:00
depends_on:
2021-01-10 15:19:12 +01:00
- wait-for
- name: publish-dockerhub
image: jdrouet/docker-with-buildx:stable
commands:
- docker login -u "$$DOCKER_USERNAME" -p "$$DOCKER_PASSWORD"
- docker buildx create --use
2021-01-10 15:54:34 +01:00
- docker buildx build --push --platform linux/arm64/v8 --tag thegeeklab/buildx-alpine:arm64 -f "$$DOCKERFILE" .
2021-01-10 15:19:12 +01:00
environment:
2021-01-10 15:50:58 +01:00
DOCKERFILE: Dockerfile.arm64
2021-01-10 15:19:12 +01:00
DOCKER_PASSWORD:
from_secret: docker_password
DOCKER_USERNAME:
from_secret: docker_username
volumes:
- name: dockersock-arm64_v8
path: /var/run
when:
ref:
- refs/heads/main
- refs/tags/**
depends_on:
- tags
2020-02-22 16:21:17 +01:00
2021-01-09 23:35:00 +01:00
services:
2021-01-10 15:19:12 +01:00
- name: dind-arm64_v8
2021-01-09 23:35:00 +01:00
image: docker:dind
2021-01-09 23:46:43 +01:00
privileged: true
2021-01-10 00:04:18 +01:00
volumes:
2021-01-10 15:19:12 +01:00
- name: dockersock-arm64_v8
2021-01-10 00:04:18 +01:00
path: /var/run
volumes:
2021-01-10 15:19:12 +01:00
- name: dockersock-arm64_v8
2021-01-10 00:04:18 +01:00
temp: {}
2021-01-09 23:35:00 +01:00
2020-10-17 16:08:36 +02:00
trigger:
ref:
- refs/heads/main
2021-01-10 15:19:12 +01:00
- refs/tags/**
2020-10-17 16:08:36 +02:00
- refs/pull/**
2021-01-10 15:19:12 +01:00
depends_on:
- test
---
kind: pipeline
2021-01-10 15:22:47 +01:00
name: build-container-arm
2021-01-10 15:19:12 +01:00
platform:
os: linux
arch: amd64
steps:
- name: wait-for
image: thegeeklab/wait-for
commands:
- wait-for dind-arm_v7:2376
environment:
WAITFOR_TIMEOUT: 60
- name: dryrun
2021-01-10 21:52:12 +01:00
image: thegeeklab/drone-docker-buildx
settings:
config:
from_secret: docker_config
dockerfile: docker/Dockerfile.arm
dry_run: true
password:
from_secret: docker_password
platforms:
- linux/arm/v7
repo: thegeeklab/buildx-alpine
username:
from_secret: docker_username
2021-01-10 15:19:12 +01:00
when:
ref:
- refs/pull/**
depends_on:
- wait-for
- name: tags
image: thegeeklab/docker-autotag
environment:
DOCKER_AUTOTAG_FORCE_LATEST: True
DOCKER_AUTOTAG_IGNORE_PRERELEASE: True
DOCKER_AUTOTAG_OUTPUT_FILE: .tags
DOCKER_AUTOTAG_VERSION: ${DRONE_TAG}
when:
ref:
- refs/heads/main
- refs/tags/**
depends_on:
- wait-for
- name: publish-dockerhub
image: jdrouet/docker-with-buildx:stable
commands:
- docker login -u "$$DOCKER_USERNAME" -p "$$DOCKER_PASSWORD"
- docker buildx create --use
2021-01-10 15:54:34 +01:00
- docker buildx build --push --platform linux/arm/v7 --tag thegeeklab/buildx-alpine:arm -f "$$DOCKERFILE" .
2021-01-10 15:19:12 +01:00
environment:
2021-01-10 15:50:58 +01:00
DOCKERFILE: Dockerfile.arm
2021-01-10 15:19:12 +01:00
DOCKER_PASSWORD:
from_secret: docker_password
DOCKER_USERNAME:
from_secret: docker_username
volumes:
- name: dockersock-arm_v7
path: /var/run
when:
ref:
- refs/heads/main
- refs/tags/**
depends_on:
- tags
services:
- name: dind-arm_v7
image: docker:dind
privileged: true
volumes:
- name: dockersock-arm_v7
path: /var/run
volumes:
- name: dockersock-arm_v7
temp: {}
trigger:
ref:
- refs/heads/main
2020-10-17 16:08:36 +02:00
- refs/tags/**
2021-01-10 15:19:12 +01:00
- refs/pull/**
2020-10-17 16:08:36 +02:00
2020-10-28 09:17:36 +01:00
depends_on:
- test
2020-02-22 16:21:17 +01:00
---
kind: pipeline
name: notifications
platform:
os: linux
arch: amd64
steps:
2021-01-10 15:19:12 +01:00
- name: manifest-dockerhub
image: plugins/manifest
settings:
auto_tag: true
ignore_missing: true
password:
from_secret: docker_password
spec: manifest.tmpl
username:
from_secret: docker_username
when:
status:
- success
2020-08-30 16:07:37 +02:00
- name: pushrm-dockerhub
pull: always
2020-08-28 09:03:09 +02:00
image: chko/docker-pushrm:1
2020-02-22 16:21:17 +01:00
environment:
2020-08-28 09:36:02 +02:00
DOCKER_PASS:
from_secret: docker_password
DOCKER_USER:
2020-02-22 16:21:17 +01:00
from_secret: docker_username
2020-09-02 21:07:49 +02:00
PUSHRM_FILE: README.md
PUSHRM_SHORT: Rootless Alpine base image
2021-01-10 15:27:29 +01:00
PUSHRM_TARGET: thegeeklab/buildx-alpine
2020-08-30 16:07:37 +02:00
when:
status:
- success
2020-02-22 16:21:17 +01:00
- name: matrix
image: plugins/matrix
settings:
homeserver:
from_secret: matrix_homeserver
password:
from_secret: matrix_password
roomid:
from_secret: matrix_roomid
template: "Status: **{{ build.status }}**<br/> Build: [{{ repo.Owner }}/{{ repo.Name }}]({{ build.link }}) ({{ build.branch }}) by {{ build.author }}<br/> Message: {{ build.message }}"
username:
from_secret: matrix_username
when:
status:
- success
- failure
2021-01-10 15:19:12 +01:00
image_pull_secrets:
- docker_config
2020-02-22 16:21:17 +01:00
trigger:
ref:
- refs/heads/main
2020-02-22 16:21:17 +01:00
- refs/tags/**
status:
- success
- failure
depends_on:
2021-01-10 15:22:47 +01:00
- build-container-amd64
- build-container-arm64
- build-container-arm
2020-02-22 16:21:17 +01:00
2021-01-10 15:27:29 +01:00
---
kind: signature
2021-01-10 21:52:12 +01:00
hmac: 0d15eda6b01d23551b72f8e12348bb1028d19c0b30cf28be2f38e737a3f9a51d
2021-01-10 15:27:29 +01:00
2020-02-22 16:21:17 +01:00
...