Docs

Releases

A release is an immutable snapshot of your built app — compiled code, packaged images, and stack metadata. When you create a release, every active deployment picks it up and updates automatically.

Build

alien build --platform aws

This compiles your stack for the specified platform. Alien reads alien.ts, runs the appropriate toolchains (TypeScript, Rust, etc.), and produces build outputs.

You can build for multiple platforms at once:

alien build --platforms aws,gcp

Build steps

  1. Read the stack — Alien loads alien.ts and resolves all resources and their connections.
  2. Run toolchains — each worker's code is compiled using the configured toolchain (TypeScript, Rust, etc.).
  3. Package outputs — build outputs are packaged into container images or platform-specific runtime bundles.
  4. Write metadata — the stack definition, resource graph, and image references are recorded.

Content-hash dedup

Every build produces a content hash of the output. If your code hasn't changed, the build reuses the previous output instantly — no recompilation needed. This makes repeated builds and releases fast.

Supported platforms

PlatformWhat it targets
awsLambda, S3, DynamoDB, IAM
gcpCloud Run, Cloud Storage, Firestore
azureContainer Apps, Blob Storage, Table Storage

| kubernetes | Kubernetes Pods and Services |

Release

alien release

This builds your code, pushes images to the registry, and creates a release on the manager. Alien auto-discovers which platforms to release from your manager's artifact registry configuration.

Use --platforms to override auto-discovery:

alien release --platforms aws
alien release --platforms aws,gcp

What happens during release

  1. Discover platforms — Alien queries the manager for configured platforms (or uses --platforms if specified).
  2. Build — Alien rebuilds for every platform to ensure the release reflects your latest code. Content-hash dedup makes this instant when nothing changed.
  3. Push — Images are pushed to the configured registry (embedded or external). If the same images were already pushed in a prior release, the push is skipped automatically.
  4. Record — Alien records the release metadata (stack definition, image references, platform) on the manager.
  5. Update — Active deployments detect the new release and update automatically.

Using --prebuilt

For CI/CD pipelines where build and push happen in separate steps, use --prebuilt to skip both:

# In your CI build step:
alien build --platforms aws,gcp
# Push images to your registry externally...

# In your CI release step:
alien release --prebuilt

This requires that stack.json already contains remote image URIs (not local paths).

Multi-Platform Releases

Each platform gets its own build output and deployment metadata, but the alien.ts manifest is the same. Workers, containers, and supporting infrastructure are packaged in the format Alien needs to update each deployment.

Build and release multiple platforms in one command:

alien build --platforms aws,gcp,azure
alien release --platforms aws,gcp,azure

Configure multiple artifact registries in your alien-manager.toml and alien release handles them all in a single command.

How Updates Propagate

Once a release is pushed, Alien's deployment loop handles the rest:

  • Push model: the manager calls cloud APIs to update workers and services directly. Updates are immediate.
  • Pull model: agents poll for new releases (~30 seconds) and apply updates locally.

No manual intervention per customer. No version drift. Every deployment converges to the latest release.

On this page