knotless is pds.js's home now, so its CI moves onto knotless.dev's hosted runner: .knotless/workflows/ takes the place of Tangled's spindle (.tangled/workflows/) and of @pdsjs/git-ci (.pdsjs/workflows/), both deleted.
ci: pnpm install --frozen-lockfile, then npm run ci, on every branch pushed and on pulls into main, in node:22-trixie, with the pnpm store and corepack cached.
mirror-repo: pushes main and each v* tag to atproto://pdsjs.dev/pds.js with this repository's own git-remote-atproto. The release workflows that @pdsjs/git-ci ran off that mirror run here now, so the mirror is a mirror only.
canary-worker, publish-git-app, publish-spaces-app, publish-wizard (main) and release-npm, release-worker (v* tags): as before, with KNOTLESS_RUN_REF in place of PDSJS_CI_REF.
release-image, release-runner-image (v* tags, or asked for at a branch to build and test without publishing): a step has no docker daemon here, so kaniko builds each image. scripts/run-image.mjs runs the smoke tests in the filesystem the build leaves. knotless publish --oci publishes each image as a release of this repository, knotless.dev/chadtmiller.com/pds.js/pds.js and .../pds.js-git-ci, in place of atcr.io, and crane copies it to the pdsjs.dev PDS registry as before. The ghcr.io mirror is gone, as no credentials for it were granted.
npm run release:cut pushes the tag to knotless.
The runner's secrets file grants PDSJS_SITE_TOKEN (main, v* tags) and NPM_TOKEN (v* tags). RELEASE_PASSWORD, an app password for chadtmiller.com that the image workflows publish with, is not granted yet. Until it is, those two workflows fail at their first step on a tag.
knotless is pds.js's home now, so its CI moves onto knotless.dev's hosted runner:
.knotless/workflows/takes the place of Tangled's spindle (.tangled/workflows/) and of@pdsjs/git-ci(.pdsjs/workflows/), both deleted.ci:pnpm install --frozen-lockfile, thennpm run ci, on every branch pushed and on pulls into main, innode:22-trixie, with the pnpm store and corepack cached.mirror-repo: pushes main and eachv*tag toatproto://pdsjs.dev/pds.jswith this repository's owngit-remote-atproto. The release workflows that@pdsjs/git-ciran off that mirror run here now, so the mirror is a mirror only.canary-worker,publish-git-app,publish-spaces-app,publish-wizard(main) andrelease-npm,release-worker(v*tags): as before, withKNOTLESS_RUN_REFin place ofPDSJS_CI_REF.release-image,release-runner-image(v*tags, or asked for at a branch to build and test without publishing): a step has no docker daemon here, so kaniko builds each image.scripts/run-image.mjsruns the smoke tests in the filesystem the build leaves.knotless publish --ocipublishes each image as a release of this repository,knotless.dev/chadtmiller.com/pds.js/pds.jsand.../pds.js-git-ci, in place of atcr.io, and crane copies it to the pdsjs.dev PDS registry as before. The ghcr.io mirror is gone, as no credentials for it were granted.npm run release:cutpushes the tag to knotless.The runner's secrets file grants
PDSJS_SITE_TOKEN(main,v*tags) andNPM_TOKEN(v*tags).RELEASE_PASSWORD, an app password for chadtmiller.com that the image workflows publish with, is not granted yet. Until it is, those two workflows fail at their first step on a tag.🤖 Generated with Claude Code