REFERENCE

Project

Reference for the project that scopes boxes, snaps, execs, and secrets, and for switching between projects.

A project groups the boxes, snaps, execs, prewarm profiles, and Project Secrets that belong together inside one org. Every org has a Default project that all org members can use, so a single-team setup needs no project commands at all.

Commands

sys9 run project ls
sys9 run project current
sys9 run project use <project-cid>
sys9 run project create <display-name>
sys9 run project inspect
sys9 run project update [--display-name <name>] [--description <text>] [--outbound-ip-label <label-key>]
sys9 run project rm
sys9 run project members ls|set-role|rm
sys9 run project secrets ls|create|update|rm
sys9 run project outbound-ips [--label-value <text>]

project outbound-ips lists the addresses the project’s boxes reach the internet from; --outbound-ip-label gives each value of a box label its own. See Outbound IP.

The current project

After login, commands run in the saved current project. auth login prints which one that is.

sys9 run project ls
sys9 run project use <project-cid>
sys9 run project current

project use changes the saved choice for later commands. To run one command elsewhere without changing it, pass --project:

sys9 run --project <project-cid> box ls

project inspect, update, and rm act on the current project unless --project names another one.

Roles

  • viewer can see the project, its boxes, snaps, and exec summaries. It cannot create or change anything, read full exec output, or touch secrets.
  • member can also create and operate boxes, snaps, and execs, and manage Box Secrets on boxes it can operate.
  • admin can also manage project members, Project Secrets, project settings, and delete the project.

Whoever creates a project becomes its admin. Org owners and managers are admin in every project.

The Default project

Default cannot be deleted, and its membership follows the org: org owners and managers are admin, other org members are member. Change who can use it through org membership, not through project members.

What stays org-wide

API keys, org members, and Shared Snaps belong to the org. A Shared Snap is how one project hands a prepared environment to the others.