lightning-sdk 0.2.15__py3-none-any.whl → 0.2.16__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 (74) hide show
  1. lightning_sdk/__init__.py +1 -1
  2. lightning_sdk/api/base_studio_api.py +7 -1
  3. lightning_sdk/api/cluster_api.py +83 -1
  4. lightning_sdk/api/llm_api.py +24 -5
  5. lightning_sdk/api/studio_api.py +3 -0
  6. lightning_sdk/api/teamspace_api.py +127 -1
  7. lightning_sdk/api/utils.py +4 -0
  8. lightning_sdk/base_studio.py +14 -1
  9. lightning_sdk/cli/create.py +21 -1
  10. lightning_sdk/cli/deploy/__init__.py +0 -0
  11. lightning_sdk/cli/deploy/_auth.py +189 -0
  12. lightning_sdk/cli/deploy/devbox.py +157 -0
  13. lightning_sdk/cli/{serve.py → deploy/serve.py} +11 -322
  14. lightning_sdk/cli/download.py +44 -16
  15. lightning_sdk/cli/entrypoint.py +1 -1
  16. lightning_sdk/cli/open.py +21 -2
  17. lightning_sdk/cli/start.py +12 -3
  18. lightning_sdk/cli/upload.py +2 -4
  19. lightning_sdk/lightning_cloud/openapi/__init__.py +18 -0
  20. lightning_sdk/lightning_cloud/openapi/api/assistants_service_api.py +121 -0
  21. lightning_sdk/lightning_cloud/openapi/api/cloud_space_service_api.py +105 -0
  22. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +105 -0
  23. lightning_sdk/lightning_cloud/openapi/api/jobs_service_api.py +747 -105
  24. lightning_sdk/lightning_cloud/openapi/api/storage_service_api.py +93 -0
  25. lightning_sdk/lightning_cloud/openapi/models/__init__.py +18 -0
  26. lightning_sdk/lightning_cloud/openapi/models/assistant_id_conversations_body.py +27 -1
  27. lightning_sdk/lightning_cloud/openapi/models/cloudspaces_id_body.py +53 -1
  28. lightning_sdk/lightning_cloud/openapi/models/deployment_id_alertingpolicies_body.py +331 -0
  29. lightning_sdk/lightning_cloud/openapi/models/deployment_id_alertingpolicies_body1.py +305 -0
  30. lightning_sdk/lightning_cloud/openapi/models/deployments_id_body.py +53 -1
  31. lightning_sdk/lightning_cloud/openapi/models/models_id_body.py +123 -0
  32. lightning_sdk/lightning_cloud/openapi/models/orgs_id_body.py +105 -1
  33. lightning_sdk/lightning_cloud/openapi/models/project_id_cloudspaces_body.py +27 -1
  34. lightning_sdk/lightning_cloud/openapi/models/projects_id_body.py +29 -3
  35. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space.py +53 -1
  36. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_source_type.py +103 -0
  37. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_tagging_options.py +27 -1
  38. lightning_sdk/lightning_cloud/openapi/models/v1_delete_deployment_alerting_policy_response.py +175 -0
  39. lightning_sdk/lightning_cloud/openapi/models/v1_deployment.py +53 -1
  40. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_alerting_event.py +487 -0
  41. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_alerting_policy.py +383 -0
  42. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_alerting_policy_frequency.py +105 -0
  43. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_alerting_policy_operation.py +105 -0
  44. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_alerting_policy_severity.py +106 -0
  45. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_alerting_policy_type.py +111 -0
  46. lightning_sdk/lightning_cloud/openapi/models/v1_ge_list_deployment_routing_telemetry_response.py +27 -1
  47. lightning_sdk/lightning_cloud/openapi/models/v1_get_cloud_space_instance_open_ports_response.py +123 -0
  48. lightning_sdk/lightning_cloud/openapi/models/v1_get_deployment_routing_telemetry_content_response.py +123 -0
  49. lightning_sdk/lightning_cloud/openapi/models/v1_get_organization_storage_metadata_response.py +331 -0
  50. lightning_sdk/lightning_cloud/openapi/models/v1_get_user_response.py +1 -27
  51. lightning_sdk/lightning_cloud/openapi/models/v1_google_cloud_direct_v1.py +27 -1
  52. lightning_sdk/lightning_cloud/openapi/models/v1_list_deployment_alerting_events_response.py +123 -0
  53. lightning_sdk/lightning_cloud/openapi/models/v1_list_deployment_alerting_policies_response.py +175 -0
  54. lightning_sdk/lightning_cloud/openapi/models/v1_membership.py +27 -1
  55. lightning_sdk/lightning_cloud/openapi/models/v1_organization.py +105 -1
  56. lightning_sdk/lightning_cloud/openapi/models/v1_project.py +27 -1
  57. lightning_sdk/lightning_cloud/openapi/models/v1_project_membership.py +27 -1
  58. lightning_sdk/lightning_cloud/openapi/models/v1_project_settings.py +29 -3
  59. lightning_sdk/lightning_cloud/openapi/models/v1_project_storage.py +53 -1
  60. lightning_sdk/lightning_cloud/openapi/models/v1_routing_telemetry.py +253 -0
  61. lightning_sdk/lightning_cloud/openapi/models/v1_server_alert_type.py +1 -0
  62. lightning_sdk/lightning_cloud/openapi/models/v1_sleep_server_response.py +97 -0
  63. lightning_sdk/lightning_cloud/openapi/models/v1_update_user_request.py +1 -27
  64. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +79 -27
  65. lightning_sdk/lightning_cloud/openapi/models/v1_user_requested_compute_config.py +27 -1
  66. lightning_sdk/llm/llm.py +52 -8
  67. lightning_sdk/studio.py +32 -1
  68. lightning_sdk/teamspace.py +68 -0
  69. {lightning_sdk-0.2.15.dist-info → lightning_sdk-0.2.16.dist-info}/METADATA +1 -1
  70. {lightning_sdk-0.2.15.dist-info → lightning_sdk-0.2.16.dist-info}/RECORD +74 -53
  71. {lightning_sdk-0.2.15.dist-info → lightning_sdk-0.2.16.dist-info}/LICENSE +0 -0
  72. {lightning_sdk-0.2.15.dist-info → lightning_sdk-0.2.16.dist-info}/WHEEL +0 -0
  73. {lightning_sdk-0.2.15.dist-info → lightning_sdk-0.2.16.dist-info}/entry_points.txt +0 -0
  74. {lightning_sdk-0.2.15.dist-info → lightning_sdk-0.2.16.dist-info}/top_level.txt +0 -0
@@ -52,8 +52,10 @@ class DeploymentsIdBody(object):
52
52
  'desired_state': 'V1DeploymentState',
53
53
  'endpoint': 'V1Endpoint',
54
54
  'is_published': 'bool',
55
+ 'managed': 'bool',
55
56
  'managed_endpoint_id': 'str',
56
57
  'name': 'str',
58
+ 'oncall_notification': 'bool',
57
59
  'parameter_spec': 'V1ParameterizationSpec',
58
60
  'pipeline_id': 'str',
59
61
  'release_id': 'str',
@@ -80,8 +82,10 @@ class DeploymentsIdBody(object):
80
82
  'desired_state': 'desiredState',
81
83
  'endpoint': 'endpoint',
82
84
  'is_published': 'isPublished',
85
+ 'managed': 'managed',
83
86
  'managed_endpoint_id': 'managedEndpointId',
84
87
  'name': 'name',
88
+ 'oncall_notification': 'oncallNotification',
85
89
  'parameter_spec': 'parameterSpec',
86
90
  'pipeline_id': 'pipelineId',
87
91
  'release_id': 'releaseId',
@@ -96,7 +100,7 @@ class DeploymentsIdBody(object):
96
100
  'visibility': 'visibility'
97
101
  }
98
102
 
99
- def __init__(self, api_standard: 'str' =None, apis: 'list[V1DeploymentAPI]' =None, assistant_id: 'str' =None, autoscaling: 'V1AutoscalingSpec' =None, cloudspace_id: 'str' =None, created_at: 'datetime' =None, current_state: 'V1DeploymentState' =None, debug: 'bool' =None, desired_state: 'V1DeploymentState' =None, endpoint: 'V1Endpoint' =None, is_published: 'bool' =None, managed_endpoint_id: 'str' =None, name: 'str' =None, parameter_spec: 'V1ParameterizationSpec' =None, pipeline_id: 'str' =None, release_id: 'str' =None, replicas: 'int' =None, spec: 'V1JobSpec' =None, status: 'V1DeploymentStatus' =None, strategy: 'V1DeploymentStrategy' =None, template_id: 'str' =None, total_cost: 'float' =None, updated_at: 'datetime' =None, user_id: 'str' =None, visibility: 'V1ResourceVisibility' =None): # noqa: E501
103
+ def __init__(self, api_standard: 'str' =None, apis: 'list[V1DeploymentAPI]' =None, assistant_id: 'str' =None, autoscaling: 'V1AutoscalingSpec' =None, cloudspace_id: 'str' =None, created_at: 'datetime' =None, current_state: 'V1DeploymentState' =None, debug: 'bool' =None, desired_state: 'V1DeploymentState' =None, endpoint: 'V1Endpoint' =None, is_published: 'bool' =None, managed: 'bool' =None, managed_endpoint_id: 'str' =None, name: 'str' =None, oncall_notification: 'bool' =None, parameter_spec: 'V1ParameterizationSpec' =None, pipeline_id: 'str' =None, release_id: 'str' =None, replicas: 'int' =None, spec: 'V1JobSpec' =None, status: 'V1DeploymentStatus' =None, strategy: 'V1DeploymentStrategy' =None, template_id: 'str' =None, total_cost: 'float' =None, updated_at: 'datetime' =None, user_id: 'str' =None, visibility: 'V1ResourceVisibility' =None): # noqa: E501
100
104
  """DeploymentsIdBody - a model defined in Swagger""" # noqa: E501
101
105
  self._api_standard = None
102
106
  self._apis = None
@@ -109,8 +113,10 @@ class DeploymentsIdBody(object):
109
113
  self._desired_state = None
110
114
  self._endpoint = None
111
115
  self._is_published = None
116
+ self._managed = None
112
117
  self._managed_endpoint_id = None
113
118
  self._name = None
119
+ self._oncall_notification = None
114
120
  self._parameter_spec = None
115
121
  self._pipeline_id = None
116
122
  self._release_id = None
@@ -146,10 +152,14 @@ class DeploymentsIdBody(object):
146
152
  self.endpoint = endpoint
147
153
  if is_published is not None:
148
154
  self.is_published = is_published
155
+ if managed is not None:
156
+ self.managed = managed
149
157
  if managed_endpoint_id is not None:
150
158
  self.managed_endpoint_id = managed_endpoint_id
151
159
  if name is not None:
152
160
  self.name = name
161
+ if oncall_notification is not None:
162
+ self.oncall_notification = oncall_notification
153
163
  if parameter_spec is not None:
154
164
  self.parameter_spec = parameter_spec
155
165
  if pipeline_id is not None:
@@ -406,6 +416,27 @@ class DeploymentsIdBody(object):
406
416
 
407
417
  self._is_published = is_published
408
418
 
419
+ @property
420
+ def managed(self) -> 'bool':
421
+ """Gets the managed of this DeploymentsIdBody. # noqa: E501
422
+
423
+
424
+ :return: The managed of this DeploymentsIdBody. # noqa: E501
425
+ :rtype: bool
426
+ """
427
+ return self._managed
428
+
429
+ @managed.setter
430
+ def managed(self, managed: 'bool'):
431
+ """Sets the managed of this DeploymentsIdBody.
432
+
433
+
434
+ :param managed: The managed of this DeploymentsIdBody. # noqa: E501
435
+ :type: bool
436
+ """
437
+
438
+ self._managed = managed
439
+
409
440
  @property
410
441
  def managed_endpoint_id(self) -> 'str':
411
442
  """Gets the managed_endpoint_id of this DeploymentsIdBody. # noqa: E501
@@ -448,6 +479,27 @@ class DeploymentsIdBody(object):
448
479
 
449
480
  self._name = name
450
481
 
482
+ @property
483
+ def oncall_notification(self) -> 'bool':
484
+ """Gets the oncall_notification of this DeploymentsIdBody. # noqa: E501
485
+
486
+
487
+ :return: The oncall_notification of this DeploymentsIdBody. # noqa: E501
488
+ :rtype: bool
489
+ """
490
+ return self._oncall_notification
491
+
492
+ @oncall_notification.setter
493
+ def oncall_notification(self, oncall_notification: 'bool'):
494
+ """Sets the oncall_notification of this DeploymentsIdBody.
495
+
496
+
497
+ :param oncall_notification: The oncall_notification of this DeploymentsIdBody. # noqa: E501
498
+ :type: bool
499
+ """
500
+
501
+ self._oncall_notification = oncall_notification
502
+
451
503
  @property
452
504
  def parameter_spec(self) -> 'V1ParameterizationSpec':
453
505
  """Gets the parameter_spec of this DeploymentsIdBody. # noqa: E501
@@ -0,0 +1,123 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ external/v1/auth_service.proto
5
+
6
+ No description provided (generated by Swagger Codegen https://github.com/swagger-api/swagger-codegen) # noqa: E501
7
+
8
+ OpenAPI spec version: version not set
9
+
10
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
11
+
12
+ NOTE
13
+ ----
14
+ standard swagger-codegen-cli for this python client has been modified
15
+ by custom templates. The purpose of these templates is to include
16
+ typing information in the API and Model code. Please refer to the
17
+ main grid repository for more info
18
+ """
19
+
20
+ import pprint
21
+ import re # noqa: F401
22
+
23
+ from typing import TYPE_CHECKING
24
+
25
+ import six
26
+
27
+ if TYPE_CHECKING:
28
+ from datetime import datetime
29
+ from lightning_sdk.lightning_cloud.openapi.models import *
30
+
31
+ class ModelsIdBody(object):
32
+ """NOTE: This class is auto generated by the swagger code generator program.
33
+
34
+ Do not edit the class manually.
35
+ """
36
+ """
37
+ Attributes:
38
+ swagger_types (dict): The key is attribute name
39
+ and the value is attribute type.
40
+ attribute_map (dict): The key is attribute name
41
+ and the value is json key in definition.
42
+ """
43
+ swagger_types = {
44
+ 'model': 'V1ManagedModel'
45
+ }
46
+
47
+ attribute_map = {
48
+ 'model': 'model'
49
+ }
50
+
51
+ def __init__(self, model: 'V1ManagedModel' =None): # noqa: E501
52
+ """ModelsIdBody - a model defined in Swagger""" # noqa: E501
53
+ self._model = None
54
+ self.discriminator = None
55
+ if model is not None:
56
+ self.model = model
57
+
58
+ @property
59
+ def model(self) -> 'V1ManagedModel':
60
+ """Gets the model of this ModelsIdBody. # noqa: E501
61
+
62
+
63
+ :return: The model of this ModelsIdBody. # noqa: E501
64
+ :rtype: V1ManagedModel
65
+ """
66
+ return self._model
67
+
68
+ @model.setter
69
+ def model(self, model: 'V1ManagedModel'):
70
+ """Sets the model of this ModelsIdBody.
71
+
72
+
73
+ :param model: The model of this ModelsIdBody. # noqa: E501
74
+ :type: V1ManagedModel
75
+ """
76
+
77
+ self._model = model
78
+
79
+ def to_dict(self) -> dict:
80
+ """Returns the model properties as a dict"""
81
+ result = {}
82
+
83
+ for attr, _ in six.iteritems(self.swagger_types):
84
+ value = getattr(self, attr)
85
+ if isinstance(value, list):
86
+ result[attr] = list(map(
87
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
88
+ value
89
+ ))
90
+ elif hasattr(value, "to_dict"):
91
+ result[attr] = value.to_dict()
92
+ elif isinstance(value, dict):
93
+ result[attr] = dict(map(
94
+ lambda item: (item[0], item[1].to_dict())
95
+ if hasattr(item[1], "to_dict") else item,
96
+ value.items()
97
+ ))
98
+ else:
99
+ result[attr] = value
100
+ if issubclass(ModelsIdBody, dict):
101
+ for key, value in self.items():
102
+ result[key] = value
103
+
104
+ return result
105
+
106
+ def to_str(self) -> str:
107
+ """Returns the string representation of the model"""
108
+ return pprint.pformat(self.to_dict())
109
+
110
+ def __repr__(self) -> str:
111
+ """For `print` and `pprint`"""
112
+ return self.to_str()
113
+
114
+ def __eq__(self, other: 'ModelsIdBody') -> bool:
115
+ """Returns true if both objects are equal"""
116
+ if not isinstance(other, ModelsIdBody):
117
+ return False
118
+
119
+ return self.__dict__ == other.__dict__
120
+
121
+ def __ne__(self, other: 'ModelsIdBody') -> bool:
122
+ """Returns true if both objects are not equal"""
123
+ return not self == other
@@ -44,6 +44,7 @@ class OrgsIdBody(object):
44
44
  'alerts_config': 'V1AlertsConfig',
45
45
  'allow_aws_saas': 'bool',
46
46
  'allow_budgeting': 'bool',
47
+ 'allow_credits_auto_replenish': 'bool',
47
48
  'allow_dgx_saas': 'bool',
48
49
  'allow_external_project_duplication': 'bool',
49
50
  'allow_gcp_saas': 'bool',
@@ -56,6 +57,8 @@ class OrgsIdBody(object):
56
57
  'allow_vultr_saas': 'bool',
57
58
  'auto_invite_by_domain': 'bool',
58
59
  'auto_join_domains': 'list[str]',
60
+ 'auto_replenish_amount': 'float',
61
+ 'auto_replenish_threshold': 'float',
59
62
  'auto_switch_machine': 'bool',
60
63
  'default_machine_type': 'str',
61
64
  'description': 'str',
@@ -68,6 +71,7 @@ class OrgsIdBody(object):
68
71
  'preferred_deployment_provider': 'str',
69
72
  'preferred_studio_provider': 'str',
70
73
  'start_studios_on_spot_instance': 'bool',
74
+ 'switch_to_default_machine_on_idle': 'bool',
71
75
  'teamspace_default_credits': 'float',
72
76
  'twitter_username': 'str',
73
77
  'workload_max_run_duration': 'str'
@@ -77,6 +81,7 @@ class OrgsIdBody(object):
77
81
  'alerts_config': 'alertsConfig',
78
82
  'allow_aws_saas': 'allowAwsSaas',
79
83
  'allow_budgeting': 'allowBudgeting',
84
+ 'allow_credits_auto_replenish': 'allowCreditsAutoReplenish',
80
85
  'allow_dgx_saas': 'allowDgxSaas',
81
86
  'allow_external_project_duplication': 'allowExternalProjectDuplication',
82
87
  'allow_gcp_saas': 'allowGcpSaas',
@@ -89,6 +94,8 @@ class OrgsIdBody(object):
89
94
  'allow_vultr_saas': 'allowVultrSaas',
90
95
  'auto_invite_by_domain': 'autoInviteByDomain',
91
96
  'auto_join_domains': 'autoJoinDomains',
97
+ 'auto_replenish_amount': 'autoReplenishAmount',
98
+ 'auto_replenish_threshold': 'autoReplenishThreshold',
92
99
  'auto_switch_machine': 'autoSwitchMachine',
93
100
  'default_machine_type': 'defaultMachineType',
94
101
  'description': 'description',
@@ -101,16 +108,18 @@ class OrgsIdBody(object):
101
108
  'preferred_deployment_provider': 'preferredDeploymentProvider',
102
109
  'preferred_studio_provider': 'preferredStudioProvider',
103
110
  'start_studios_on_spot_instance': 'startStudiosOnSpotInstance',
111
+ 'switch_to_default_machine_on_idle': 'switchToDefaultMachineOnIdle',
104
112
  'teamspace_default_credits': 'teamspaceDefaultCredits',
105
113
  'twitter_username': 'twitterUsername',
106
114
  'workload_max_run_duration': 'workloadMaxRunDuration'
107
115
  }
108
116
 
109
- def __init__(self, alerts_config: 'V1AlertsConfig' =None, allow_aws_saas: 'bool' =None, allow_budgeting: 'bool' =None, allow_dgx_saas: 'bool' =None, allow_external_project_duplication: 'bool' =None, allow_gcp_saas: 'bool' =None, allow_guest: 'bool' =None, allow_lambda_saas: 'bool' =None, allow_lightning_saas: 'bool' =None, allow_marketplace: 'bool' =None, allow_member_invitations: 'bool' =None, allow_member_teamspace_creation: 'bool' =None, allow_vultr_saas: 'bool' =None, auto_invite_by_domain: 'bool' =None, auto_join_domains: 'list[str]' =None, auto_switch_machine: 'bool' =None, default_machine_type: 'str' =None, description: 'str' =None, display_name: 'str' =None, domain: 'str' =None, email: 'str' =None, featured_gallery: 'bool' =None, location: 'str' =None, preferred_cluster: 'str' =None, preferred_deployment_provider: 'str' =None, preferred_studio_provider: 'str' =None, start_studios_on_spot_instance: 'bool' =None, teamspace_default_credits: 'float' =None, twitter_username: 'str' =None, workload_max_run_duration: 'str' =None): # noqa: E501
117
+ def __init__(self, alerts_config: 'V1AlertsConfig' =None, allow_aws_saas: 'bool' =None, allow_budgeting: 'bool' =None, allow_credits_auto_replenish: 'bool' =None, allow_dgx_saas: 'bool' =None, allow_external_project_duplication: 'bool' =None, allow_gcp_saas: 'bool' =None, allow_guest: 'bool' =None, allow_lambda_saas: 'bool' =None, allow_lightning_saas: 'bool' =None, allow_marketplace: 'bool' =None, allow_member_invitations: 'bool' =None, allow_member_teamspace_creation: 'bool' =None, allow_vultr_saas: 'bool' =None, auto_invite_by_domain: 'bool' =None, auto_join_domains: 'list[str]' =None, auto_replenish_amount: 'float' =None, auto_replenish_threshold: 'float' =None, auto_switch_machine: 'bool' =None, default_machine_type: 'str' =None, description: 'str' =None, display_name: 'str' =None, domain: 'str' =None, email: 'str' =None, featured_gallery: 'bool' =None, location: 'str' =None, preferred_cluster: 'str' =None, preferred_deployment_provider: 'str' =None, preferred_studio_provider: 'str' =None, start_studios_on_spot_instance: 'bool' =None, switch_to_default_machine_on_idle: 'bool' =None, teamspace_default_credits: 'float' =None, twitter_username: 'str' =None, workload_max_run_duration: 'str' =None): # noqa: E501
110
118
  """OrgsIdBody - a model defined in Swagger""" # noqa: E501
111
119
  self._alerts_config = None
112
120
  self._allow_aws_saas = None
113
121
  self._allow_budgeting = None
122
+ self._allow_credits_auto_replenish = None
114
123
  self._allow_dgx_saas = None
115
124
  self._allow_external_project_duplication = None
116
125
  self._allow_gcp_saas = None
@@ -123,6 +132,8 @@ class OrgsIdBody(object):
123
132
  self._allow_vultr_saas = None
124
133
  self._auto_invite_by_domain = None
125
134
  self._auto_join_domains = None
135
+ self._auto_replenish_amount = None
136
+ self._auto_replenish_threshold = None
126
137
  self._auto_switch_machine = None
127
138
  self._default_machine_type = None
128
139
  self._description = None
@@ -135,6 +146,7 @@ class OrgsIdBody(object):
135
146
  self._preferred_deployment_provider = None
136
147
  self._preferred_studio_provider = None
137
148
  self._start_studios_on_spot_instance = None
149
+ self._switch_to_default_machine_on_idle = None
138
150
  self._teamspace_default_credits = None
139
151
  self._twitter_username = None
140
152
  self._workload_max_run_duration = None
@@ -145,6 +157,8 @@ class OrgsIdBody(object):
145
157
  self.allow_aws_saas = allow_aws_saas
146
158
  if allow_budgeting is not None:
147
159
  self.allow_budgeting = allow_budgeting
160
+ if allow_credits_auto_replenish is not None:
161
+ self.allow_credits_auto_replenish = allow_credits_auto_replenish
148
162
  if allow_dgx_saas is not None:
149
163
  self.allow_dgx_saas = allow_dgx_saas
150
164
  if allow_external_project_duplication is not None:
@@ -169,6 +183,10 @@ class OrgsIdBody(object):
169
183
  self.auto_invite_by_domain = auto_invite_by_domain
170
184
  if auto_join_domains is not None:
171
185
  self.auto_join_domains = auto_join_domains
186
+ if auto_replenish_amount is not None:
187
+ self.auto_replenish_amount = auto_replenish_amount
188
+ if auto_replenish_threshold is not None:
189
+ self.auto_replenish_threshold = auto_replenish_threshold
172
190
  if auto_switch_machine is not None:
173
191
  self.auto_switch_machine = auto_switch_machine
174
192
  if default_machine_type is not None:
@@ -193,6 +211,8 @@ class OrgsIdBody(object):
193
211
  self.preferred_studio_provider = preferred_studio_provider
194
212
  if start_studios_on_spot_instance is not None:
195
213
  self.start_studios_on_spot_instance = start_studios_on_spot_instance
214
+ if switch_to_default_machine_on_idle is not None:
215
+ self.switch_to_default_machine_on_idle = switch_to_default_machine_on_idle
196
216
  if teamspace_default_credits is not None:
197
217
  self.teamspace_default_credits = teamspace_default_credits
198
218
  if twitter_username is not None:
@@ -263,6 +283,27 @@ class OrgsIdBody(object):
263
283
 
264
284
  self._allow_budgeting = allow_budgeting
265
285
 
286
+ @property
287
+ def allow_credits_auto_replenish(self) -> 'bool':
288
+ """Gets the allow_credits_auto_replenish of this OrgsIdBody. # noqa: E501
289
+
290
+
291
+ :return: The allow_credits_auto_replenish of this OrgsIdBody. # noqa: E501
292
+ :rtype: bool
293
+ """
294
+ return self._allow_credits_auto_replenish
295
+
296
+ @allow_credits_auto_replenish.setter
297
+ def allow_credits_auto_replenish(self, allow_credits_auto_replenish: 'bool'):
298
+ """Sets the allow_credits_auto_replenish of this OrgsIdBody.
299
+
300
+
301
+ :param allow_credits_auto_replenish: The allow_credits_auto_replenish of this OrgsIdBody. # noqa: E501
302
+ :type: bool
303
+ """
304
+
305
+ self._allow_credits_auto_replenish = allow_credits_auto_replenish
306
+
266
307
  @property
267
308
  def allow_dgx_saas(self) -> 'bool':
268
309
  """Gets the allow_dgx_saas of this OrgsIdBody. # noqa: E501
@@ -515,6 +556,48 @@ class OrgsIdBody(object):
515
556
 
516
557
  self._auto_join_domains = auto_join_domains
517
558
 
559
+ @property
560
+ def auto_replenish_amount(self) -> 'float':
561
+ """Gets the auto_replenish_amount of this OrgsIdBody. # noqa: E501
562
+
563
+
564
+ :return: The auto_replenish_amount of this OrgsIdBody. # noqa: E501
565
+ :rtype: float
566
+ """
567
+ return self._auto_replenish_amount
568
+
569
+ @auto_replenish_amount.setter
570
+ def auto_replenish_amount(self, auto_replenish_amount: 'float'):
571
+ """Sets the auto_replenish_amount of this OrgsIdBody.
572
+
573
+
574
+ :param auto_replenish_amount: The auto_replenish_amount of this OrgsIdBody. # noqa: E501
575
+ :type: float
576
+ """
577
+
578
+ self._auto_replenish_amount = auto_replenish_amount
579
+
580
+ @property
581
+ def auto_replenish_threshold(self) -> 'float':
582
+ """Gets the auto_replenish_threshold of this OrgsIdBody. # noqa: E501
583
+
584
+
585
+ :return: The auto_replenish_threshold of this OrgsIdBody. # noqa: E501
586
+ :rtype: float
587
+ """
588
+ return self._auto_replenish_threshold
589
+
590
+ @auto_replenish_threshold.setter
591
+ def auto_replenish_threshold(self, auto_replenish_threshold: 'float'):
592
+ """Sets the auto_replenish_threshold of this OrgsIdBody.
593
+
594
+
595
+ :param auto_replenish_threshold: The auto_replenish_threshold of this OrgsIdBody. # noqa: E501
596
+ :type: float
597
+ """
598
+
599
+ self._auto_replenish_threshold = auto_replenish_threshold
600
+
518
601
  @property
519
602
  def auto_switch_machine(self) -> 'bool':
520
603
  """Gets the auto_switch_machine of this OrgsIdBody. # noqa: E501
@@ -767,6 +850,27 @@ class OrgsIdBody(object):
767
850
 
768
851
  self._start_studios_on_spot_instance = start_studios_on_spot_instance
769
852
 
853
+ @property
854
+ def switch_to_default_machine_on_idle(self) -> 'bool':
855
+ """Gets the switch_to_default_machine_on_idle of this OrgsIdBody. # noqa: E501
856
+
857
+
858
+ :return: The switch_to_default_machine_on_idle of this OrgsIdBody. # noqa: E501
859
+ :rtype: bool
860
+ """
861
+ return self._switch_to_default_machine_on_idle
862
+
863
+ @switch_to_default_machine_on_idle.setter
864
+ def switch_to_default_machine_on_idle(self, switch_to_default_machine_on_idle: 'bool'):
865
+ """Sets the switch_to_default_machine_on_idle of this OrgsIdBody.
866
+
867
+
868
+ :param switch_to_default_machine_on_idle: The switch_to_default_machine_on_idle of this OrgsIdBody. # noqa: E501
869
+ :type: bool
870
+ """
871
+
872
+ self._switch_to_default_machine_on_idle = switch_to_default_machine_on_idle
873
+
770
874
  @property
771
875
  def teamspace_default_credits(self) -> 'float':
772
876
  """Gets the teamspace_default_credits of this OrgsIdBody. # noqa: E501
@@ -55,6 +55,7 @@ class ProjectIdCloudspacesBody(object):
55
55
  'requested_run_duration_seconds': 'str',
56
56
  'same_compute_on_resume': 'bool',
57
57
  'seed_files': 'list[V1CloudSpaceSeedFile]',
58
+ 'source': 'V1CloudSpaceSourceType',
58
59
  'spot': 'bool'
59
60
  }
60
61
 
@@ -73,10 +74,11 @@ class ProjectIdCloudspacesBody(object):
73
74
  'requested_run_duration_seconds': 'requestedRunDurationSeconds',
74
75
  'same_compute_on_resume': 'sameComputeOnResume',
75
76
  'seed_files': 'seedFiles',
77
+ 'source': 'source',
76
78
  'spot': 'spot'
77
79
  }
78
80
 
79
- def __init__(self, can_download_source_code: 'bool' =None, cloud_space_environment_template_id: 'str' =None, cloud_space_instance_cpu_image_override: 'str' =None, cloud_space_instance_gpu_image_override: 'str' =None, cluster_id: 'str' =None, compute_name: 'str' =None, data_connection_mounts: 'list[V1DataConnectionMount]' =None, disk_size: 'str' =None, display_name: 'str' =None, name: 'str' =None, plugins: 'list[str]' =None, requested_run_duration_seconds: 'str' =None, same_compute_on_resume: 'bool' =None, seed_files: 'list[V1CloudSpaceSeedFile]' =None, spot: 'bool' =None): # noqa: E501
81
+ def __init__(self, can_download_source_code: 'bool' =None, cloud_space_environment_template_id: 'str' =None, cloud_space_instance_cpu_image_override: 'str' =None, cloud_space_instance_gpu_image_override: 'str' =None, cluster_id: 'str' =None, compute_name: 'str' =None, data_connection_mounts: 'list[V1DataConnectionMount]' =None, disk_size: 'str' =None, display_name: 'str' =None, name: 'str' =None, plugins: 'list[str]' =None, requested_run_duration_seconds: 'str' =None, same_compute_on_resume: 'bool' =None, seed_files: 'list[V1CloudSpaceSeedFile]' =None, source: 'V1CloudSpaceSourceType' =None, spot: 'bool' =None): # noqa: E501
80
82
  """ProjectIdCloudspacesBody - a model defined in Swagger""" # noqa: E501
81
83
  self._can_download_source_code = None
82
84
  self._cloud_space_environment_template_id = None
@@ -92,6 +94,7 @@ class ProjectIdCloudspacesBody(object):
92
94
  self._requested_run_duration_seconds = None
93
95
  self._same_compute_on_resume = None
94
96
  self._seed_files = None
97
+ self._source = None
95
98
  self._spot = None
96
99
  self.discriminator = None
97
100
  if can_download_source_code is not None:
@@ -122,6 +125,8 @@ class ProjectIdCloudspacesBody(object):
122
125
  self.same_compute_on_resume = same_compute_on_resume
123
126
  if seed_files is not None:
124
127
  self.seed_files = seed_files
128
+ if source is not None:
129
+ self.source = source
125
130
  if spot is not None:
126
131
  self.spot = spot
127
132
 
@@ -419,6 +424,27 @@ class ProjectIdCloudspacesBody(object):
419
424
 
420
425
  self._seed_files = seed_files
421
426
 
427
+ @property
428
+ def source(self) -> 'V1CloudSpaceSourceType':
429
+ """Gets the source of this ProjectIdCloudspacesBody. # noqa: E501
430
+
431
+
432
+ :return: The source of this ProjectIdCloudspacesBody. # noqa: E501
433
+ :rtype: V1CloudSpaceSourceType
434
+ """
435
+ return self._source
436
+
437
+ @source.setter
438
+ def source(self, source: 'V1CloudSpaceSourceType'):
439
+ """Sets the source of this ProjectIdCloudspacesBody.
440
+
441
+
442
+ :param source: The source of this ProjectIdCloudspacesBody. # noqa: E501
443
+ :type: V1CloudSpaceSourceType
444
+ """
445
+
446
+ self._source = source
447
+
422
448
  @property
423
449
  def spot(self) -> 'bool':
424
450
  """Gets the spot of this ProjectIdCloudspacesBody. # noqa: E501
@@ -58,7 +58,8 @@ class ProjectsIdBody(object):
58
58
  'preferred_studio_provider': 'str',
59
59
  'quotas': 'V1Quotas',
60
60
  'same_compute_on_resume': 'bool',
61
- 'start_studio_on_spot_instance': 'bool'
61
+ 'start_studio_on_spot_instance': 'bool',
62
+ 'switch_to_default_machine_on_idle': 'bool'
62
63
  }
63
64
 
64
65
  attribute_map = {
@@ -79,10 +80,11 @@ class ProjectsIdBody(object):
79
80
  'preferred_studio_provider': 'preferredStudioProvider',
80
81
  'quotas': 'quotas',
81
82
  'same_compute_on_resume': 'sameComputeOnResume',
82
- 'start_studio_on_spot_instance': 'startStudioOnSpotInstance'
83
+ 'start_studio_on_spot_instance': 'startStudioOnSpotInstance',
84
+ 'switch_to_default_machine_on_idle': 'switchToDefaultMachineOnIdle'
83
85
  }
84
86
 
85
- def __init__(self, allow_aws_saas: 'bool' =None, allow_dgx_saas: 'bool' =None, allow_external_project_duplication: 'bool' =None, allow_gcp_saas: 'bool' =None, allow_lambda_saas: 'bool' =None, allow_lightning_saas: 'bool' =None, allow_vultr_saas: 'bool' =None, auto_switch_machine: 'bool' =None, default_machine_type: 'str' =None, description: 'str' =None, display_name: 'str' =None, name: 'str' =None, preferred_cluster: 'str' =None, preferred_deployment_provider: 'str' =None, preferred_studio_provider: 'str' =None, quotas: 'V1Quotas' =None, same_compute_on_resume: 'bool' =None, start_studio_on_spot_instance: 'bool' =None): # noqa: E501
87
+ def __init__(self, allow_aws_saas: 'bool' =None, allow_dgx_saas: 'bool' =None, allow_external_project_duplication: 'bool' =None, allow_gcp_saas: 'bool' =None, allow_lambda_saas: 'bool' =None, allow_lightning_saas: 'bool' =None, allow_vultr_saas: 'bool' =None, auto_switch_machine: 'bool' =None, default_machine_type: 'str' =None, description: 'str' =None, display_name: 'str' =None, name: 'str' =None, preferred_cluster: 'str' =None, preferred_deployment_provider: 'str' =None, preferred_studio_provider: 'str' =None, quotas: 'V1Quotas' =None, same_compute_on_resume: 'bool' =None, start_studio_on_spot_instance: 'bool' =None, switch_to_default_machine_on_idle: 'bool' =None): # noqa: E501
86
88
  """ProjectsIdBody - a model defined in Swagger""" # noqa: E501
87
89
  self._allow_aws_saas = None
88
90
  self._allow_dgx_saas = None
@@ -102,6 +104,7 @@ class ProjectsIdBody(object):
102
104
  self._quotas = None
103
105
  self._same_compute_on_resume = None
104
106
  self._start_studio_on_spot_instance = None
107
+ self._switch_to_default_machine_on_idle = None
105
108
  self.discriminator = None
106
109
  if allow_aws_saas is not None:
107
110
  self.allow_aws_saas = allow_aws_saas
@@ -139,6 +142,8 @@ class ProjectsIdBody(object):
139
142
  self.same_compute_on_resume = same_compute_on_resume
140
143
  if start_studio_on_spot_instance is not None:
141
144
  self.start_studio_on_spot_instance = start_studio_on_spot_instance
145
+ if switch_to_default_machine_on_idle is not None:
146
+ self.switch_to_default_machine_on_idle = switch_to_default_machine_on_idle
142
147
 
143
148
  @property
144
149
  def allow_aws_saas(self) -> 'bool':
@@ -518,6 +523,27 @@ class ProjectsIdBody(object):
518
523
 
519
524
  self._start_studio_on_spot_instance = start_studio_on_spot_instance
520
525
 
526
+ @property
527
+ def switch_to_default_machine_on_idle(self) -> 'bool':
528
+ """Gets the switch_to_default_machine_on_idle of this ProjectsIdBody. # noqa: E501
529
+
530
+
531
+ :return: The switch_to_default_machine_on_idle of this ProjectsIdBody. # noqa: E501
532
+ :rtype: bool
533
+ """
534
+ return self._switch_to_default_machine_on_idle
535
+
536
+ @switch_to_default_machine_on_idle.setter
537
+ def switch_to_default_machine_on_idle(self, switch_to_default_machine_on_idle: 'bool'):
538
+ """Sets the switch_to_default_machine_on_idle of this ProjectsIdBody.
539
+
540
+
541
+ :param switch_to_default_machine_on_idle: The switch_to_default_machine_on_idle of this ProjectsIdBody. # noqa: E501
542
+ :type: bool
543
+ """
544
+
545
+ self._switch_to_default_machine_on_idle = switch_to_default_machine_on_idle
546
+
521
547
  def to_dict(self) -> dict:
522
548
  """Returns the model properties as a dict"""
523
549
  result = {}