All checks were successful
Test CI / test (pull_request) Successful in 4s
- Replace per-container build-<name>.yaml with single build-container.yaml - Workflow triggers on *-v* tags, parses container name from tag prefix - Checks containers/<name>/Dockerfile exists, skips gracefully if not - Rename container-release to container-tag-and-release for clarity - Update container-list to scan containers/ directory Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
45 lines
1.2 KiB
Bash
Executable file
45 lines
1.2 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
#MISE description="List available containers and their recent tags"
|
|
|
|
set -euo pipefail
|
|
|
|
REGISTRY="registry.tail8d86e.ts.net"
|
|
CONTAINER_DIR="containers"
|
|
|
|
echo "Container Images"
|
|
echo "================"
|
|
echo ""
|
|
|
|
# Find all container directories with Dockerfiles
|
|
for dir in "$CONTAINER_DIR"/*/; do
|
|
[[ -d "$dir" ]] || continue
|
|
[[ -f "$dir/Dockerfile" ]] || continue
|
|
|
|
# Extract container name from directory
|
|
container=$(basename "$dir")
|
|
image="blumeops/$container"
|
|
|
|
echo "📦 $container"
|
|
echo " Image: $REGISTRY/$image"
|
|
echo " Path: $dir"
|
|
|
|
# Query zot for recent tags
|
|
tags=$(curl -sf "https://$REGISTRY/v2/$image/tags/list" 2>/dev/null | jq -r '.tags // [] | .[]' | grep -E '^v[0-9]' | sort -V | tail -4 || true)
|
|
|
|
if [[ -n "$tags" ]]; then
|
|
echo " Recent tags:"
|
|
echo "$tags" | while read -r tag; do
|
|
echo " - $tag"
|
|
done
|
|
else
|
|
echo " Recent tags: (none)"
|
|
fi
|
|
echo ""
|
|
done
|
|
|
|
echo "---"
|
|
echo "To release a new version:"
|
|
echo " mise run container-tag-and-release <container> <version>"
|
|
echo ""
|
|
echo "Example:"
|
|
echo " mise run container-tag-and-release nettest v1.0.0"
|