Skip to main content
A unit is an OpenTaco workspace: the smallest managed state boundary plus its lock and history. Each unit tracks one state file, supports explicit lock/unlock operations to coordinate writers, and keeps version history so you can restore a previous snapshot.

Use case for units

Units are useful for both small and large teams to organize and manage multiple states (or workspaces as you might be used to):
  • Isolate environments or services (e.g., app/prod, network/shared).
  • Work in parallel while lock semantics prevent conflicting writes.
  • Keep built-in state history, incase you need to rollback.

Interacting with units.

You can manage units via the unit sub-command on the taco CLI, available subcommands are
  • create, ls, info, rm : basic lifecycle for unit registration.
  • pull, push, acquire, release :download/upload state with optional locking.
  • lock, unlock : manage locks directly when coordinating writers.
  • versions, restore : list history and roll back to a prior state snapshot.
  • status : view dependency status for a unit or prefix.