docker/.woodpecker/build.yaml

45 lines
No EOL
2.1 KiB
YAML

when:
event: [manual, push, pull_request]
branch: main
path: [.woodpecker/build.yaml, .woodpecker/test.yaml, .woodpecker/push.yaml, Dockerfile, Dockerfile.dockerignore, entrypoint.sh]
services:
- name: dockerd
image: kokuwaio/dockerd:rootless
ports: [2375]
privileged: true
steps:
build-linux:
depends_on: [init]
image: kokuwaio/docker-cli
commands:
- docker login
- docker buildx create --platform=linux/amd64,linux/arm64 --driver=docker-container --use
- docker buildx build .
--push
--tag=ci-registry.schnabel.org/kokuwaio/dockerd:$CI_PIPELINE_NUMBER
--platform=linux/amd64,linux/arm64
--cache-from=type=registry,ref=ci-registry.schnabel.org/cache/dockerd:refs_heads_main
--cache-from=type=registry,ref=ci-registry.schnabel.org/cache/dockerd:$CI_COMMIT_SHA
--cache-from=type=registry,ref=ci-registry.schnabel.org/cache/dockerd:${CI_COMMIT_REF//\//_}
--cache-to=type=registry,ref=ci-registry.schnabel.org/cache/dockerd:$CI_COMMIT_SHA,mode=max,compression=zstd
--cache-to=type=registry,ref=ci-registry.schnabel.org/cache/dockerd:${CI_COMMIT_REF//\//_},mode=max,compression=zstd
--label=org.opencontainers.image.title="Docker daemon"
--label=org.opencontainers.image.description="Docker daemon for usage in Woodpecker CI"
--label=org.opencontainers.image.url=$CI_REPO_URL
--label=org.opencontainers.image.documentation=$CI_REPO_URL
--label=org.opencontainers.image.source=$CI_REPO_CLONE_URL
--label=org.opencontainers.image.vendor=kokuwa.io
--label=org.opencontainers.image.licenses=GPL-3.0-or-later
export BUILDX_EXPERIMENTAL=1
export CI_PIPELINE_NUMBER=88
export CI_COMMIT_SHA=123
export CI_COMMIT_REF=refs-heads-main
docker buildx build . \
--push \
--tag=ci-registry.schnabel.org/kokuwaio/dockerd:$CI_PIPELINE_NUMBER \
--platform=linux/amd64,linux/arm64 \
--cache-to=type=registry,ref=ci-registry.schnabel.org/cache/dockerd:${CI_COMMIT_REF//\//},mode=max,compression=zstd