|
24 | 24 | REANA_KUBERNETES_JOBS_TIMEOUT_LIMIT, |
25 | 25 | REANA_KUBERNETES_JOBS_MAX_USER_TIMEOUT_LIMIT, |
26 | 26 | REANA_INTERACTIVE_SESSION_MAX_INACTIVITY_PERIOD, |
| 27 | + REANA_INTERACTIVE_SESSIONS_ENVIRONMENTS, |
| 28 | + REANA_INTERACTIVE_SESSIONS_ENVIRONMENTS_CUSTOM_ALLOWED, |
27 | 29 | DASK_ENABLED, |
28 | 30 | DASK_AUTOSCALER_ENABLED, |
29 | 31 | REANA_DASK_CLUSTER_DEFAULT_NUMBER_OF_WORKERS, |
@@ -108,6 +110,22 @@ def info(user, **kwargs): # noqa |
108 | 110 | type: string |
109 | 111 | x-nullable: true |
110 | 112 | type: object |
| 113 | + interactive_session_recommended_jupyter_images: |
| 114 | + properties: |
| 115 | + title: |
| 116 | + type: string |
| 117 | + value: |
| 118 | + type: array |
| 119 | + items: |
| 120 | + type: string |
| 121 | + type: object |
| 122 | + interactive_sessions_custom_image_allowed: |
| 123 | + properties: |
| 124 | + title: |
| 125 | + type: string |
| 126 | + value: |
| 127 | + type: string |
| 128 | + type: object |
111 | 129 | maximum_kubernetes_jobs_timeout: |
112 | 130 | properties: |
113 | 131 | title: |
@@ -221,6 +239,17 @@ def info(user, **kwargs): # noqa |
221 | 239 | "title": "Maximum timeout for Kubernetes jobs", |
222 | 240 | "value": "1209600" |
223 | 241 | }, |
| 242 | + "interactive_session_recommended_jupyter_images": { |
| 243 | + "title": "Recommended Jupyter images for interactive sessions", |
| 244 | + "value": [ |
| 245 | + 'docker.io/jupyter/scipy-notebook:notebook-6.4.5', |
| 246 | + 'docker.io/jupyter/scipy-notebook:notebook-9.4.5', |
| 247 | + ] |
| 248 | + }, |
| 249 | + "interactive_sessions_custom_image_allowed": { |
| 250 | + "title": "Whether users are allowed to spawn custom interactive session images", |
| 251 | + "value": "False" |
| 252 | + }, |
224 | 253 | "dask_enabled": { |
225 | 254 | "title": "Dask workflows allowed in the cluster", |
226 | 255 | "value": "False" |
@@ -301,6 +330,19 @@ def info(user, **kwargs): # noqa |
301 | 330 | title="Maximum inactivity period in days before automatic closure of interactive sessions", |
302 | 331 | value=REANA_INTERACTIVE_SESSION_MAX_INACTIVITY_PERIOD, |
303 | 332 | ), |
| 333 | + interactive_sessions_custom_image_allowed=dict( |
| 334 | + title="Users can set custom interactive session images", |
| 335 | + value=REANA_INTERACTIVE_SESSIONS_ENVIRONMENTS_CUSTOM_ALLOWED, |
| 336 | + ), |
| 337 | + interactive_session_recommended_jupyter_images=dict( |
| 338 | + title="Recommended Jupyter images for interactive sessions", |
| 339 | + value=[ |
| 340 | + item["image"] |
| 341 | + for item in REANA_INTERACTIVE_SESSIONS_ENVIRONMENTS["jupyter"][ |
| 342 | + "recommended" |
| 343 | + ] |
| 344 | + ], |
| 345 | + ), |
304 | 346 | dask_enabled=dict( |
305 | 347 | title="Dask workflows allowed in the cluster", |
306 | 348 | value=bool(DASK_ENABLED), |
@@ -375,6 +417,8 @@ class InfoSchema(Schema): |
375 | 417 | StringNullableInfoValue |
376 | 418 | ) |
377 | 419 | kubernetes_max_memory_limit = fields.Nested(StringInfoValue) |
| 420 | + interactive_session_recommended_jupyter_images = fields.Nested(ListStringInfoValue) |
| 421 | + interactive_sessions_custom_image_allowed = fields.Nested(StringInfoValue) |
378 | 422 | dask_enabled = fields.Nested(StringInfoValue) |
379 | 423 | if DASK_ENABLED: |
380 | 424 | dask_autoscaler_enabled = fields.Nested(StringInfoValue) |
|
0 commit comments