wrote pipeline file
This commit is contained in:
parent
13c72fe2f6
commit
f8180eace1
@ -1,6 +1,62 @@
|
||||
variables:
|
||||
&vars
|
||||
export REGISTRY=code.balsillie.net && \
|
||||
export REGISTRY_USER=michael && \
|
||||
export ORGANIZATION=containers && \
|
||||
export SOURCE_ORGANIZATION=mirrors && \
|
||||
export REPO=matrix-service-synapse && \
|
||||
export BUILD_ARGS="PYTHON_VERSION=3.10" && \
|
||||
export DOCKERFILE="docker/Dockerfile" && \
|
||||
export CONTEXT=.
|
||||
|
||||
workspace:
|
||||
base: /git
|
||||
path: pipeline
|
||||
|
||||
clone:
|
||||
git:
|
||||
image: woodpeckerci/plugin-git
|
||||
|
||||
pipeline:
|
||||
matrix-service-synapse:
|
||||
check-tag:
|
||||
image: debian:11-slim
|
||||
pull: true
|
||||
commands:
|
||||
- echo "triggered"
|
||||
- echo $TAG
|
||||
- if [[ $TAG =~ ^v1\...\..rc.$ ]]
|
||||
then
|
||||
echo "Tag ${TAG} appears to be a release candidate, terminating build."
|
||||
exit 1
|
||||
elif [[ $TAG =~ ^v1\...\..$ ]]
|
||||
then
|
||||
echo "Tag ${TAG} appears to be a release tag, proceeding."
|
||||
exit 0
|
||||
else
|
||||
echo "Unable to determine nature of tag, terminating build."
|
||||
exit 1
|
||||
fi
|
||||
clone-source:
|
||||
image: docker:git
|
||||
commands:
|
||||
- *vars
|
||||
- git clone "https://${REGISTRY}/${SOURCE_ORGANIZATION}/${REPO}.git" /git/$REPO
|
||||
- cd /git/$REPO
|
||||
- git checkout $TAG
|
||||
docker-build:
|
||||
image: docker:latest
|
||||
secrets:
|
||||
- source: REGISTRY_PASSWORD
|
||||
target: REGISTRY_PASSWORD
|
||||
commands:
|
||||
- *vars
|
||||
- export DOCKER_BUILDKIT=1
|
||||
- cd /git/$REPO
|
||||
- echo $REGISTRY_PASSWORD | docker login $REGISTRY -u $REGISTRY_USER --password-stdin
|
||||
- docker build \
|
||||
-t $REGISTRY/$ORGANIZATION/$REPO:$TAG \
|
||||
-t $REGISTRY/$ORGANIZATION/$REPO:${date +%F} \
|
||||
-t $REGISTRY/$ORGANIZATION/$REPO:latest \
|
||||
--pull \
|
||||
--build-arg $BUILD_ARGS \
|
||||
-f $DOCKERFILE \
|
||||
$CONTEXT
|
||||
- docker push $REGISTRY/$ORGANIZATION/$REPO:latest
|
Loading…
Reference in New Issue
Block a user