code wiki / _hdl_build / nx_publish.nx
nx_publish.nx
buildroot/runtime/_hdl_build/nx_publish.nx
about
nx_publish.nx -- the team's DOCUMENT -> BUILD -> DEPLOY publish pipeline (operator: "build the
capability to document and build and deploy this ask INTO the nishi team if you wont do it"). The team
now OWNS the whole loop and EXECUTES it: document (catalog/provenance) -> build (web-builder) ->
deploy (sovereign ssh_put_file + backup + verify) -> check LIVENESS. It is HONEST about the outcome:
LIVE -- deployed AND the live route actually serves it
STAGED -- deployed + verified on the host, but the live daemon does not route it yet (the real
result here: sites.elf has COMPILED-IN routes, so a doc-root file is not served)
BLOCKED -- a pre-step failed; nothing deployed
So the team executes everything it safely can and names exactly what is left. license_tier: ORIGINAL
dependencies 1 imports · 1 importers
imports: nx_syscalls.nx
imported by: nx_publish_test.nx
structs
| none |
consts
| 13 | const PUB_BLOCKED: i64 = 0 |
| 14 | const PUB_STAGED: i64 = 1 |
| 15 | const PUB_LIVE: i64 = 2 |
| 33 | const PUB_GAP_NONE: i64 = 0 |
| 34 | const PUB_GAP_ROUTE: i64 = 1 // live daemon does not route the file (compiled-in routes -> needs rebuild or wiki) |
functions
| 18 | func pub_ready(documented: i64, built: i64) -> i64 |
| 25 | func pub_verdict(documented: i64, built: i64, transferred: i64, route_serves: i64) -> i64 |
| 35 | func pub_blocker(verdict: i64) -> i64 { if verdict == PUB_STAGED { return PUB_GAP_ROUTE } return PUB_GAP_NONE } called by 1: main |
| 38 | func pub_practices(doc: i64, build: i64, backup: i64, transfer: i64, verify: i64, rollback: i64) -> i64 called by 1: main |