Skip to main content

Getting Started

Quickstart

Move from install to the first validated render with the supported CLI flow.

This guide follows the supported first-render flow from an already available OPSd CLI to rendered OpenTofu output. It assumes opsd is available on your PATH.

Create Or Select A Profile

OPSd uses a profile to remember which provider and settings you want to work with. When prompted, choose the provider you want to use for this profile.

opsd config profile create work
opsd config profile use work

If you already have a profile, use opsd config profile current to verify it.

Inspect The Catalog

opsd list blueprints
opsd describe blueprint backend-api-db

Initialize A Manifest

opsd init blueprint backend-api-db demo.yaml --variant vm

Validate And Render

opsd validate manifest demo.yaml
opsd render manifest demo.yaml --output live/

Hand Off To OpenTofu

cd live
tofu init -backend=false -input=false
tofu validate

What To Do Next

After the first render, keep working through the same manifest with the CLI.

Scale an existing compute group

Use scale when the current shape is still right, but the workload needs more instances.

opsd scale compute-group demo.yaml api-public --replicas 3

Add supporting infrastructure

Use add when the scenario needs a new supporting resource such as cache or a load balancer.

opsd add cache redis demo.yaml --id cache-main
opsd add load-balancer demo.yaml --id lb-public --visibility public --port 80 --target-port 8080

Attach the workload to traffic

Use attach when the workload should start receiving traffic through a load balancer.

opsd attach compute-group demo.yaml api-public --to lb-public

Validate and render again

Every supported change should still go through validation and render before you continue with OpenTofu.

opsd validate manifest demo.yaml
opsd render manifest demo.yaml --output live/

The same manifest stays the source of truth for later renders. The supported loop becomes:

  • change the manifest with opsd add, opsd scale, opsd attach, opsd detach, opsd remove, or opsd resize
  • validate the manifest again
  • render the updated stack
  • use tofu plan and tofu apply on the rendered output as usual