WorkspaceTemplate¶
WorkspaceTemplate¶
WorkspaceTemplate is the Schema for the workspacetemplates API Templates define reusable, secure-by-default configurations for workspaces. Template spec can be updated; existing workspaces keep their configuration (lazy application).
Field |
Value or Description |
|---|---|
|
|
|
|
|
Refer to Kubernetes API documentation for fields of |
|
EnvRequirement¶
EnvRequirement defines a validation rule for a workspace environment variable
Appears in:
Field |
Description |
Default |
Validation |
|---|---|---|---|
|
Name is the environment variable name to validate |
MinLength: 1 |
|
|
Required indicates whether the environment variable must be present on the workspace |
false |
Optional: {} |
|
Regex is a regular expression the environment variable value must match |
Optional: {} |
IdleShutdownOverridePolicy¶
IdleShutdownOverridePolicy defines idle shutdown override constraints
Appears in:
Field |
Description |
Default |
Validation |
|---|---|---|---|
|
Allow controls whether workspaces can override idle shutdown |
true |
Optional: {} |
|
MinIdleTimeoutInMinutes is the minimum allowed timeout |
Optional: {} |
|
|
MaxIdleTimeoutInMinutes is the maximum allowed timeout |
Optional: {} |
LabelRequirement¶
LabelRequirement defines a validation rule for a workspace label
Appears in:
Field |
Description |
Default |
Validation |
|---|---|---|---|
|
Key is the label key to validate |
MinLength: 1 |
|
|
Required indicates whether the label must be present on the workspace |
false |
Optional: {} |
|
Regex is a regular expression the label value must match |
Optional: {} |
ResourceBounds¶
ResourceBounds defines minimum and maximum resource limits for any resource type. Uses Kubernetes ResourceName as keys to support vendor-agnostic resource specifications.
Appears in:
Field |
Description |
Default |
Validation |
|---|---|---|---|
|
Resources defines min/max bounds for any resource type. |
Optional: {} |
ResourceRange¶
ResourceRange defines min and max for a resource NOTE: CEL validation for min <= max is not possible due to resource.Quantity type limitations Validation is enforced at runtime in the template resolver
Appears in:
StorageConfig¶
StorageConfig defines storage settings NOTE: CEL validation for minSize <= maxSize is not possible due to resource.Quantity type limitations Validation is enforced at runtime in the template resolver
Appears in:
Field |
Description |
Default |
Validation |
|---|---|---|---|
|
DefaultSize is the default storage size |
10Gi |
Optional: {} |
|
MinSize is the minimum allowed storage size |
Optional: {} |
|
|
MaxSize is the maximum allowed storage size |
Optional: {} |
|
|
DefaultStorageClassName is the default storage class name |
Optional: {} |
|
|
DefaultMountPath is the default mount path for the storage |
/home/jovyan |
Optional: {} |
TemplateLabel¶
TemplateLabel defines a label key-value pair to add to workspaces
Appears in:
Field |
Description |
Default |
Validation |
|---|---|---|---|
|
Key is the label key |
MinLength: 1 |
|
|
Value is the label value |
Required: {} |
WorkspaceTemplateSpec¶
WorkspaceTemplateSpec defines the desired state of WorkspaceTemplate
Appears in:
Field |
Description |
Default |
Validation |
|---|---|---|---|
|
DisplayName is the human-readable name of this template |
MaxLength: 100 |
|
|
Description provides additional information about this template |
MaxLength: 500 |
|
|
DefaultImage is the default container image for workspaces using this template |
MaxLength: 500 |
|
|
AllowedImages is a list of container images that can be used with this template |
MaxItems: 50 |
|
|
AllowCustomImages allows workspaces to use any container image, bypassing the AllowedImages restriction |
false |
Optional: {} |
|
DefaultResources specifies the default resource requirements |
Optional: {} |
|
|
ResourceBounds defines the min/max boundaries for resource overrides |
Optional: {} |
|
|
PrimaryStorage defines storage configuration |
Optional: {} |
|
|
DefaultContainerConfig specifies default container command and args configuration |
Optional: {} |
|
|
BaseEnv specifies environment variables to add to workspaces using this template |
MaxItems: 50 |
|
|
EnvRequirements specifies validation rules for workspace environment variables |
MaxItems: 50 |
|
|
AllowSecondaryStorages controls whether workspaces using this template |
true |
Optional: {} |
|
DefaultVolumes specifies default additional volumes for workspaces using this template |
MaxItems: 10 |
|
|
DefaultNodeSelector specifies default node selection constraints |
Optional: {} |
|
|
DefaultAffinity specifies default node affinity and anti-affinity rules |
Optional: {} |
|
|
DefaultTolerations specifies default tolerations for scheduling on nodes with taints |
Optional: {} |
|
|
DefaultOwnershipType specifies default ownershipType for workspaces using this template |
Public |
Enum: [Public OwnerOnly] |
|
BaseLabels specifies labels to add to workspaces using this template |
MaxItems: 50 |
|
|
LabelRequirements specifies validation rules for workspace labels |
MaxItems: 50 |
|
|
DefaultIdleShutdown provides default idle shutdown configuration |
Optional: {} |
|
|
IdleShutdownOverrides controls override behavior and bounds |
Optional: {} |
|
|
DefaultAccessType specifies the default accessType for workspaces using this template |
Public |
Enum: [Public OwnerOnly] |
|
DefaultAccessStrategy specifies the default access strategy for workspaces using this template |
Optional: {} |
|
|
DefaultLifecycle specifies default lifecycle hooks for workspaces using this template |
Optional: {} |
|
|
DefaultPodSecurityContext specifies default pod-level security context |
Optional: {} |
|
|
DefaultContainerSecurityContext specifies default container-level security context for the main workspace container |
Optional: {} |
|
|
DefaultInitContainers specifies default init containers for workspaces using this template |
MaxItems: 10 |
|
|
AllowCustomInitContainers controls whether workspaces using this template |
false |
Optional: {} |
|
AppType specifies the application type for workspaces using this template |
Optional: {} |
WorkspaceTemplateStatus¶
WorkspaceTemplateStatus defines the observed state of WorkspaceTemplate Follows Kubernetes API conventions for status reporting
Appears in:
Field |
Description |
Default |
Validation |
|---|---|---|---|
|
ObservedGeneration reflects the generation of the most recently observed WorkspaceTemplate spec. |
Optional: {} |