Files
btest-rs/scripts/push-docker.sh
Siavash Sameni f1f597d308
All checks were successful
CI / test (push) Successful in 1m5s
Fix Docker registry auth: use GITEA_USER instead of 'token'
Gitea container registry requires actual username, not 'token'.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-31 14:59:23 +04:00

48 lines
1.2 KiB
Bash
Executable File

#!/usr/bin/env bash
# Build and push Docker image to Gitea registry.
# Run on a machine with Docker (your Mac).
#
# Usage:
# ./scripts/push-docker.sh v0.1.0
set -euo pipefail
cd "$(dirname "$0")/.."
# Load .env if present
if [[ -f .env ]]; then
set -a
source .env
set +a
fi
TAG="${1:?Usage: $0 <tag> (e.g. v0.1.0)}"
REGISTRY="${GITEA_URL:-https://git.manko.yoga}"
REGISTRY_HOST="${REGISTRY#https://}"
REGISTRY_HOST="${REGISTRY_HOST#http://}"
IMAGE="${REGISTRY_HOST}/manawenuz/btest-rs"
echo "=== Building Docker image for ${IMAGE}:${TAG} ==="
# Build the image
docker build -t "${IMAGE}:${TAG}" -t "${IMAGE}:latest" .
echo ""
echo "=== Pushing to ${REGISTRY_HOST} ==="
# Login if needed (uses GITEA_USER + GITEA_TOKEN from .env)
if [[ -n "${GITEA_TOKEN:-}" ]]; then
DOCKER_USER="${GITEA_USER:?Set GITEA_USER in .env (your Gitea username)}"
echo "${GITEA_TOKEN}" | docker login "${REGISTRY_HOST}" -u "${DOCKER_USER}" --password-stdin
fi
docker push "${IMAGE}:${TAG}"
docker push "${IMAGE}:latest"
echo ""
echo "Done! Images pushed:"
echo " ${IMAGE}:${TAG}"
echo " ${IMAGE}:latest"
echo ""
echo "Run with:"
echo " docker run --rm -p 2000:2000 -p 2001-2100:2001-2100/udp ${IMAGE}:${TAG} -s -v"