lightning-sdk 0.2.5__py3-none-any.whl → 0.2.7__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. lightning_sdk/__init__.py +1 -1
  2. lightning_sdk/api/ai_hub_api.py +1 -0
  3. lightning_sdk/api/lit_container_api.py +84 -24
  4. lightning_sdk/api/teamspace_api.py +8 -9
  5. lightning_sdk/api/utils.py +0 -1
  6. lightning_sdk/cli/docker.py +1 -1
  7. lightning_sdk/cli/download.py +10 -2
  8. lightning_sdk/cli/serve.py +26 -19
  9. lightning_sdk/cli/upload.py +41 -6
  10. lightning_sdk/lightning_cloud/openapi/__init__.py +16 -0
  11. lightning_sdk/lightning_cloud/openapi/api/cloud_space_environment_template_service_api.py +9 -9
  12. lightning_sdk/lightning_cloud/openapi/api/cloud_space_service_api.py +202 -0
  13. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +105 -0
  14. lightning_sdk/lightning_cloud/openapi/api/lit_registry_service_api.py +15 -3
  15. lightning_sdk/lightning_cloud/openapi/models/__init__.py +16 -0
  16. lightning_sdk/lightning_cloud/openapi/models/alerts_config_billing.py +175 -0
  17. lightning_sdk/lightning_cloud/openapi/models/alerts_config_studios.py +149 -0
  18. lightning_sdk/lightning_cloud/openapi/models/environmenttemplates_id_body.py +27 -1
  19. lightning_sdk/lightning_cloud/openapi/models/externalv1_cloud_space_instance_status.py +27 -1
  20. lightning_sdk/lightning_cloud/openapi/models/externalv1_cluster.py +27 -1
  21. lightning_sdk/lightning_cloud/openapi/models/orgs_id_body.py +53 -1
  22. lightning_sdk/lightning_cloud/openapi/models/project_id_cloudspaces_body.py +27 -1
  23. lightning_sdk/lightning_cloud/openapi/models/projects_id_body.py +27 -1
  24. lightning_sdk/lightning_cloud/openapi/models/server_id_alerts_body.py +201 -0
  25. lightning_sdk/lightning_cloud/openapi/models/v1_alert_method.py +102 -0
  26. lightning_sdk/lightning_cloud/openapi/models/v1_alerts_config.py +149 -0
  27. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_cold_start_metrics.py +617 -0
  28. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_environment_template.py +27 -1
  29. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_environment_template_config.py +123 -0
  30. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_security_options.py +27 -1
  31. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +131 -1
  32. lightning_sdk/lightning_cloud/openapi/models/v1_conversation_response_chunk.py +29 -3
  33. lightning_sdk/lightning_cloud/openapi/models/v1_create_cloud_space_environment_template_request.py +27 -1
  34. lightning_sdk/lightning_cloud/openapi/models/v1_create_project_request.py +27 -1
  35. lightning_sdk/lightning_cloud/openapi/models/v1_create_server_alert_response.py +97 -0
  36. lightning_sdk/lightning_cloud/openapi/models/v1_data_connection.py +27 -1
  37. lightning_sdk/lightning_cloud/openapi/models/v1_google_cloud_direct_v1.py +81 -3
  38. lightning_sdk/lightning_cloud/openapi/models/v1_lambda_labs_direct_v1.py +1 -29
  39. lightning_sdk/lightning_cloud/openapi/models/v1_list_cloud_space_cold_start_metrics_response.py +123 -0
  40. lightning_sdk/lightning_cloud/openapi/models/v1_list_lit_registry_repository_image_artifact_versions_response.py +27 -1
  41. lightning_sdk/lightning_cloud/openapi/models/v1_message.py +29 -3
  42. lightning_sdk/lightning_cloud/openapi/models/v1_metadata.py +27 -1
  43. lightning_sdk/lightning_cloud/openapi/models/v1_organization.py +53 -1
  44. lightning_sdk/lightning_cloud/openapi/models/v1_project_settings.py +27 -1
  45. lightning_sdk/lightning_cloud/openapi/models/v1_report_cloud_space_instance_stop_at_response.py +97 -0
  46. lightning_sdk/lightning_cloud/openapi/models/v1_reservation_details.py +201 -0
  47. lightning_sdk/lightning_cloud/openapi/models/v1_rule_resource.py +1 -0
  48. lightning_sdk/lightning_cloud/openapi/models/v1_server_alert.py +201 -0
  49. lightning_sdk/lightning_cloud/openapi/models/v1_server_alert_phase.py +104 -0
  50. lightning_sdk/lightning_cloud/openapi/models/v1_server_alert_severity.py +103 -0
  51. lightning_sdk/lightning_cloud/openapi/models/v1_server_alert_type.py +105 -0
  52. lightning_sdk/lightning_cloud/openapi/models/v1_subnet_spec.py +149 -0
  53. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +131 -79
  54. lightning_sdk/lightning_cloud/openapi/models/v1_voltage_park_direct_v1.py +29 -29
  55. lightning_sdk/lightning_cloud/openapi/models/v1_vultr_direct_v1.py +1 -27
  56. lightning_sdk/lit_container.py +19 -4
  57. lightning_sdk/models.py +1 -1
  58. lightning_sdk/serve.py +86 -15
  59. lightning_sdk/teamspace.py +32 -18
  60. {lightning_sdk-0.2.5.dist-info → lightning_sdk-0.2.7.dist-info}/METADATA +1 -1
  61. {lightning_sdk-0.2.5.dist-info → lightning_sdk-0.2.7.dist-info}/RECORD +65 -49
  62. {lightning_sdk-0.2.5.dist-info → lightning_sdk-0.2.7.dist-info}/LICENSE +0 -0
  63. {lightning_sdk-0.2.5.dist-info → lightning_sdk-0.2.7.dist-info}/WHEEL +0 -0
  64. {lightning_sdk-0.2.5.dist-info → lightning_sdk-0.2.7.dist-info}/entry_points.txt +0 -0
  65. {lightning_sdk-0.2.5.dist-info → lightning_sdk-0.2.7.dist-info}/top_level.txt +0 -0
@@ -73,21 +73,22 @@ class V1UserFeatures(object):
73
73
  'fair_share': 'bool',
74
74
  'featured_studios_admin': 'bool',
75
75
  'filestore': 'bool',
76
+ 'inactive_notify_delete': 'bool',
76
77
  'instant_capacity_reservation': 'bool',
77
78
  'job_artifacts_v2': 'bool',
78
- 'jobs_v2': 'bool',
79
79
  'lambda_labs': 'bool',
80
80
  'landing_studios': 'bool',
81
81
  'lit_logger': 'bool',
82
+ 'manage_default_studio_machine': 'bool',
82
83
  'marketplace': 'bool',
83
84
  'mmt_fault_tolerance': 'bool',
84
85
  'mmt_strategy_selector': 'bool',
85
86
  'multicloud_saas': 'bool',
86
87
  'multiple_studio_versions': 'bool',
88
+ 'org_admin_alerts': 'bool',
87
89
  'org_level_member_permissions': 'bool',
88
90
  'pipelines': 'bool',
89
91
  'plugin_distributed': 'bool',
90
- 'plugin_fiftyone': 'bool',
91
92
  'plugin_inference': 'bool',
92
93
  'plugin_label_studio': 'bool',
93
94
  'plugin_langflow': 'bool',
@@ -107,13 +108,14 @@ class V1UserFeatures(object):
107
108
  'runnable_public_studio_page': 'bool',
108
109
  'security_docs': 'bool',
109
110
  'show_dev_admin': 'bool',
111
+ 'single_wallet': 'bool',
110
112
  'slurm': 'bool',
111
113
  'slurm_machine_selector': 'bool',
112
- 'snapshotter_service': 'bool',
113
114
  'stop_ide_container_on_shutdown': 'bool',
114
115
  'studio_config': 'bool',
115
116
  'studio_on_stop': 'bool',
116
117
  'studio_version_visibility': 'bool',
118
+ 'studios_dashboard': 'bool',
117
119
  'teamspace_storage_tab': 'bool',
118
120
  'trainium2': 'bool',
119
121
  'use_rclone_mounts_only': 'bool',
@@ -153,21 +155,22 @@ class V1UserFeatures(object):
153
155
  'fair_share': 'fairShare',
154
156
  'featured_studios_admin': 'featuredStudiosAdmin',
155
157
  'filestore': 'filestore',
158
+ 'inactive_notify_delete': 'inactiveNotifyDelete',
156
159
  'instant_capacity_reservation': 'instantCapacityReservation',
157
160
  'job_artifacts_v2': 'jobArtifactsV2',
158
- 'jobs_v2': 'jobsV2',
159
161
  'lambda_labs': 'lambdaLabs',
160
162
  'landing_studios': 'landingStudios',
161
163
  'lit_logger': 'litLogger',
164
+ 'manage_default_studio_machine': 'manageDefaultStudioMachine',
162
165
  'marketplace': 'marketplace',
163
166
  'mmt_fault_tolerance': 'mmtFaultTolerance',
164
167
  'mmt_strategy_selector': 'mmtStrategySelector',
165
168
  'multicloud_saas': 'multicloudSaas',
166
169
  'multiple_studio_versions': 'multipleStudioVersions',
170
+ 'org_admin_alerts': 'orgAdminAlerts',
167
171
  'org_level_member_permissions': 'orgLevelMemberPermissions',
168
172
  'pipelines': 'pipelines',
169
173
  'plugin_distributed': 'pluginDistributed',
170
- 'plugin_fiftyone': 'pluginFiftyone',
171
174
  'plugin_inference': 'pluginInference',
172
175
  'plugin_label_studio': 'pluginLabelStudio',
173
176
  'plugin_langflow': 'pluginLangflow',
@@ -187,20 +190,21 @@ class V1UserFeatures(object):
187
190
  'runnable_public_studio_page': 'runnablePublicStudioPage',
188
191
  'security_docs': 'securityDocs',
189
192
  'show_dev_admin': 'showDevAdmin',
193
+ 'single_wallet': 'singleWallet',
190
194
  'slurm': 'slurm',
191
195
  'slurm_machine_selector': 'slurmMachineSelector',
192
- 'snapshotter_service': 'snapshotterService',
193
196
  'stop_ide_container_on_shutdown': 'stopIdeContainerOnShutdown',
194
197
  'studio_config': 'studioConfig',
195
198
  'studio_on_stop': 'studioOnStop',
196
199
  'studio_version_visibility': 'studioVersionVisibility',
200
+ 'studios_dashboard': 'studiosDashboard',
197
201
  'teamspace_storage_tab': 'teamspaceStorageTab',
198
202
  'trainium2': 'trainium2',
199
203
  'use_rclone_mounts_only': 'useRcloneMountsOnly',
200
204
  'vultr': 'vultr'
201
205
  }
202
206
 
203
- def __init__(self, affiliate_links: 'bool' =None, agents_v2: 'bool' =None, ai_hub_monetization: 'bool' =None, auto_fast_load: 'bool' =None, auto_join_orgs: 'bool' =None, b2c_experience: 'bool' =None, byoc_litcr: 'bool' =None, cap_add: 'list[str]' =None, cap_drop: 'list[str]' =None, capacity_reservation_byoc: 'bool' =None, capacity_reservation_dry_run: 'bool' =None, chat_models: 'bool' =None, cloud_space_environment_templates: 'bool' =None, code_tab: 'bool' =None, collab_screen_sharing: 'bool' =None, cost_attribution_settings: 'bool' =None, custom_app_domain: 'bool' =None, custom_instance_types: 'bool' =None, datasets: 'bool' =None, default_one_cluster: 'bool' =None, deployment_alerts: 'bool' =None, deployment_persistent_disk: 'bool' =None, deployment_reservations: 'bool' =None, dgx_cloud: 'bool' =None, docs_agent: 'bool' =None, drive_v2: 'bool' =None, enable_crypto_crackdown: 'bool' =None, enable_storage_limits: 'bool' =None, enterprise_compute_admin: 'bool' =None, fair_share: 'bool' =None, featured_studios_admin: 'bool' =None, filestore: 'bool' =None, instant_capacity_reservation: 'bool' =None, job_artifacts_v2: 'bool' =None, jobs_v2: 'bool' =None, lambda_labs: 'bool' =None, landing_studios: 'bool' =None, lit_logger: 'bool' =None, marketplace: 'bool' =None, mmt_fault_tolerance: 'bool' =None, mmt_strategy_selector: 'bool' =None, multicloud_saas: 'bool' =None, multiple_studio_versions: 'bool' =None, org_level_member_permissions: 'bool' =None, pipelines: 'bool' =None, plugin_distributed: 'bool' =None, plugin_fiftyone: 'bool' =None, plugin_inference: 'bool' =None, plugin_label_studio: 'bool' =None, plugin_langflow: 'bool' =None, plugin_lightning_apps: 'bool' =None, plugin_lightning_apps_distributed: 'bool' =None, plugin_milvus: 'bool' =None, plugin_python_profiler: 'bool' =None, plugin_react: 'bool' =None, plugin_service: 'bool' =None, plugin_sweeps: 'bool' =None, plugin_weviate: 'bool' =None, pricing_updates: 'bool' =None, product_generator: 'bool' =None, project_selector: 'bool' =None, publish_pipelines: 'bool' =None, restartable_jobs: 'bool' =None, runnable_public_studio_page: 'bool' =None, security_docs: 'bool' =None, show_dev_admin: 'bool' =None, slurm: 'bool' =None, slurm_machine_selector: 'bool' =None, snapshotter_service: 'bool' =None, stop_ide_container_on_shutdown: 'bool' =None, studio_config: 'bool' =None, studio_on_stop: 'bool' =None, studio_version_visibility: 'bool' =None, teamspace_storage_tab: 'bool' =None, trainium2: 'bool' =None, use_rclone_mounts_only: 'bool' =None, vultr: 'bool' =None): # noqa: E501
207
+ def __init__(self, affiliate_links: 'bool' =None, agents_v2: 'bool' =None, ai_hub_monetization: 'bool' =None, auto_fast_load: 'bool' =None, auto_join_orgs: 'bool' =None, b2c_experience: 'bool' =None, byoc_litcr: 'bool' =None, cap_add: 'list[str]' =None, cap_drop: 'list[str]' =None, capacity_reservation_byoc: 'bool' =None, capacity_reservation_dry_run: 'bool' =None, chat_models: 'bool' =None, cloud_space_environment_templates: 'bool' =None, code_tab: 'bool' =None, collab_screen_sharing: 'bool' =None, cost_attribution_settings: 'bool' =None, custom_app_domain: 'bool' =None, custom_instance_types: 'bool' =None, datasets: 'bool' =None, default_one_cluster: 'bool' =None, deployment_alerts: 'bool' =None, deployment_persistent_disk: 'bool' =None, deployment_reservations: 'bool' =None, dgx_cloud: 'bool' =None, docs_agent: 'bool' =None, drive_v2: 'bool' =None, enable_crypto_crackdown: 'bool' =None, enable_storage_limits: 'bool' =None, enterprise_compute_admin: 'bool' =None, fair_share: 'bool' =None, featured_studios_admin: 'bool' =None, filestore: 'bool' =None, inactive_notify_delete: 'bool' =None, instant_capacity_reservation: 'bool' =None, job_artifacts_v2: 'bool' =None, lambda_labs: 'bool' =None, landing_studios: 'bool' =None, lit_logger: 'bool' =None, manage_default_studio_machine: 'bool' =None, marketplace: 'bool' =None, mmt_fault_tolerance: 'bool' =None, mmt_strategy_selector: 'bool' =None, multicloud_saas: 'bool' =None, multiple_studio_versions: 'bool' =None, org_admin_alerts: 'bool' =None, org_level_member_permissions: 'bool' =None, pipelines: 'bool' =None, plugin_distributed: 'bool' =None, plugin_inference: 'bool' =None, plugin_label_studio: 'bool' =None, plugin_langflow: 'bool' =None, plugin_lightning_apps: 'bool' =None, plugin_lightning_apps_distributed: 'bool' =None, plugin_milvus: 'bool' =None, plugin_python_profiler: 'bool' =None, plugin_react: 'bool' =None, plugin_service: 'bool' =None, plugin_sweeps: 'bool' =None, plugin_weviate: 'bool' =None, pricing_updates: 'bool' =None, product_generator: 'bool' =None, project_selector: 'bool' =None, publish_pipelines: 'bool' =None, restartable_jobs: 'bool' =None, runnable_public_studio_page: 'bool' =None, security_docs: 'bool' =None, show_dev_admin: 'bool' =None, single_wallet: 'bool' =None, slurm: 'bool' =None, slurm_machine_selector: 'bool' =None, stop_ide_container_on_shutdown: 'bool' =None, studio_config: 'bool' =None, studio_on_stop: 'bool' =None, studio_version_visibility: 'bool' =None, studios_dashboard: 'bool' =None, teamspace_storage_tab: 'bool' =None, trainium2: 'bool' =None, use_rclone_mounts_only: 'bool' =None, vultr: 'bool' =None): # noqa: E501
204
208
  """V1UserFeatures - a model defined in Swagger""" # noqa: E501
205
209
  self._affiliate_links = None
206
210
  self._agents_v2 = None
@@ -234,21 +238,22 @@ class V1UserFeatures(object):
234
238
  self._fair_share = None
235
239
  self._featured_studios_admin = None
236
240
  self._filestore = None
241
+ self._inactive_notify_delete = None
237
242
  self._instant_capacity_reservation = None
238
243
  self._job_artifacts_v2 = None
239
- self._jobs_v2 = None
240
244
  self._lambda_labs = None
241
245
  self._landing_studios = None
242
246
  self._lit_logger = None
247
+ self._manage_default_studio_machine = None
243
248
  self._marketplace = None
244
249
  self._mmt_fault_tolerance = None
245
250
  self._mmt_strategy_selector = None
246
251
  self._multicloud_saas = None
247
252
  self._multiple_studio_versions = None
253
+ self._org_admin_alerts = None
248
254
  self._org_level_member_permissions = None
249
255
  self._pipelines = None
250
256
  self._plugin_distributed = None
251
- self._plugin_fiftyone = None
252
257
  self._plugin_inference = None
253
258
  self._plugin_label_studio = None
254
259
  self._plugin_langflow = None
@@ -268,13 +273,14 @@ class V1UserFeatures(object):
268
273
  self._runnable_public_studio_page = None
269
274
  self._security_docs = None
270
275
  self._show_dev_admin = None
276
+ self._single_wallet = None
271
277
  self._slurm = None
272
278
  self._slurm_machine_selector = None
273
- self._snapshotter_service = None
274
279
  self._stop_ide_container_on_shutdown = None
275
280
  self._studio_config = None
276
281
  self._studio_on_stop = None
277
282
  self._studio_version_visibility = None
283
+ self._studios_dashboard = None
278
284
  self._teamspace_storage_tab = None
279
285
  self._trainium2 = None
280
286
  self._use_rclone_mounts_only = None
@@ -344,18 +350,20 @@ class V1UserFeatures(object):
344
350
  self.featured_studios_admin = featured_studios_admin
345
351
  if filestore is not None:
346
352
  self.filestore = filestore
353
+ if inactive_notify_delete is not None:
354
+ self.inactive_notify_delete = inactive_notify_delete
347
355
  if instant_capacity_reservation is not None:
348
356
  self.instant_capacity_reservation = instant_capacity_reservation
349
357
  if job_artifacts_v2 is not None:
350
358
  self.job_artifacts_v2 = job_artifacts_v2
351
- if jobs_v2 is not None:
352
- self.jobs_v2 = jobs_v2
353
359
  if lambda_labs is not None:
354
360
  self.lambda_labs = lambda_labs
355
361
  if landing_studios is not None:
356
362
  self.landing_studios = landing_studios
357
363
  if lit_logger is not None:
358
364
  self.lit_logger = lit_logger
365
+ if manage_default_studio_machine is not None:
366
+ self.manage_default_studio_machine = manage_default_studio_machine
359
367
  if marketplace is not None:
360
368
  self.marketplace = marketplace
361
369
  if mmt_fault_tolerance is not None:
@@ -366,14 +374,14 @@ class V1UserFeatures(object):
366
374
  self.multicloud_saas = multicloud_saas
367
375
  if multiple_studio_versions is not None:
368
376
  self.multiple_studio_versions = multiple_studio_versions
377
+ if org_admin_alerts is not None:
378
+ self.org_admin_alerts = org_admin_alerts
369
379
  if org_level_member_permissions is not None:
370
380
  self.org_level_member_permissions = org_level_member_permissions
371
381
  if pipelines is not None:
372
382
  self.pipelines = pipelines
373
383
  if plugin_distributed is not None:
374
384
  self.plugin_distributed = plugin_distributed
375
- if plugin_fiftyone is not None:
376
- self.plugin_fiftyone = plugin_fiftyone
377
385
  if plugin_inference is not None:
378
386
  self.plugin_inference = plugin_inference
379
387
  if plugin_label_studio is not None:
@@ -412,12 +420,12 @@ class V1UserFeatures(object):
412
420
  self.security_docs = security_docs
413
421
  if show_dev_admin is not None:
414
422
  self.show_dev_admin = show_dev_admin
423
+ if single_wallet is not None:
424
+ self.single_wallet = single_wallet
415
425
  if slurm is not None:
416
426
  self.slurm = slurm
417
427
  if slurm_machine_selector is not None:
418
428
  self.slurm_machine_selector = slurm_machine_selector
419
- if snapshotter_service is not None:
420
- self.snapshotter_service = snapshotter_service
421
429
  if stop_ide_container_on_shutdown is not None:
422
430
  self.stop_ide_container_on_shutdown = stop_ide_container_on_shutdown
423
431
  if studio_config is not None:
@@ -426,6 +434,8 @@ class V1UserFeatures(object):
426
434
  self.studio_on_stop = studio_on_stop
427
435
  if studio_version_visibility is not None:
428
436
  self.studio_version_visibility = studio_version_visibility
437
+ if studios_dashboard is not None:
438
+ self.studios_dashboard = studios_dashboard
429
439
  if teamspace_storage_tab is not None:
430
440
  self.teamspace_storage_tab = teamspace_storage_tab
431
441
  if trainium2 is not None:
@@ -1107,6 +1117,27 @@ class V1UserFeatures(object):
1107
1117
 
1108
1118
  self._filestore = filestore
1109
1119
 
1120
+ @property
1121
+ def inactive_notify_delete(self) -> 'bool':
1122
+ """Gets the inactive_notify_delete of this V1UserFeatures. # noqa: E501
1123
+
1124
+
1125
+ :return: The inactive_notify_delete of this V1UserFeatures. # noqa: E501
1126
+ :rtype: bool
1127
+ """
1128
+ return self._inactive_notify_delete
1129
+
1130
+ @inactive_notify_delete.setter
1131
+ def inactive_notify_delete(self, inactive_notify_delete: 'bool'):
1132
+ """Sets the inactive_notify_delete of this V1UserFeatures.
1133
+
1134
+
1135
+ :param inactive_notify_delete: The inactive_notify_delete of this V1UserFeatures. # noqa: E501
1136
+ :type: bool
1137
+ """
1138
+
1139
+ self._inactive_notify_delete = inactive_notify_delete
1140
+
1110
1141
  @property
1111
1142
  def instant_capacity_reservation(self) -> 'bool':
1112
1143
  """Gets the instant_capacity_reservation of this V1UserFeatures. # noqa: E501
@@ -1149,27 +1180,6 @@ class V1UserFeatures(object):
1149
1180
 
1150
1181
  self._job_artifacts_v2 = job_artifacts_v2
1151
1182
 
1152
- @property
1153
- def jobs_v2(self) -> 'bool':
1154
- """Gets the jobs_v2 of this V1UserFeatures. # noqa: E501
1155
-
1156
-
1157
- :return: The jobs_v2 of this V1UserFeatures. # noqa: E501
1158
- :rtype: bool
1159
- """
1160
- return self._jobs_v2
1161
-
1162
- @jobs_v2.setter
1163
- def jobs_v2(self, jobs_v2: 'bool'):
1164
- """Sets the jobs_v2 of this V1UserFeatures.
1165
-
1166
-
1167
- :param jobs_v2: The jobs_v2 of this V1UserFeatures. # noqa: E501
1168
- :type: bool
1169
- """
1170
-
1171
- self._jobs_v2 = jobs_v2
1172
-
1173
1183
  @property
1174
1184
  def lambda_labs(self) -> 'bool':
1175
1185
  """Gets the lambda_labs of this V1UserFeatures. # noqa: E501
@@ -1233,6 +1243,27 @@ class V1UserFeatures(object):
1233
1243
 
1234
1244
  self._lit_logger = lit_logger
1235
1245
 
1246
+ @property
1247
+ def manage_default_studio_machine(self) -> 'bool':
1248
+ """Gets the manage_default_studio_machine of this V1UserFeatures. # noqa: E501
1249
+
1250
+
1251
+ :return: The manage_default_studio_machine of this V1UserFeatures. # noqa: E501
1252
+ :rtype: bool
1253
+ """
1254
+ return self._manage_default_studio_machine
1255
+
1256
+ @manage_default_studio_machine.setter
1257
+ def manage_default_studio_machine(self, manage_default_studio_machine: 'bool'):
1258
+ """Sets the manage_default_studio_machine of this V1UserFeatures.
1259
+
1260
+
1261
+ :param manage_default_studio_machine: The manage_default_studio_machine of this V1UserFeatures. # noqa: E501
1262
+ :type: bool
1263
+ """
1264
+
1265
+ self._manage_default_studio_machine = manage_default_studio_machine
1266
+
1236
1267
  @property
1237
1268
  def marketplace(self) -> 'bool':
1238
1269
  """Gets the marketplace of this V1UserFeatures. # noqa: E501
@@ -1338,6 +1369,27 @@ class V1UserFeatures(object):
1338
1369
 
1339
1370
  self._multiple_studio_versions = multiple_studio_versions
1340
1371
 
1372
+ @property
1373
+ def org_admin_alerts(self) -> 'bool':
1374
+ """Gets the org_admin_alerts of this V1UserFeatures. # noqa: E501
1375
+
1376
+
1377
+ :return: The org_admin_alerts of this V1UserFeatures. # noqa: E501
1378
+ :rtype: bool
1379
+ """
1380
+ return self._org_admin_alerts
1381
+
1382
+ @org_admin_alerts.setter
1383
+ def org_admin_alerts(self, org_admin_alerts: 'bool'):
1384
+ """Sets the org_admin_alerts of this V1UserFeatures.
1385
+
1386
+
1387
+ :param org_admin_alerts: The org_admin_alerts of this V1UserFeatures. # noqa: E501
1388
+ :type: bool
1389
+ """
1390
+
1391
+ self._org_admin_alerts = org_admin_alerts
1392
+
1341
1393
  @property
1342
1394
  def org_level_member_permissions(self) -> 'bool':
1343
1395
  """Gets the org_level_member_permissions of this V1UserFeatures. # noqa: E501
@@ -1401,27 +1453,6 @@ class V1UserFeatures(object):
1401
1453
 
1402
1454
  self._plugin_distributed = plugin_distributed
1403
1455
 
1404
- @property
1405
- def plugin_fiftyone(self) -> 'bool':
1406
- """Gets the plugin_fiftyone of this V1UserFeatures. # noqa: E501
1407
-
1408
-
1409
- :return: The plugin_fiftyone of this V1UserFeatures. # noqa: E501
1410
- :rtype: bool
1411
- """
1412
- return self._plugin_fiftyone
1413
-
1414
- @plugin_fiftyone.setter
1415
- def plugin_fiftyone(self, plugin_fiftyone: 'bool'):
1416
- """Sets the plugin_fiftyone of this V1UserFeatures.
1417
-
1418
-
1419
- :param plugin_fiftyone: The plugin_fiftyone of this V1UserFeatures. # noqa: E501
1420
- :type: bool
1421
- """
1422
-
1423
- self._plugin_fiftyone = plugin_fiftyone
1424
-
1425
1456
  @property
1426
1457
  def plugin_inference(self) -> 'bool':
1427
1458
  """Gets the plugin_inference of this V1UserFeatures. # noqa: E501
@@ -1821,6 +1852,27 @@ class V1UserFeatures(object):
1821
1852
 
1822
1853
  self._show_dev_admin = show_dev_admin
1823
1854
 
1855
+ @property
1856
+ def single_wallet(self) -> 'bool':
1857
+ """Gets the single_wallet of this V1UserFeatures. # noqa: E501
1858
+
1859
+
1860
+ :return: The single_wallet of this V1UserFeatures. # noqa: E501
1861
+ :rtype: bool
1862
+ """
1863
+ return self._single_wallet
1864
+
1865
+ @single_wallet.setter
1866
+ def single_wallet(self, single_wallet: 'bool'):
1867
+ """Sets the single_wallet of this V1UserFeatures.
1868
+
1869
+
1870
+ :param single_wallet: The single_wallet of this V1UserFeatures. # noqa: E501
1871
+ :type: bool
1872
+ """
1873
+
1874
+ self._single_wallet = single_wallet
1875
+
1824
1876
  @property
1825
1877
  def slurm(self) -> 'bool':
1826
1878
  """Gets the slurm of this V1UserFeatures. # noqa: E501
@@ -1863,27 +1915,6 @@ class V1UserFeatures(object):
1863
1915
 
1864
1916
  self._slurm_machine_selector = slurm_machine_selector
1865
1917
 
1866
- @property
1867
- def snapshotter_service(self) -> 'bool':
1868
- """Gets the snapshotter_service of this V1UserFeatures. # noqa: E501
1869
-
1870
-
1871
- :return: The snapshotter_service of this V1UserFeatures. # noqa: E501
1872
- :rtype: bool
1873
- """
1874
- return self._snapshotter_service
1875
-
1876
- @snapshotter_service.setter
1877
- def snapshotter_service(self, snapshotter_service: 'bool'):
1878
- """Sets the snapshotter_service of this V1UserFeatures.
1879
-
1880
-
1881
- :param snapshotter_service: The snapshotter_service of this V1UserFeatures. # noqa: E501
1882
- :type: bool
1883
- """
1884
-
1885
- self._snapshotter_service = snapshotter_service
1886
-
1887
1918
  @property
1888
1919
  def stop_ide_container_on_shutdown(self) -> 'bool':
1889
1920
  """Gets the stop_ide_container_on_shutdown of this V1UserFeatures. # noqa: E501
@@ -1968,6 +1999,27 @@ class V1UserFeatures(object):
1968
1999
 
1969
2000
  self._studio_version_visibility = studio_version_visibility
1970
2001
 
2002
+ @property
2003
+ def studios_dashboard(self) -> 'bool':
2004
+ """Gets the studios_dashboard of this V1UserFeatures. # noqa: E501
2005
+
2006
+
2007
+ :return: The studios_dashboard of this V1UserFeatures. # noqa: E501
2008
+ :rtype: bool
2009
+ """
2010
+ return self._studios_dashboard
2011
+
2012
+ @studios_dashboard.setter
2013
+ def studios_dashboard(self, studios_dashboard: 'bool'):
2014
+ """Sets the studios_dashboard of this V1UserFeatures.
2015
+
2016
+
2017
+ :param studios_dashboard: The studios_dashboard of this V1UserFeatures. # noqa: E501
2018
+ :type: bool
2019
+ """
2020
+
2021
+ self._studios_dashboard = studios_dashboard
2022
+
1971
2023
  @property
1972
2024
  def teamspace_storage_tab(self) -> 'bool':
1973
2025
  """Gets the teamspace_storage_tab of this V1UserFeatures. # noqa: E501
@@ -42,33 +42,33 @@ class V1VoltageParkDirectV1(object):
42
42
  """
43
43
  swagger_types = {
44
44
  'credentials_secret_id': 'str',
45
- 'parent_cluster_id': 'str',
46
45
  'primary_region': 'str',
47
- 'regions': 'list[str]'
46
+ 'regions': 'list[str]',
47
+ 'reserved_instance_ids': 'list[str]'
48
48
  }
49
49
 
50
50
  attribute_map = {
51
51
  'credentials_secret_id': 'credentialsSecretId',
52
- 'parent_cluster_id': 'parentClusterId',
53
52
  'primary_region': 'primaryRegion',
54
- 'regions': 'regions'
53
+ 'regions': 'regions',
54
+ 'reserved_instance_ids': 'reservedInstanceIds'
55
55
  }
56
56
 
57
- def __init__(self, credentials_secret_id: 'str' =None, parent_cluster_id: 'str' =None, primary_region: 'str' =None, regions: 'list[str]' =None): # noqa: E501
57
+ def __init__(self, credentials_secret_id: 'str' =None, primary_region: 'str' =None, regions: 'list[str]' =None, reserved_instance_ids: 'list[str]' =None): # noqa: E501
58
58
  """V1VoltageParkDirectV1 - a model defined in Swagger""" # noqa: E501
59
59
  self._credentials_secret_id = None
60
- self._parent_cluster_id = None
61
60
  self._primary_region = None
62
61
  self._regions = None
62
+ self._reserved_instance_ids = None
63
63
  self.discriminator = None
64
64
  if credentials_secret_id is not None:
65
65
  self.credentials_secret_id = credentials_secret_id
66
- if parent_cluster_id is not None:
67
- self.parent_cluster_id = parent_cluster_id
68
66
  if primary_region is not None:
69
67
  self.primary_region = primary_region
70
68
  if regions is not None:
71
69
  self.regions = regions
70
+ if reserved_instance_ids is not None:
71
+ self.reserved_instance_ids = reserved_instance_ids
72
72
 
73
73
  @property
74
74
  def credentials_secret_id(self) -> 'str':
@@ -93,27 +93,6 @@ class V1VoltageParkDirectV1(object):
93
93
 
94
94
  self._credentials_secret_id = credentials_secret_id
95
95
 
96
- @property
97
- def parent_cluster_id(self) -> 'str':
98
- """Gets the parent_cluster_id of this V1VoltageParkDirectV1. # noqa: E501
99
-
100
-
101
- :return: The parent_cluster_id of this V1VoltageParkDirectV1. # noqa: E501
102
- :rtype: str
103
- """
104
- return self._parent_cluster_id
105
-
106
- @parent_cluster_id.setter
107
- def parent_cluster_id(self, parent_cluster_id: 'str'):
108
- """Sets the parent_cluster_id of this V1VoltageParkDirectV1.
109
-
110
-
111
- :param parent_cluster_id: The parent_cluster_id of this V1VoltageParkDirectV1. # noqa: E501
112
- :type: str
113
- """
114
-
115
- self._parent_cluster_id = parent_cluster_id
116
-
117
96
  @property
118
97
  def primary_region(self) -> 'str':
119
98
  """Gets the primary_region of this V1VoltageParkDirectV1. # noqa: E501
@@ -156,6 +135,27 @@ class V1VoltageParkDirectV1(object):
156
135
 
157
136
  self._regions = regions
158
137
 
138
+ @property
139
+ def reserved_instance_ids(self) -> 'list[str]':
140
+ """Gets the reserved_instance_ids of this V1VoltageParkDirectV1. # noqa: E501
141
+
142
+
143
+ :return: The reserved_instance_ids of this V1VoltageParkDirectV1. # noqa: E501
144
+ :rtype: list[str]
145
+ """
146
+ return self._reserved_instance_ids
147
+
148
+ @reserved_instance_ids.setter
149
+ def reserved_instance_ids(self, reserved_instance_ids: 'list[str]'):
150
+ """Sets the reserved_instance_ids of this V1VoltageParkDirectV1.
151
+
152
+
153
+ :param reserved_instance_ids: The reserved_instance_ids of this V1VoltageParkDirectV1. # noqa: E501
154
+ :type: list[str]
155
+ """
156
+
157
+ self._reserved_instance_ids = reserved_instance_ids
158
+
159
159
  def to_dict(self) -> dict:
160
160
  """Returns the model properties as a dict"""
161
161
  result = {}
@@ -42,29 +42,24 @@ class V1VultrDirectV1(object):
42
42
  """
43
43
  swagger_types = {
44
44
  'credentials_secret_id': 'str',
45
- 'parent_cluster_id': 'str',
46
45
  'primary_region': 'str',
47
46
  'regions': 'list[str]'
48
47
  }
49
48
 
50
49
  attribute_map = {
51
50
  'credentials_secret_id': 'credentialsSecretId',
52
- 'parent_cluster_id': 'parentClusterId',
53
51
  'primary_region': 'primaryRegion',
54
52
  'regions': 'regions'
55
53
  }
56
54
 
57
- def __init__(self, credentials_secret_id: 'str' =None, parent_cluster_id: 'str' =None, primary_region: 'str' =None, regions: 'list[str]' =None): # noqa: E501
55
+ def __init__(self, credentials_secret_id: 'str' =None, primary_region: 'str' =None, regions: 'list[str]' =None): # noqa: E501
58
56
  """V1VultrDirectV1 - a model defined in Swagger""" # noqa: E501
59
57
  self._credentials_secret_id = None
60
- self._parent_cluster_id = None
61
58
  self._primary_region = None
62
59
  self._regions = None
63
60
  self.discriminator = None
64
61
  if credentials_secret_id is not None:
65
62
  self.credentials_secret_id = credentials_secret_id
66
- if parent_cluster_id is not None:
67
- self.parent_cluster_id = parent_cluster_id
68
63
  if primary_region is not None:
69
64
  self.primary_region = primary_region
70
65
  if regions is not None:
@@ -93,27 +88,6 @@ class V1VultrDirectV1(object):
93
88
 
94
89
  self._credentials_secret_id = credentials_secret_id
95
90
 
96
- @property
97
- def parent_cluster_id(self) -> 'str':
98
- """Gets the parent_cluster_id of this V1VultrDirectV1. # noqa: E501
99
-
100
-
101
- :return: The parent_cluster_id of this V1VultrDirectV1. # noqa: E501
102
- :rtype: str
103
- """
104
- return self._parent_cluster_id
105
-
106
- @parent_cluster_id.setter
107
- def parent_cluster_id(self, parent_cluster_id: 'str'):
108
- """Sets the parent_cluster_id of this V1VultrDirectV1.
109
-
110
-
111
- :param parent_cluster_id: The parent_cluster_id of this V1VultrDirectV1. # noqa: E501
112
- :type: str
113
- """
114
-
115
- self._parent_cluster_id = parent_cluster_id
116
-
117
91
  @property
118
92
  def primary_region(self) -> 'str':
119
93
  """Gets the primary_region of this V1VultrDirectV1. # noqa: E501
@@ -64,7 +64,14 @@ class LitContainer:
64
64
  return self._api.delete_container(project_id, container)
65
65
 
66
66
  def upload_container(
67
- self, container: str, teamspace: str, org: Optional[str] = None, user: Optional[str] = None, tag: str = "latest"
67
+ self,
68
+ container: str,
69
+ teamspace: str,
70
+ org: Optional[str] = None,
71
+ user: Optional[str] = None,
72
+ tag: str = "latest",
73
+ cloud_account: Optional[str] = None,
74
+ platform: Optional[str] = "linux/amd64",
68
75
  ) -> None:
69
76
  """Upload a container to the docker registry.
70
77
 
@@ -74,18 +81,26 @@ class LitContainer:
74
81
  org: The organization which contains the container.
75
82
  user: The user which contains the container.
76
83
  tag: The tag to use for the container.
84
+ cloud_account: The cloud account where the container is stored.
85
+ platform: The platform the container is meant to run on.
77
86
  """
78
87
  try:
79
88
  teamspace = _resolve_teamspace(teamspace=teamspace, org=org, user=user)
80
89
  except Exception as e:
81
90
  raise ValueError(f"Could not resolve teamspace: {e}") from e
82
91
 
83
- resp = self._api.upload_container(container, teamspace, tag)
92
+ resp = self._api.upload_container(container, teamspace, tag, cloud_account, platform=platform)
84
93
  for line in resp:
85
94
  print(line)
86
95
 
87
96
  def download_container(
88
- self, container: str, teamspace: str, org: Optional[str] = None, user: Optional[str] = None, tag: str = "latest"
97
+ self,
98
+ container: str,
99
+ teamspace: str,
100
+ org: Optional[str] = None,
101
+ user: Optional[str] = None,
102
+ tag: str = "latest",
103
+ cloud_account: Optional[str] = None,
89
104
  ) -> None:
90
105
  """Download a container from the docker registry.
91
106
 
@@ -101,4 +116,4 @@ class LitContainer:
101
116
  except Exception as e:
102
117
  raise ValueError(f"Could not resolve teamspace: {e}") from e
103
118
 
104
- return self._api.download_container(container, teamspace, tag)
119
+ return self._api.download_container(container, teamspace, tag, cloud_account)
lightning_sdk/models.py CHANGED
@@ -144,7 +144,7 @@ def download_model(
144
144
 
145
145
  def upload_model(
146
146
  name: str,
147
- path: Union[Path, str] = ".",
147
+ path: Union[str, Path, List[Union[str, Path]]] = ".",
148
148
  cloud_account: Optional[str] = None,
149
149
  progress_bar: bool = True,
150
150
  ) -> UploadedModelInfo: