rename web/ to admin/, along with the web-named build and cli identifiers
This commit is contained in:
+22
-22
@@ -119,39 +119,39 @@ jobs:
|
||||
with:
|
||||
node-version: ${{ env.NODE_VERSION }}
|
||||
cache: npm
|
||||
cache-dependency-path: web/package-lock.json
|
||||
cache-dependency-path: admin/package-lock.json
|
||||
|
||||
- name: Install dependencies
|
||||
working-directory: web
|
||||
working-directory: admin
|
||||
run: npm ci
|
||||
|
||||
- name: Check formatting
|
||||
working-directory: web
|
||||
working-directory: admin
|
||||
run: npm run format:check
|
||||
|
||||
- name: Lint
|
||||
working-directory: web
|
||||
working-directory: admin
|
||||
run: npm run lint
|
||||
|
||||
- name: Typecheck
|
||||
working-directory: web
|
||||
working-directory: admin
|
||||
run: npm run typecheck
|
||||
|
||||
- name: Run tests
|
||||
working-directory: web
|
||||
working-directory: admin
|
||||
run: npm test
|
||||
|
||||
- name: Build
|
||||
working-directory: web
|
||||
working-directory: admin
|
||||
run: npm run build
|
||||
|
||||
# The licence inventory has to cover every package whose bytes ship, and
|
||||
# the lockfile does not answer that question: it lists what could be
|
||||
# reached, not what rollup kept. The bundle is what this reads. The logic
|
||||
# lives in web/scripts/, unit-tested by `npm test`, so it runs on a laptop
|
||||
# lives in admin/scripts/, unit-tested by `npm test`, so it runs on a laptop
|
||||
# exactly as it runs here (milestone-14 deviation 24).
|
||||
- name: Assert the packages bundled into web/dist are the recorded ones
|
||||
working-directory: web
|
||||
- name: Assert the packages bundled into admin/dist are the recorded ones
|
||||
working-directory: admin
|
||||
run: npm run assert-bundled
|
||||
|
||||
# The package and container jobs consume this bundle instead of building
|
||||
@@ -164,16 +164,16 @@ jobs:
|
||||
#
|
||||
# A later move to v4 has to add `include-hidden-files: true` here.
|
||||
# `npm run build` writes the freshness stamp to the hidden file
|
||||
# web/dist/.src-hash (milestone-15 ruling 5), and v4.4.0 and later drop
|
||||
# admin/dist/.src-hash (milestone-15 ruling 5), and v4.4.0 and later drop
|
||||
# dotfiles by default. It is inactive today — v3 keeps them, and the
|
||||
# package job's target path skips the stamp check regardless — but a move
|
||||
# to v4 that also pointed the download back at web/dist would fail with
|
||||
# "web/dist is stale".
|
||||
# to v4 that also pointed the download back at admin/dist would fail with
|
||||
# "admin/dist is stale".
|
||||
- name: Upload the built web UI
|
||||
uses: actions/upload-artifact@c24449f33cd45d4826c6702db7e49f7cdb9b551d # v3.2.1-node20
|
||||
with:
|
||||
name: web-dist
|
||||
path: web/dist
|
||||
name: admin-dist
|
||||
path: admin/dist
|
||||
if-no-files-found: error
|
||||
|
||||
package:
|
||||
@@ -201,22 +201,22 @@ jobs:
|
||||
- name: Create the fetch temp dir zig assumes
|
||||
run: mkdir -p "${ZIG_GLOBAL_CACHE_DIR:?}/tmp"
|
||||
|
||||
# `dist` refuses web/dist-placeholder (ruling 4), so a real bundle has to
|
||||
# `dist` refuses admin/dist-placeholder (ruling 4), so a real bundle has to
|
||||
# exist before the packaging gate runs. It arrives from the frontend job,
|
||||
# already formatted, linted, typechecked, tested and licence-checked.
|
||||
#
|
||||
# The target is deliberately not `web/dist`: build.zig runs the freshness
|
||||
# The target is deliberately not `admin/dist`: build.zig runs the freshness
|
||||
# stamp check for that exact path and no other (milestone-15 ruling 5),
|
||||
# and the check shells out to `node`. Here it would buy nothing — the
|
||||
# stamp hashes the web/ sources, not the bundle, so against a checkout of
|
||||
# stamp hashes the admin/ sources, not the bundle, so against a checkout of
|
||||
# the same commit that built the bundle it can only agree. An explicit
|
||||
# path is the case build.zig documents for a bundle built elsewhere, and
|
||||
# taking it keeps node out of this job entirely.
|
||||
- name: Download the web UI built by the frontend job
|
||||
uses: actions/download-artifact@ad191675b41f6a5b46da9a048cb6893812da158b # v3.1.0-node20
|
||||
with:
|
||||
name: web-dist
|
||||
path: web-dist-ci
|
||||
name: admin-dist
|
||||
path: admin-dist-ci
|
||||
|
||||
# Ruling 2: build.zig.zon is the only place besides the tag that carries
|
||||
# the version, and ruling 5 makes verify-dist assert the two agree. The
|
||||
@@ -239,7 +239,7 @@ jobs:
|
||||
zig build dist \
|
||||
-Dversion-string="$CI_VERSION" \
|
||||
-Dgit-commit="$GITHUB_SHA" \
|
||||
-Dweb-dist=web-dist-ci \
|
||||
-Dadmin-dist=admin-dist-ci \
|
||||
-Doptimize=ReleaseSafe
|
||||
|
||||
# verify-dist owns every assert the CI shell used to make: ELF static
|
||||
@@ -255,7 +255,7 @@ jobs:
|
||||
zig build verify-dist \
|
||||
-Dversion-string="$CI_VERSION" \
|
||||
-Dgit-commit="$GITHUB_SHA" \
|
||||
-Dweb-dist=web-dist-ci \
|
||||
-Dadmin-dist=admin-dist-ci \
|
||||
-Doptimize=ReleaseSafe
|
||||
|
||||
# deploy/docker/Dockerfile copies both of these trees and nothing else
|
||||
|
||||
Reference in New Issue
Block a user