46 lines
2.1 KiB
Bash
Executable File
46 lines
2.1 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
|
|
VERSION=$1
|
|
|
|
if [ -z $VERSION ]; then
|
|
echo "Provide a version tag, -1|--major, -2|--minor or -3|--revision"
|
|
exit 1
|
|
fi
|
|
|
|
[[ "$VERSION" == "--major" || "$VERSION" == "-1" ]] && VERSION=$(skopeo list-tags docker://git.demus.dk/demus/rawhide-minimal-rpmbuild | jq -r '.Tags - [ "latest" ] | max | split(".") | map(tonumber) | [ .[0]+1, 0, 0 ] | join(".")')
|
|
[[ "$VERSION" == "--minor" || "$VERSION" == "-2" ]] && VERSION=$(skopeo list-tags docker://git.demus.dk/demus/rawhide-minimal-rpmbuild | jq -r '.Tags - [ "latest" ] | max | split(".") | map(tonumber) | [ .[0], .[1]+1, 0 ] | join(".")')
|
|
[[ "$VERSION" == "--revision" || "$VERSION" == "-3" ]] && VERSION=$(skopeo list-tags docker://git.demus.dk/demus/rawhide-minimal-rpmbuild | jq -r '.Tags - [ "latest" ] | max | split(".") | map(tonumber) | [ .[0], .[1], .[2]+1 ] | join(".")')
|
|
read RAWHIDE < rawhide.release
|
|
readarray -t TARGETS < targets.lst
|
|
for RELEASE_TUPLE in "${TARGETS[@]}"; do
|
|
set -- $RELEASE_TUPLE
|
|
FEDORA_NUMERAL=$1
|
|
ARCH=$2
|
|
REGEX='^[0-9]+$'
|
|
[[ "$FEDORA_NUMERAL" =~ $REGEX ]] && REPO="fc$FEDORA_NUMERAL" || REPO=${RAWHIDE}
|
|
[[ "$FEDORA_NUMERAL" =~ $REGEX ]] && RELEASE="f$FEDORA_NUMERAL" || RELEASE="$FEDORA_NUMERAL"
|
|
|
|
for SUBDIR in $(ls -d fedora-minimal-*); do
|
|
echo "Building from upstream tag :${FEDORA_NUMERAL}${ARCH} for release $RELEASE using repo demus-$REPO"
|
|
IMAGE_POSTFIX=${SUBDIR#fedora-}
|
|
docker buildx build \
|
|
--progress plain \
|
|
--tag git.demus.dk/demus/${RELEASE}-${IMAGE_POSTFIX}:${VERSION} \
|
|
--tag git.demus.dk/demus/${RELEASE}-${IMAGE_POSTFIX}:latest \
|
|
--build-arg DOCKER_TAG=${FEDORA_NUMERAL}${ARCH} \
|
|
--build-arg REPO=${REPO} \
|
|
--build-arg VERSION=${VERSION} \
|
|
--build-arg GITHASH=$(git rev-parse HEAD) \
|
|
--build-arg TIMESTAMP=$(date -u +%Y-%m-%dT%H:%M:%SZ) \
|
|
--network=host \
|
|
${SUBDIR}
|
|
|
|
docker push git.demus.dk/demus/${RELEASE}-${IMAGE_POSTFIX}:latest
|
|
docker push git.demus.dk/demus/${RELEASE}-${IMAGE_POSTFIX}:${VERSION}
|
|
echo
|
|
echo ----------------------
|
|
echo
|
|
done
|
|
done
|