1
Builds and pushes the image
Builds your model into a container image defined by the When the build needs a credential, pass it with
build: block in your reactor.yaml and pushes it to Reactor. Two optional alternatives:--build-secret:2
Uploads weights when you pass --weights
Without
--weights <path>, publish skips the weights step and the deploy reuses the previously
deployed release’s bundle. Weights change less often than code, so this is the common path.3
Stages the release
Sessions start reaching the release after you deploy it.
reactor.yaml, so you never type them.
Weights
The image carries your code and dependencies; Reactor mounts the weights into the container at runtime. Publish uploads them when you pass an explicit path:--weights, publish skips the weights step and the deploy carries the previously deployed
release’s bundle over server-side (see
Carry over weights from a previous release).
To ship weights separately (training still running at publish time, or a checkpoint update for an
existing release), use reactor weights upload. Both arguments are optional inside a workspace:
the identity comes from reactor.yaml, and the path defaults to runtime.weights_path from the
same file (else ./weights/):
reactor.yaml
reactor weights upload walks a directory tree, computes a SHA-256 manifest, uploads every file,
and finally writes the manifest as the bundle-complete sentinel. Large files go up as multipart
transfers with parallel per-file uploads (--workers tunes the parallelism); transient failures are
retried with backoff, and an interrupted upload resumes where it left off on the next run. When a
previous bundle with identical content already exists, the upload is short-circuited; pass --force
to re-upload unconditionally.
See Weights for how the same files resolve locally and in production.
Carry over weights from a previous release
When a new release ships the same weights as a previous one (a code-only change, a config tweak, a rebuilt image with no checkpoint update), the bundle does not need to be on disk at all. The common path is automatic: publish without--weights and, at deploy time, Reactor reuses the
most recently deployed release’s bundle server-side. Nothing is read or uploaded from your machine,
and the deploy prints a notice naming the source release so a forgotten upload is easy to spot.
When the source you want is a different release, carry it over explicitly with --from on
reactor weights upload:
--from cannot be combined with a local <path> or with --force. The source
release must belong to the same model, carry a different tag from the target, and pass the same
semver validation as the target tag.
Inspect uploaded weights
Two read-only commands help verify what landed:weights list prints one row per artifact (size, last-modified, path), plus a trailer summarising
the total size and whether the bundle is complete. weights show summarises the SHA-256 manifest
itself and is useful when a partner needs to confirm exactly which content hash a release is pinned
to.
Release tag
The release tag comes from yourreactor.yaml. It must be a full semver value such as v1.0.0,
v1.2.3, or v1.2.3-rc1. The CLI rejects partial values like v1 or 1.2 before anything is
built, so bump it to a fresh, increasing value for each release.
Success output
Specifying the release explicitly
To target a release other than the one in yourreactor.yaml, pass it on the command line. The
positional argument always wins over the workspace value:
What publish does
Under the hood, a single publish runs these steps:- Registers the release tag against the model (idempotent).
- Mints short-lived ECR push credentials for the partner namespace.
- Builds the container image defined by the
build:block inreactor.yaml, or from a hand-edited./Dockerfilewhen the workspace has one.--sourcesupplies a pre-built image instead. - Pushes the image to the Reactor ECR slot.
- Records the digested image ref on the release.
- Uploads the weights (parallel per-file uploads + SHA-256 manifest) when
--weights <path>is passed.
Next
Deploy the release
Activate a published release (or roll back to a previous one).
Check status
See whether the image and weights are in place.