From b060ec68af811c0ffb4b1ec22cec9c5f442621e3 Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 20 Mar 2026 10:06:24 +0000 Subject: [PATCH] Add start.sh and Makefile build-only targets start.sh builds via 'make build' (platform auto-detected) then starts services detached with 'docker compose up -d'. Makefile gains build/build- targets that build images without starting, mirroring the existing up/ targets. --- infra/Makefile | 21 ++++++++++++++++++++- infra/start.sh | 7 +++++++ 2 files changed, 27 insertions(+), 1 deletion(-) create mode 100755 infra/start.sh diff --git a/infra/Makefile b/infra/Makefile index 3bf0a72..2a611c8 100644 --- a/infra/Makefile +++ b/infra/Makefile @@ -10,10 +10,29 @@ # up-armv6 — linux/arm/v6 (Pi Zero, Pi 1) COMPOSE = docker compose +BUILD = $(COMPOSE) build UP = $(COMPOSE) up --build -.PHONY: up up-amd64 up-x64 up-win up-arm64 up-armv7 up-armv6 down logs +.PHONY: build build-amd64 build-x64 build-win build-arm64 build-armv7 build-armv6 \ + up up-amd64 up-x64 up-win up-arm64 up-armv7 up-armv6 down logs +# ── Build only (no start) ───────────────────────────────────────────────────── +build: + $(BUILD) + +build-amd64 build-x64 build-win: + DOCKER_DEFAULT_PLATFORM=linux/amd64 $(BUILD) + +build-arm64: + DOCKER_DEFAULT_PLATFORM=linux/arm64 $(BUILD) + +build-armv7: + DOCKER_DEFAULT_PLATFORM=linux/arm/v7 $(BUILD) + +build-armv6: + DOCKER_DEFAULT_PLATFORM=linux/arm/v6 $(BUILD) + +# ── Build + start (foreground) ──────────────────────────────────────────────── up: $(UP) diff --git a/infra/start.sh b/infra/start.sh new file mode 100755 index 0000000..822e569 --- /dev/null +++ b/infra/start.sh @@ -0,0 +1,7 @@ +#!/usr/bin/env bash +set -euo pipefail + +cd "$(dirname "$0")" + +make build +docker compose up -d