omni-pca-docs/Makefile
Ryan Malloy c5e72c679b Initial scaffold
Astro 6 + Starlight 0.39 documentation site for omni-pca, organised
around the Diatáxis framework (Tutorials / How-to / Reference /
Explanation), plus a chronological Journey page and Changelog.

Theme: muted slate-blue with amber accents. astro-icon + lucide
preinstalled. Astro telemetry and Starlight devToolbar both off.

Deployment: multi-stage Dockerfile (node:25-alpine builder ->
caddy:2-alpine runtime), inner Caddy serves static dist on :80,
outer caddy-docker-proxy on the host terminates TLS for
hai-omni-pro-ii.warehack.ing.
2026-05-10 16:42:12 -06:00

51 lines
1.2 KiB
Makefile

# hai-omni-docs Makefile
#
# Local dev: make dev (Astro dev server, hot reload, no docker)
# Smoke build: make ci (npm run build — verify static output)
# Deploy: make build && make up
#
# Reads .env if present so DOMAIN / COMPOSE_PROJECT propagate to compose.
SHELL := /bin/bash
COMPOSE := docker compose
.PHONY: help dev install ci build up down restart logs ps clean
help:
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) \
| awk 'BEGIN {FS = ":.*?## "}; {printf " \033[36m%-12s\033[0m %s\n", $$1, $$2}'
install: ## Install npm dependencies
npm install
dev: ## Start Astro dev server with hot reload (host)
npm run dev
ci: ## Smoke-test the static build locally
npm run build
build: ## Build the docker image
$(COMPOSE) build
up: ## Start the docs container in the background
$(COMPOSE) up -d
@echo
@echo "==> Tailing recent logs ..."
@$(COMPOSE) logs -f --tail=20
down: ## Stop and remove the docs container
$(COMPOSE) down
restart: ## Recreate the docs container
$(COMPOSE) up -d --force-recreate
@$(COMPOSE) logs -f --tail=20
logs: ## Follow logs
$(COMPOSE) logs -f --tail=50
ps: ## Show container status
$(COMPOSE) ps
clean: ## Remove build artifacts
rm -rf dist .astro