mkdocs/.woodpecker/build.yml

62 lines
2.1 KiB
YAML
Raw Permalink Normal View History

2023-11-13 10:31:34 +01:00
---
2024-01-24 20:01:47 +01:00
depends_on:
- lint
2023-11-13 10:31:34 +01:00
2024-02-07 21:08:11 +01:00
clone:
git:
image: "woodpeckerci/plugin-git:2.5.0"
settings:
depth: 9999 # wird benötigt um die Commits zählen zu können
lfs: false
partial: false
steps:
2024-02-07 21:08:11 +01:00
set_variables:
2024-05-06 23:54:01 +02:00
image: "registry.mgrote.net/allzweckcontainer:latest"
2024-02-07 21:08:11 +01:00
commands:
# set version
- |
MAJOR="1"
MINOR="1"
PATCH="$(git rev-list --count "$CI_COMMIT_BRANCH")"
VERSION="v$MAJOR.$MINOR.$PATCH"
if [ "$CI_COMMIT_BRANCH" != "main" ] && [ "$CI_COMMIT_BRANCH" != "master" ]; then
VERSION=$VERSION-dev
fi
echo "VERSION=$VERSION" >> .variables
# set date
- |
DATE=$(date --iso-8601=seconds)
echo "DATE=$DATE" >> .variables
2024-05-06 23:54:01 +02:00
when:
2024-05-14 21:44:37 +02:00
- event: [push, pull_request, cron]
2024-05-06 23:54:01 +02:00
evaluate: 'CI_COMMIT_AUTHOR_EMAIL != "renovate@mgrote.net"'
2024-02-07 21:08:11 +01:00
build_and_push: # damit dieser Step laufen kann muss das Repo in der Woodpecker-GUI "privilegiert" sein
image: "docker:26.1.3"
2024-02-07 21:08:11 +01:00
volumes:
- /var/run/docker.sock:/var/run/docker.sock
commands:
- cat .variables
- source .variables
2024-02-17 15:36:49 +01:00
# https://unix.stackexchange.com/questions/748633/error-multiple-platforms-feature-is-currently-not-supported-for-docker-driver
- docker buildx create --use --platform=linux/amd64 --name multi-platform-builder
- docker buildx inspect --bootstrap
2024-02-07 21:08:11 +01:00
- |
docker buildx build \
2024-02-17 15:36:49 +01:00
--platform=linux/amd64 \
--push \
--tag registry.mgrote.net/${CI_REPO_NAME}:${CI_COMMIT_SHA:0:8} \
--tag registry.mgrote.net/${CI_REPO_NAME}:${CI_COMMIT_BRANCH} \
--tag registry.mgrote.net/${CI_REPO_NAME}:latest \
--tag registry.mgrote.net/${CI_REPO_NAME}:$VERSION \
2024-02-07 21:08:11 +01:00
--label org.opencontainers.image.url=$CI_REPO_URL \
--label org.opencontainers.image.source=$CI_REPO_URL \
--label org.opencontainers.image.revision=$CI_COMMIT_SHA \
--label org.opencontainers.image.created=$DATE \
--file Dockerfile .
2024-02-06 20:15:48 +01:00
when:
2024-05-14 21:44:37 +02:00
- event: [push, pull_request, cron]
2024-05-06 23:54:01 +02:00
evaluate: 'CI_COMMIT_AUTHOR_EMAIL != "renovate@mgrote.net"'
2024-02-06 20:21:10 +01:00
...