#!/usr/bin/env cached-nix-shell
#!nix-shell ci.nix -i "just --justfile"

docker_registry := "registry.fly.io/alanpearce-eu"
listen_address := env_var_or_default("LISTEN_ADDRESS", "::1")
tls_port := env_var_or_default("TLS_PORT", "8443")
port := env_var_or_default("PORT", "8080")

default:
	@just --list --justfile {{ justfile() }} --unsorted

clean:
	rm -fr public

check-licenses:
	go-licenses check ./...

check-links:
	hyperlink public --sources content

update-all:
	npins update
	go get -u all

build:
	templ generate
	go run ./cmd/build

dev:
	systemfd -s https::{{ listen_address }}:{{ tls_port }} -s http::{{ listen_address }}:{{ port }} -- modd

ci: build check-links

cd *DEPLOY_FLAGS:
	fly auth docker
	templ generate
	fly deploy --image $(KO_DOCKER_REPO={{ docker_registry }} ko build --bare ./cmd/server) {{ DEPLOY_FLAGS }}