mirror of
https://github.com/hanzo-apps/one.git
synced 2026-10-30 14:47:53 +00:00
runs-on was a bare scalar. Jobs written that way queue and are never picked up — link and quest have waited since 10 August, painter since the 5th, none of them with a single success — while repos writing the same label as a sequence drain within seconds of a push on the same fleet. Same label, same runners, different shape. It fails silently: nothing errors, the job simply never starts, so the lane looks configured and does nothing.
49 lines
1.5 KiB
YAML
49 lines
1.5 KiB
YAML
name: deploy
|
|
|
|
# hanzo.one, served from the object-store plane.
|
|
#
|
|
# `vite build` writes dist/, so the site action syncs that directory to
|
|
# s3://hanzo-sites/hanzo/hanzo-one and the hanzo-one route in universe serves it.
|
|
#
|
|
# This replaces an image build. The Dockerfile did one thing — copy dist/ into
|
|
# ghcr.io/hanzoai/static — which is a container built so a binary can serve a
|
|
# folder, and that is the shape the Sites plane exists to retire. It also never
|
|
# produced anything: the image needed a REGISTRY_TOKEN the org does not set, and
|
|
# no operator CR or Deployment for it has ever existed, so the host answered 522
|
|
# against a Cloudflare Pages project outside this account while nothing of ours
|
|
# was ready to take it.
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
workflow_dispatch:
|
|
|
|
concurrency:
|
|
group: deploy-hanzo-one
|
|
cancel-in-progress: false
|
|
|
|
jobs:
|
|
site:
|
|
runs-on: [hanzo-build-linux-amd64]
|
|
timeout-minutes: 30
|
|
permissions:
|
|
contents: read
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: pnpm/action-setup@v4
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version: 22
|
|
cache: pnpm
|
|
- run: pnpm install --frozen-lockfile
|
|
- run: pnpm build
|
|
|
|
- name: Publish to the Sites plane
|
|
uses: https://git.hanzo.ai/hanzoai/ci/.github/actions/site@v1
|
|
with:
|
|
slug: hanzo-one
|
|
dir: dist
|
|
env:
|
|
KMS_CLIENT_ID: ${{ secrets.KMS_CLIENT_ID }}
|
|
KMS_CLIENT_SECRET: ${{ secrets.KMS_CLIENT_SECRET }}
|