1 Commits
Author SHA1 Message Date
sneak bb00d57720 Tag the image build in the checklist's script/cibuild item (closes #125)
check / check (push) Canceled after 0s
The new-repository checklist gave script/cibuild's image build without a
tag, so a repository written from it left a dangling image behind on
every run, and it used $version without saying where it comes from. The
item now gives the build as the canonical script/cibuild runs it, with
-t "$tag", and names the two steps the script runs before it, each on
its own line: the version from git describe --tags --always --dirty
(unknown if empty) and the tag from script/projectname. The other docker
build commands the checklists and REPO_POLICIES.md give for script/
already matched their scripts.

Model: opus-5-5
2026-10-07 10:32:42 +00:00
2 changed files with 13 additions and 9 deletions
+8 -6
View File
@@ -21,13 +21,15 @@ fmt-check, and commit.
# Completed Steps # Completed Steps
- 2026-10-07: The `script/cibuild` item in `NEW_REPO_CHECKLIST.md` now gives the - 2026-10-07: The `script/cibuild` item in `NEW_REPO_CHECKLIST.md` now matches
image build with its tag, `-t "$tag"`, assigned from `script/projectname` on the canonical `script/cibuild` (issue 125). Its image build carries the tag,
its own line, as the canonical `script/cibuild` runs it (issue 125). A `-t "$tag"`, and the item says that `$version` comes from
`git describe --tags --always --dirty` (`unknown` if empty) and `$tag` from
`script/projectname`, each assigned on its own line before the build. A
repository written from the checklist got an untagged build, which leaves a repository written from the checklist got an untagged build, which leaves a
dangling image behind on every run. The other `docker build` commands the dangling image behind on every run, and was never told where `$version` comes
checklists and `REPO_POLICIES.md` give for `script/` already matched their from. The other `docker build` commands the checklists and `REPO_POLICIES.md`
scripts. give for `script/` already matched their scripts.
- 2026-10-07: `script/lint` and `script/test` now build with - 2026-10-07: `script/lint` and `script/test` now build with
`--output type=cacheonly` in place of a tag (issue 123), so they still run `--output type=cacheonly` in place of a tag (issue 123), so they still run
their phase uncached and fail on a failing step but write no image. Nothing their phase uncached and fail on a failing step but write no image. Nothing
+5 -3
View File
@@ -165,9 +165,11 @@ are thin shims calling them. Model scripts:
- [ ] `script/cibuild` — cd to repo root, run `script/bootstrap`, run - [ ] `script/cibuild` — cd to repo root, run `script/bootstrap`, run
`script/check`, then `script/check`, then
`docker build --no-cache --build-arg VERSION="$version" -t "$tag" .` (what `docker build --no-cache --build-arg VERSION="$version" -t "$tag" .` (what
CI runs), with `$tag` assigned from `script/projectname` on its own line CI runs), with `$version` from `git describe --tags --always --dirty`
before the build. The bootstrap is required: CI checks out and runs this (`unknown` if empty) and `$tag` from `script/projectname`, each assigned
alone, and `script/fmt-check` runs the formatter on the host. on its own line before the build. The bootstrap is required: CI checks out
and runs this alone, and `script/fmt-check` runs the formatter on the
host.
- [ ] `script/fmt` and `script/fmt-check` source nvm for the pinned node version - [ ] `script/fmt` and `script/fmt-check` source nvm for the pinned node version
before invoking `yarn`, as `script/bootstrap`'s own install step does. before invoking `yarn`, as `script/bootstrap`'s own install step does.
`script/bootstrap` leaves the node and yarn it installs off the `PATH` of `script/bootstrap` leaves the node and yarn it installs off the `PATH` of