Skip to main content

Module deploy

Module deploy 

Source
Expand description

The deployment objects of the layer, typed: .ai/repo/deployments/*.yaml parsed into values that cannot hold nonsense, and validated against what this repository actually contains before anything is built from them.

Nothing here reaches the network, spawns a process or talks to a hosting provider. The question this module answers is the local one — would this deployment work — and it is answered while a test is cheap rather than after a rollout is not. The projections (the image definition and its ignore file) read the values this module produces; they never re-read the file.

The object names no hosting provider. Fly.io was the one it named, and it is no target (owner order, 2026-10-12): what ships is the release binaries, GitHub Pages and the container image published to GHCR, and none of the three reads a provider block. A field nothing reads is removed rather than kept for later (docs/SCHEMAS.md), so the block, its Fly facts and the fly.toml they were rendered into went together.

Every refusal names four things: the file, the key, the value observed and the correction. A message that names fewer sends the reader looking.

Modules§

render
The deployment artifacts, rendered from the canonical deployment object: the container image definition and the ignore file that bounds its build context. No provider configuration is rendered: no hosting provider is a target (see super).

Structs§

Budgets
The measured figures this deployment is held to. Each is written by the run that measured it; an absent one has not been measured yet and is not a licence.
Build
What is shipped and what it is built from.
Deployment
One deployment of this repository’s executable, as the canonical object states it.
HealthRoutes
The routes a platform polls, and how often.
Listen
The address the process listens on.
Machines
How many machines run, and whether the platform may stop them.
Port
A TCP port a deployed process may bind. Privileged ports are not among them: the process runs as a non-root user and could not bind one.
Positive
A count that is at least one: memory in megabytes, CPUs, machines. Zero is refused wherever zero would mean “a deployment that cannot run”.
Refusal
Why a deployment object is refused: what was read, where, and what to do about it.
Resources
What one machine is granted.
Route
A route a platform polls: an absolute path on this service, never a URL. The host is the deployment’s to know and not the object’s to state.
Workspace
What the local checks need to know about the repository they are deciding against.

Enums§

CpuKind
What a machine’s CPU is.
Interface
Which interface a process listens on.
Status
Where a deployment stands.

Constants§

KIND
The kind a deployment object is discovered as.
SCHEMA_VERSION
The only format version this executable reads.