Avisi cloud logo
Commands

playhouse create

Create or update a playhouse (alpha)

Synopsis

Create a playhouse — an opinionated AME cluster that hosts playrooms.

ALPHA: this command is in active development; flags and behaviour may change between releases.

In one command this provisions a cluster (named "playhouse-<NAME>"), adds a small system node pool plus an autoscaling, isolated pool for playrooms, waits for it to come up, and bootstraps it: the playrooms namespace, an egress policy that keeps the agent off cloud metadata and private networks (internet access stays open), and the SSH connectivity you choose with --exposure. The default is Tailscale (needs a Tailscale organisation and OAuth credentials); pass --exposure nodeport or --exposure portforward to skip Tailscale entirely.

Re-running with the same name is safe: it resumes where a previous run left off.

acloud playhouse create NAME [flags]

Examples

  # default: Tailscale connectivity (needs a Tailscale organisation + OAuth credentials)
  export TS_OAUTH_CLIENT_SECRET=<secret>
  acloud playhouse create demo --tailscale-oauth-client-id <id>

  # free direct SSH where nodes have public IPs (e.g. Hetzner), no Tailscale
  acloud playhouse create demo --exposure nodeport

  # no public exposure: reach playrooms only via port-forward (any provider)
  acloud playhouse create demo --exposure portforward

Options

      --cloud-account string                   cloud account to provision in identity or display name (inferred when the org has exactly one)
      --environment string                     environment to provision in (inferred when the org has exactly one)
      --exposure string                        default playroom connectivity: tailscale (needs a configured Tailscale organisation and OAuth credentials), nodeport (free direct SSH where nodes have public IPs), or portforward (no public exposure, reached via API-server port-forward) (default "tailscale")
  -h, --help                                   help for create
      --maintenance-schedule-identity string   maintenance schedule for auto-upgrade (default: a dedicated one is created for the playhouse)
      --max-playroom-nodes int                 maximum size of the autoscaling playrooms pool (default 3)
      --max-privileged-nodes int               maximum size of the privileged playrooms pool; each privileged playroom takes a whole node, so this caps concurrent privileged rooms (default 1)
      --no-default                             do not set the new playhouse as the default for playroom commands
      --node-count int                         fixed size of the system node pool (default 1)
      --node-type string                       node type for both pools (overridden by --system-node-type / --playroom-node-type)
      --playroom-node-type string              node type for the playrooms pool
      --privileged-node-type string            node type for the dedicated privileged playrooms pool (defaults to the playrooms node type)
      --region string                          region to provision in (inferred when the account offers exactly one)
      --system-node-type string                node type for the system pool
      --tailscale-oauth-client-id string       Tailscale OAuth client id for the operator (only needed with --exposure tailscale)
      --tailscale-oauth-client-secret string   Tailscale OAuth client secret (also read from TS_OAUTH_CLIENT_SECRET; only needed with --exposure tailscale)
      --update-channel string                  update channel to track (default "regular")
      --version string                         AME version to use (defaults to the latest available)
      --wait-timeout duration                  maximum time to wait for the cluster to start (default 20m0s)
  -y, --yes                                    skip the confirmation prompt

Options inherited from parent commands

  -C, --context string                    sets the context
      --debug                             enable debug mode
      --debug-show-authorization-header   prints actual authorization header in debug mode, use with caution!
  -O, --organisation string               sets the organisation
      --request-timeout duration          request timeout for api calls to the Avisi Cloud API (default 15s)
      --trace                             enable trace mode

SEE ALSO

On this page