mirror of
https://github.com/hanzo-apps/gallery.git
synced 2026-10-30 14:48:38 +00:00
32 lines
1.2 KiB
YAML
32 lines
1.2 KiB
YAML
# Canonical CI/CD config for gallery.hanzo.ai — the one file the hanzoai/ci
|
|
# reusable (.github/workflows/cicd.yml) reads.
|
|
#
|
|
# It runs on the forge pull mirror git.hanzo.ai/hanzo-inc/gallery, whose org
|
|
# holds the KMS identity, so this repository carries no key. GitHub Actions is
|
|
# off here: one publisher.
|
|
#
|
|
# The gate is the full static export, which is unusually complete here because
|
|
# the site is GENERATED: `prebuild` runs scripts/gen-templates-json.mjs, and
|
|
# `next build` with output:export then renders every template page from that
|
|
# JSON. A template that no longer parses, a route that cannot be statically
|
|
# rendered, or a generator that writes malformed JSON all fail the build —
|
|
# none of them are visible from a typecheck alone, which is why tsc runs first
|
|
# but not instead.
|
|
test:
|
|
- name: build
|
|
run: |
|
|
set -e
|
|
pnpm install --frozen-lockfile
|
|
npx tsc --noEmit
|
|
pnpm build
|
|
|
|
# The export is bytes: out/ published to s3://hanzo-sites/hanzo/gallery, which
|
|
# the gallery.hanzo.ai router serves with no pod. The publish job is a fresh
|
|
# runner that ran none of the gates above, so the build installs its own
|
|
# dependencies.
|
|
site:
|
|
slug: gallery
|
|
dir: out
|
|
build: pnpm install --frozen-lockfile && pnpm build
|
|
on: [main]
|