You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
339 lines
6.8 KiB
339 lines
6.8 KiB
--- |
|
kind: pipeline |
|
name: test |
|
|
|
platform: |
|
os: linux |
|
arch: amd64 |
|
|
|
steps: |
|
- name: markdownlint |
|
image: thegeeklab/markdownlint-cli |
|
commands: |
|
- markdownlint 'README.md' |
|
|
|
trigger: |
|
ref: |
|
- refs/heads/main |
|
- refs/tags/** |
|
- refs/pull/** |
|
|
|
--- |
|
kind: pipeline |
|
name: build-container-amd64 |
|
|
|
platform: |
|
os: linux |
|
arch: amd64 |
|
|
|
steps: |
|
- name: tags |
|
image: thegeeklab/docker-autotag |
|
environment: |
|
DOCKER_AUTOTAG_FORCE_LATEST: True |
|
DOCKER_AUTOTAG_IGNORE_PRERELEASE: True |
|
DOCKER_AUTOTAG_OUTPUT_FILE: .tags |
|
DOCKER_AUTOTAG_SUFFIX: amd64 |
|
DOCKER_AUTOTAG_VERSION: ${DRONE_TAG} |
|
|
|
- name: dryrun |
|
image: thegeeklab/drone-docker-buildx:20 |
|
settings: |
|
dockerfile: Dockerfile.amd64 |
|
dry_run: true |
|
platforms: |
|
- linux/amd64 |
|
repo: thegeeklab/${DRONE_REPO_NAME} |
|
when: |
|
ref: |
|
- refs/pull/** |
|
depends_on: |
|
- tags |
|
|
|
- name: publish-dockerhub |
|
image: thegeeklab/drone-docker-buildx:20 |
|
settings: |
|
dockerfile: Dockerfile.amd64 |
|
password: |
|
from_secret: docker_password |
|
repo: thegeeklab/${DRONE_REPO_NAME} |
|
username: |
|
from_secret: docker_username |
|
when: |
|
ref: |
|
- refs/heads/main |
|
- refs/tags/** |
|
depends_on: |
|
- tags |
|
|
|
- name: publish-quay |
|
image: thegeeklab/drone-docker-buildx:20 |
|
settings: |
|
dockerfile: Dockerfile.amd64 |
|
password: |
|
from_secret: quay_password |
|
registry: quay.io |
|
repo: quay.io/thegeeklab/${DRONE_REPO_NAME} |
|
username: |
|
from_secret: quay_username |
|
when: |
|
ref: |
|
- refs/heads/main |
|
- refs/tags/** |
|
depends_on: |
|
- tags |
|
|
|
trigger: |
|
ref: |
|
- refs/heads/main |
|
- refs/tags/** |
|
- refs/pull/** |
|
|
|
depends_on: |
|
- test |
|
|
|
--- |
|
kind: pipeline |
|
name: build-container-arm64 |
|
|
|
platform: |
|
os: linux |
|
arch: amd64 |
|
|
|
steps: |
|
- name: tags |
|
image: thegeeklab/docker-autotag |
|
environment: |
|
DOCKER_AUTOTAG_FORCE_LATEST: True |
|
DOCKER_AUTOTAG_IGNORE_PRERELEASE: True |
|
DOCKER_AUTOTAG_OUTPUT_FILE: .tags |
|
DOCKER_AUTOTAG_SUFFIX: arm64 |
|
DOCKER_AUTOTAG_VERSION: ${DRONE_TAG} |
|
|
|
- name: dryrun |
|
image: thegeeklab/drone-docker-buildx:20 |
|
settings: |
|
dockerfile: Dockerfile.arm64 |
|
dry_run: true |
|
platforms: |
|
- linux/arm64/v8 |
|
repo: thegeeklab/${DRONE_REPO_NAME} |
|
when: |
|
ref: |
|
- refs/pull/** |
|
depends_on: |
|
- tags |
|
|
|
- name: publish-dockerhub |
|
image: thegeeklab/drone-docker-buildx:20 |
|
settings: |
|
dockerfile: Dockerfile.arm64 |
|
password: |
|
from_secret: docker_password |
|
repo: thegeeklab/${DRONE_REPO_NAME} |
|
username: |
|
from_secret: docker_username |
|
when: |
|
ref: |
|
- refs/heads/main |
|
- refs/tags/** |
|
depends_on: |
|
- tags |
|
|
|
- name: publish-quay |
|
image: thegeeklab/drone-docker-buildx:20 |
|
settings: |
|
dockerfile: Dockerfile.arm64 |
|
password: |
|
from_secret: quay_password |
|
registry: quay.io |
|
repo: quay.io/thegeeklab/${DRONE_REPO_NAME} |
|
username: |
|
from_secret: quay_username |
|
when: |
|
ref: |
|
- refs/heads/main |
|
- refs/tags/** |
|
depends_on: |
|
- tags |
|
|
|
trigger: |
|
ref: |
|
- refs/heads/main |
|
- refs/tags/** |
|
- refs/pull/** |
|
|
|
depends_on: |
|
- test |
|
|
|
--- |
|
kind: pipeline |
|
name: build-container-arm |
|
|
|
platform: |
|
os: linux |
|
arch: amd64 |
|
|
|
steps: |
|
- name: tags |
|
image: thegeeklab/docker-autotag |
|
environment: |
|
DOCKER_AUTOTAG_FORCE_LATEST: True |
|
DOCKER_AUTOTAG_IGNORE_PRERELEASE: True |
|
DOCKER_AUTOTAG_OUTPUT_FILE: .tags |
|
DOCKER_AUTOTAG_SUFFIX: arm |
|
DOCKER_AUTOTAG_VERSION: ${DRONE_TAG} |
|
|
|
- name: dryrun |
|
image: thegeeklab/drone-docker-buildx:20 |
|
settings: |
|
dockerfile: Dockerfile.arm |
|
dry_run: true |
|
platforms: |
|
- linux/arm/v7 |
|
repo: thegeeklab/${DRONE_REPO_NAME} |
|
when: |
|
ref: |
|
- refs/pull/** |
|
depends_on: |
|
- tags |
|
|
|
- name: publish-dockerhub |
|
image: thegeeklab/drone-docker-buildx:20 |
|
settings: |
|
dockerfile: Dockerfile.arm |
|
password: |
|
from_secret: docker_password |
|
repo: thegeeklab/${DRONE_REPO_NAME} |
|
username: |
|
from_secret: docker_username |
|
when: |
|
ref: |
|
- refs/heads/main |
|
- refs/tags/** |
|
depends_on: |
|
- tags |
|
|
|
- name: publish-quay |
|
image: thegeeklab/drone-docker-buildx:20 |
|
settings: |
|
dockerfile: Dockerfile.arm |
|
password: |
|
from_secret: quay_password |
|
registry: quay.io |
|
repo: quay.io/thegeeklab/${DRONE_REPO_NAME} |
|
username: |
|
from_secret: quay_username |
|
when: |
|
ref: |
|
- refs/heads/main |
|
- refs/tags/** |
|
depends_on: |
|
- tags |
|
|
|
trigger: |
|
ref: |
|
- refs/heads/main |
|
- refs/tags/** |
|
- refs/pull/** |
|
|
|
depends_on: |
|
- test |
|
|
|
--- |
|
kind: pipeline |
|
name: notifications |
|
|
|
platform: |
|
os: linux |
|
arch: amd64 |
|
|
|
steps: |
|
- name: manifest-dockerhub |
|
image: plugins/manifest |
|
settings: |
|
ignore_missing: true |
|
password: |
|
from_secret: docker_password |
|
spec: manifest.tmpl |
|
username: |
|
from_secret: docker_username |
|
when: |
|
status: |
|
- success |
|
|
|
- name: manifest-quay |
|
image: plugins/manifest |
|
settings: |
|
ignore_missing: true |
|
password: |
|
from_secret: quay_password |
|
spec: manifest-quay.tmpl |
|
username: |
|
from_secret: quay_username |
|
when: |
|
status: |
|
- success |
|
|
|
- name: pushrm-dockerhub |
|
pull: always |
|
image: chko/docker-pushrm:1 |
|
environment: |
|
DOCKER_PASS: |
|
from_secret: docker_password |
|
DOCKER_USER: |
|
from_secret: docker_username |
|
PUSHRM_FILE: README.md |
|
PUSHRM_SHORT: Custom image for nginx HTTP server |
|
PUSHRM_TARGET: thegeeklab/${DRONE_REPO_NAME} |
|
when: |
|
status: |
|
- success |
|
|
|
- name: pushrm-quay |
|
pull: always |
|
image: chko/docker-pushrm:1 |
|
environment: |
|
APIKEY__QUAY_IO: |
|
from_secret: quay_token |
|
PUSHRM_FILE: README.md |
|
PUSHRM_TARGET: quay.io/thegeeklab/${DRONE_REPO_NAME} |
|
when: |
|
status: |
|
- success |
|
|
|
- name: matrix |
|
image: thegeeklab/drone-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 }}){{#if build.Branch}} ({{ build.Branch }}){{/if}} by {{ commit.Author }}<br/> Message: {{ commit.Message.Title }}" |
|
username: |
|
from_secret: matrix_username |
|
when: |
|
status: |
|
- success |
|
- failure |
|
|
|
trigger: |
|
ref: |
|
- refs/heads/main |
|
- refs/tags/** |
|
status: |
|
- success |
|
- failure |
|
|
|
depends_on: |
|
- build-container-amd64 |
|
- build-container-arm64 |
|
- build-container-arm |
|
|
|
--- |
|
kind: signature |
|
hmac: 520ad7bace767f38980a5e1c8a47c547dbd49a5e2f4260dfa0616c7f9d6964ee |
|
|
|
...
|
|
|