48 lines
1.0 KiB
Bash
Executable File
48 lines
1.0 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
cd "$(dirname "$0")"
|
|
|
|
IMAGE=mediaeng/llmproxy
|
|
PLATFORM=linux/arm64
|
|
|
|
LAST_TAG=$(git describe --tags --abbrev=0 2>/dev/null || true)
|
|
HEAD_TAG=$(git tag --points-at HEAD | head -1)
|
|
|
|
if [ -n "$HEAD_TAG" ]; then
|
|
echo "HEAD bereits getaggt: $HEAD_TAG"
|
|
read -rp "Neuer Tag [${HEAD_TAG}]: " INPUT
|
|
VERSION="${INPUT:-$HEAD_TAG}"
|
|
else
|
|
echo "Letzter Tag: ${LAST_TAG:-kein Tag}"
|
|
read -rp "Neuer Tag: " INPUT
|
|
if [ -z "$INPUT" ]; then
|
|
echo "Kein Tag angegeben, breche ab."
|
|
exit 1
|
|
fi
|
|
VERSION="$INPUT"
|
|
fi
|
|
|
|
if [ "$VERSION" != "$HEAD_TAG" ]; then
|
|
git tag "$VERSION"
|
|
git push origin "$VERSION"
|
|
echo "Tag '$VERSION' gesetzt und gepusht."
|
|
fi
|
|
|
|
echo ""
|
|
echo "Image : $IMAGE"
|
|
echo "Platform: $PLATFORM"
|
|
echo "Tags : $IMAGE:$VERSION $IMAGE:latest"
|
|
echo ""
|
|
|
|
docker buildx build \
|
|
--platform "$PLATFORM" \
|
|
--push \
|
|
-t "$IMAGE:$VERSION" \
|
|
-t "$IMAGE:latest" \
|
|
.
|
|
|
|
echo ""
|
|
echo "Fertig. Gepusht:"
|
|
echo " docker pull $IMAGE:$VERSION"
|
|
echo " docker pull $IMAGE:latest"
|