teactl project

Manage projects within an organization. Projects contain environments and blueprints, providing logical separation for different teams or purposes.

Synopsis

teactl project <command> [flags]

Commands

CommandDescription
listList projects in an organization
getGet project details
createCreate a new project
updateUpdate project settings
deleteDelete a project
switchSwitch to a different project context

teactl project list

List all projects in the current organization.

teactl project list [flags]

Flags:

FlagShortDescription
--org-oOrganization (defaults to current context)
--outputOutput format (table, json, yaml)

Example:

$ teactl project list

NAME          ENVIRONMENTS   BLUEPRINTS   CREATED
default       8              3            2024-01-15
production    2              1            2024-02-01
training      15             5            2024-02-20

With organization flag:

$ teactl project list --org training-co

NAME          ENVIRONMENTS   BLUEPRINTS   CREATED
workshops     25             8            2024-01-10
demos         5              2            2024-03-01

teactl project get

Get detailed information about a project.

teactl project get [name] [flags]

Arguments:

ArgumentDescription
nameProject name (defaults to current context)

Example:

$ teactl project get training

Project:      training
Organization: acme-corp
ID:           proj_xyz789
Created:      2024-02-20 14:00:00

Resources:
  Environments: 15 (8 running, 5 sleeping, 2 stopped)
  Blueprints:   5
  Checkpoints:  23

Usage (this month):
  Compute:      456 vCPU-hours
  Storage:      120 GB
  Cost:         $89.50

teactl project create

Create a new project in an organization.

teactl project create <name> [flags]

Arguments:

ArgumentDescription
nameProject name (lowercase, alphanumeric, hyphens)

Flags:

FlagDescription
--orgOrganization to create project in
--descriptionProject description

Example:

# Create project in current organization
$ teactl project create kubernetes-training --description "K8s workshop environments"

Project 'kubernetes-training' created in organization 'acme-corp'.

To switch to this project:
  teactl project switch kubernetes-training

To create an environment:
  teactl env create --blueprint k8s-basics --project kubernetes-training

Create in specific organization:

$ teactl project create demos --org training-co

Project 'demos' created in organization 'training-co'.

teactl project update

Update project settings.

teactl project update [name] [flags]

Flags:

FlagDescription
--descriptionUpdate project description

Example:

$ teactl project update training --description "Advanced Kubernetes training labs"

Project 'training' updated.

teactl project delete

Delete a project and all its environments.

teactl project delete <name> [flags]

Flags:

FlagDescription
--yesSkip confirmation prompt
--forceForce deletion even with active environments

Example:

$ teactl project delete old-project

WARNING: This will permanently delete:
  - 5 environments (2 currently running)
  - 3 blueprints
  - 12 checkpoints

Type 'old-project' to confirm deletion: old-project

Terminating running environments...
  Terminating env-1... done
  Terminating env-2... done
Project 'old-project' deleted.

Force deletion without confirmation:

$ teactl project delete temp-project --yes --force

Project 'temp-project' deleted.

teactl project switch

Switch your CLI context to a different project.

teactl project switch <name>

Example:

$ teactl project switch training

Switched to project 'training'.
Current context: acme-corp/training

After switching, environment commands will operate in the selected project:

# Lists environments in the 'training' project
$ teactl env list

View current context:

$ teactl config get current-context

Organization: acme-corp
Project:      training

Global Flags

These flags work with all project commands:

FlagShortDescription
--org-oTarget organization
--outputOutput format (table, json, yaml)
--quiet-qMinimal output
--verbose-vVerbose output

Project Naming

Project names must:

  • Be unique within an organization
  • Contain only lowercase letters, numbers, and hyphens
  • Be between 3-40 characters
  • Start with a letter

Valid names:

  • default
  • prod-environments
  • team-alpha-2024

Invalid names:

  • My Project (spaces and capitals)
  • 123-project (starts with number)
  • ab (too short)

Default Project

Every organization has a default project created automatically. You can use it for general-purpose environments or create additional projects for organization.

# Set a different default project
teactl config set default-project training

# Or use --project flag for one-off commands
teactl env list --project production

See Also

ende