Some checks failed
Weekly Rebuild (CVE Updates) / rebuild (apko/base.yaml, base) (push) Failing after 2s
Weekly Rebuild (CVE Updates) / rebuild (apko/build.yaml, build) (push) Failing after 3s
Weekly Rebuild (CVE Updates) / rebuild (apko/dotnet-runtime.yaml, dotnet-runtime) (push) Failing after 2s
Weekly Rebuild (CVE Updates) / rebuild (apko/dotnet-sdk.yaml, dotnet-sdk) (push) Failing after 4s
Weekly Rebuild (CVE Updates) / rebuild (apko/flutter-sdk.yaml, flutter-sdk) (push) Failing after 2s
Check for Upstream Stable Updates / Check .NET stable releases (push) Successful in 1s
Check for Upstream Stable Updates / Check Wolfi package updates (push) Failing after 3s
Check for Upstream Stable Updates / Check Flutter stable releases (push) Failing after 1s
Check for Upstream Stable Updates / Rebuild and push all variants (apko/base.yaml, base) (push) Has been skipped
Check for Upstream Stable Updates / Rebuild and push all variants (apko/build.yaml, build) (push) Has been skipped
Check for Upstream Stable Updates / Rebuild and push all variants (apko/dotnet-runtime.yaml, dotnet-runtime) (push) Has been skipped
Check for Upstream Stable Updates / Rebuild and push all variants (apko/dotnet-sdk.yaml, dotnet-sdk) (push) Has been skipped
Check for Upstream Stable Updates / Rebuild and push all variants (apko/flutter-sdk.yaml, flutter-sdk) (push) Has been skipped
Check for Upstream Stable Updates / Create release for new Flutter version (push) Has been skipped
- Rename flutter variant to flutter-sdk for clarity across all configs and pipelines - Add curl to dotnet-runtime apko config (needed to bootstrap .NET runtime installation in downstream Dockerfiles) - Add daily update-check pipeline that monitors Flutter stable channel and Wolfi package updates, auto-creates releases for new Flutter versions and rebuilds all variants with latest packages Tested all variants with real workloads: - dotnet-sdk: dotnet new console + build + run - dotnet-runtime: multi-stage build, run prebuilt app - flutter-sdk: flutter create + build web --release Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
68 lines
2.0 KiB
Makefile
68 lines
2.0 KiB
Makefile
REGISTRY ?= svrnty/base-distro
|
|
APKO_FLAGS ?= --log-level info
|
|
|
|
# Image variants
|
|
VARIANTS = base build dotnet-runtime dotnet-sdk flutter-sdk
|
|
|
|
.PHONY: all clean $(VARIANTS) test
|
|
|
|
all: $(VARIANTS)
|
|
|
|
# Build each variant with apko
|
|
base:
|
|
apko build $(APKO_FLAGS) apko/base.yaml $(REGISTRY):base base.tar
|
|
docker load < base.tar
|
|
@echo "Built $(REGISTRY):base"
|
|
|
|
build:
|
|
apko build $(APKO_FLAGS) apko/build.yaml $(REGISTRY):build build.tar
|
|
docker load < build.tar
|
|
@echo "Built $(REGISTRY):build"
|
|
|
|
dotnet-runtime:
|
|
apko build $(APKO_FLAGS) apko/dotnet-runtime.yaml $(REGISTRY):dotnet-runtime dotnet-runtime.tar
|
|
docker load < dotnet-runtime.tar
|
|
@echo "Built $(REGISTRY):dotnet-runtime"
|
|
|
|
dotnet-sdk:
|
|
apko build $(APKO_FLAGS) apko/dotnet-sdk.yaml $(REGISTRY):dotnet-sdk dotnet-sdk.tar
|
|
docker load < dotnet-sdk.tar
|
|
@echo "Built $(REGISTRY):dotnet-sdk"
|
|
|
|
flutter-sdk:
|
|
apko build $(APKO_FLAGS) apko/flutter-sdk.yaml $(REGISTRY):flutter-sdk flutter-sdk.tar
|
|
docker load < flutter-sdk.tar
|
|
@echo "Built $(REGISTRY):flutter-sdk"
|
|
|
|
# Test all images
|
|
test: all
|
|
@echo "=== Testing base ==="
|
|
docker run --rm $(REGISTRY):base /bin/sh -c "cat /etc/os-release"
|
|
@echo ""
|
|
@echo "=== Testing build ==="
|
|
docker run --rm $(REGISTRY):build bash -c "git --version && curl --version | head -1"
|
|
@echo ""
|
|
@echo "=== Testing dotnet-runtime ==="
|
|
docker run --rm $(REGISTRY):dotnet-runtime /bin/sh -c "ls /usr/lib/libicu*"
|
|
@echo ""
|
|
@echo "=== Testing dotnet-sdk ==="
|
|
docker run --rm $(REGISTRY):dotnet-sdk bash -c "git --version && ls /usr/lib/libicu*"
|
|
@echo ""
|
|
@echo "=== Testing flutter-sdk ==="
|
|
docker run --rm $(REGISTRY):flutter-sdk bash -c "git --version && echo PATH=\$$PATH"
|
|
@echo ""
|
|
@echo "All tests passed!"
|
|
|
|
# Show image sizes
|
|
sizes: all
|
|
@echo "=== Image Sizes ==="
|
|
@for variant in $(VARIANTS); do \
|
|
echo -n "$(REGISTRY):$$variant "; \
|
|
docker image inspect $(REGISTRY):$$variant --format '{{.Size}}' | numfmt --to=iec 2>/dev/null || \
|
|
docker image inspect $(REGISTRY):$$variant --format '{{.Size}}'; \
|
|
done
|
|
|
|
clean:
|
|
rm -f *.tar
|
|
rm -rf packages/
|