Files
nxdns/justfile
T
mokhtar 7e6cb507d2
Gates / frontend (push) Successful in 1m11s
Gates / test (push) Successful in 1m38s
Gates / test-aarch64 (push) Successful in 6m31s
Gates / container (push) Successful in 9s
CI / gates (push) Successful in 26m52s
Gates / package (push) Successful in 5m27s
release cut: bump-kind justfile recipe and a compiled, tested cut tool
2026-08-21 23:34:13 +02:00

53 lines
1.8 KiB
Makefile

# Repetitive workflows. Anything a release or a review runs twice belongs here,
# so a step cannot be forgotten by hand.
#
# Recipes only. Every decision the release makes lives in tools/cut.zig, which
# `zig build test` type-checks and covers; this file exists so nobody has to
# remember the invocation.
# every recipe, described
default:
@just --list
# unit suite
test:
zig build test
# unit + integration suite, which already runs the whole ordinary suite
itest:
zig build test -Dintegration
# The committed npm scripts, never npx: npx can fetch an unpinned package.
# admin: typecheck, tests, lint, formatting
admin-check:
cd admin && npm run typecheck && npm run test && npm run lint && npm run format:check
# admin/src/lib/contractSamples.gen.ts is a committed golden of live API bodies
# the admin tests assert against; this is the invocation AGENTS.md documents.
# regenerate the admin contract goldens from live responses
goldens:
zig build test -Dintegration -Dcontract-samples-out="$PWD/admin/src/lib/contractSamples.gen.ts"
# the binary with the real admin UI embedded (a plain `zig build` embeds a placeholder page)
build:
cd admin && npm run build
zig build -Dadmin-dist=admin/dist
# Not the CI gate: this skips the admin `npm run build` and `assert-bundled`,
# the cross-target builds and verify-dist.
# the fast local checks
verify: itest admin-check
zig fmt --check build.zig src tools
# kind is major, minor or patch: the version itself is derived from
# build.zig.zon, never typed, because a published tag cannot be corrected.
# Requires a clean tree, master, and a dated CHANGELOG.md section for the
# derived version. Preflight, bump, push, wait for CI, signed tag, watch the run.
# cut a release
release kind:
zig build cut -- {{kind}}