Infrastructure as code

Describe a project environment in TypeScript, Go or Python, preview the plan and apply it with ubctl.

  • Apps

Read as Markdown ↗

A project environment can now live next to your code in .unbroker/, written in TypeScript, Go or Python with the public @unbroker/iac SDK. ubctl evaluates the file on your machine or CI runner and sends only the validated result to Unbroker.

It covers projects, repository and image services, variables, domains, scaling limits, health checks and persistent volumes.

Plan, then apply

  • Pull the current state of an existing environment to start from what is already running. Secret values are never exported.
  • Plan shows every change before anything happens. Saved plans are encrypted and refused if the environment changed after they were made.
  • Apply asks for confirmation before anything destructive, then deploys only the services whose runtime changed, in dependency order. Renames, domain changes and other metadata do not trigger a deploy.

Several repositories, one project

Named partials let each repository own its own services in a shared project. An apply only touches the services its partial owns, and it can still reference services managed elsewhere. Projects connected to GitHub resolve their installation automatically.

Read the infrastructure as code guide and the CI automation guide to get started.

← All releases