-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathworkspace.yaml
118 lines (98 loc) · 4.02 KB
/
workspace.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
apiVersion: kubeflow.org/v1beta1
kind: Workspace
metadata:
name: my-workspace
namespace: default
spec:
## if the workspace is paused (no pods running)
paused: false
## if true, pending updates are NOT applied when the Workspace is paused
## if false, pending updates are applied when the Workspace is paused
deferUpdates: false
## the WorkspaceKind to use
kind: "jupyterlab"
## options for "podTemplate"-type WorkspaceKinds
##
podTemplate:
## metadata to be applied to the Pod resource
##
podMetadata:
## labels to be applied to the Pod resource
## - labels are required to support integration with the PodDefault resource:
## https://github.com/kubeflow/kubeflow/blob/master/components/admission-webhook/pkg/apis/settings/v1alpha1/poddefault_types.go
##
labels: {}
## annotations to be applied to the Pod resource
##
annotations: {}
## volume configs
##
volumes:
## the name of the PVC to mount as the home volume
## - this PVC must already exist in the Namespace
## - this PVC must be RWX (ReadWriteMany, ReadWriteOnce)
## - the mount path is defined in the WorkspaceKind under
## `spec.podTemplate.volumeMounts.home`
##
home: "my-home-pvc"
## additional PVCs to mount
## - these PVC must already exist in the Namespace
## - the same PVC can be mounted multiple times with different `mountPaths`
## - if `readOnly` is false, the PVC must be RWX (ReadWriteMany, ReadWriteOnce)
## - if `readOnly` is true, the PVC must be ReadOnlyMany
##
data:
- pvcName: "my-data-pvc"
mountPath: "/data/my-data"
readOnly: false
## the selected podTemplate options
## - these are the user-selected options from the Workspace Spawner UI
## which determine the PodSpec of the Workspace Pod
##
options:
## the id of an imageConfig option
## - options are defined in WorkspaceKind under
## `spec.podTemplate.options.imageConfig.values[]`
##
imageConfig: "jupyterlab_scipy_180"
## the id of a podConfig option
## - options are defined in WorkspaceKind under
## `spec.podTemplate.options.podConfig.values[]`
##
podConfig: "tiny_cpu"
## ================================================================
## status (managed by controller)
## ================================================================
status:
## activity information for the Workspace, used to determine when to cull
activity:
## the last time activity was observed on the Workspace (UNIX epoch)
lastActivity: 1710435303
## the last time we checked for activity on the Workspace (UNIX epoch)
lastUpdate: 1710435310 # UNIX epoch
## the time when the Workspace was paused, 0 if the Workspace is not paused
pauseTime: 0 # UNIX epoch
## if the current Pod does not reflect the current "desired" state
## - true if any `spec.podTemplate.options` have a redirect
## and so will be patched on the next restart
## - true if the WorkspaceKind has changed one of its common `podTemplate` fields
## like `podMetadata`, `probes`, `extraEnv`, or `containerSecurityContext`
pendingRestart: true
## information about the current podTemplate options
## - each value of `desired` will replace `spec.podTemplate.options` when the Workspace is next paused
## - the `redirectChain` is the chain of options from the current state to the desired state
podTemplateOptions:
imageConfig:
desired: "jupyterlab_scipy_190"
redirectChain:
- source: "jupyterlab_scipy_180"
target: "jupyterlab_scipy_190"
podConfig:
desired: "tiny_cpu"
redirectChain: []
## the current state of the Workspace
## - ENUM: "Running" | "Terminating" | "Paused" | "Pending" | "Error" | "Unknown"
state: "Running"
## a human-readable message about the state of the Workspace
## - WARNING: this field is NOT FOR MACHINE USE, subject to change without notice
stateMessage: ""