Skip to content

Project#

Creates an isolated project environment with network isolation, resource quota, and role-based access control.

API Details#

Field Value
API Group tenant.cloud.stakater.com
Version v1
Kind Project
Scope Namespace-scoped

Spec Parameters#

All parameters are nested under spec.parameters.

Required#

Field Type Description
name string Project name used for resource naming
network.name string Network identifier for the project's isolated network
network.cidr string CIDR block for the network (e.g., 10.0.0.0/16)

Optional#

Field Type Default Description
tenantQuota string small Resource quota size for the project (small, medium, large)
access array List of role-based access entries (see Access)

Access#

Each entry in spec.parameters.access defines role bindings for the project:

Field Type Description
role string Role name to bind (e.g., cluster-admin, view)
users string[] List of user identifiers to grant the role
groups string[] List of group identifiers to grant the role

Status Fields#

Field Type Description
status.workspaceReady boolean Whether the project workspace is ready
status.tenantReady boolean Whether the project quota is ready
status.networksReady boolean Whether network isolation is ready
status.namespacesReady boolean Whether the project namespace is ready
status.allResourcesReady boolean Whether all project resources are ready
status.message string Human-readable status message
status.workspace.name string Project workspace name
status.workspace.url string Project workspace API server URL
status.workspace.kubeconfigBase64 string Base64-encoded kubeconfig for the project

Examples#

Minimal#

apiVersion: tenant.cloud.stakater.com/v1
kind: Project
metadata:
  name: my-project
spec:
  parameters:
    name: my-project
    network:
      name: app-network
      cidr: 10.0.0.0/16

Full#

apiVersion: tenant.cloud.stakater.com/v1
kind: Project
metadata:
  name: team-dev
spec:
  parameters:
    name: team-dev
    network:
      name: dev-network
      cidr: 10.100.0.0/16
    tenantQuota: medium
    access:
      - role: cluster-admin
        groups:
          - platform-admins
        users:
          - alex@acmecorp.example.com
      - role: view
        groups:
          - developers
          - qa-team

How-to Guide#

Create a Project