# This is the main interface into the repository for CI automation/reproducible builds.
#
# All targets assume they're running on a Linux or macOS host with Bash and Docker installed.
# Any other dependencies should be satisfied by containers.
#

.DEFAULT_GOAL := help

DEBUG = [DEBUG]
INFO = [INFO]
SUCCESS = [INFO]

CURRENT_UID := $(shell id -u)

compose := docker-compose

.PHONY: all
all: build

.PHONY: build
build: ## Build the static site from the container image
	@echo "$(INFO) Building the wayfinder static site files"
	$(compose) run --build -e CURRENT_UID=${CURRENT_UID} --rm build-wayfinder
	@echo "$(SUCCESS) Successfully built!"

.PHONY: clean
clean: ## Remove build artifacts
	rm -f artifact/v*

.PHONY: help
help: ## Display this help (default)
	@echo "Targets:"
	@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort \
	| awk 'BEGIN {FS = ":.*?## "}; {printf "  %-17s%s\n", $$1, $$2}'