lightning-sdk 2025.11.13.post0__py3-none-any.whl → 2025.11.24__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 (61) hide show
  1. lightning_sdk/__init__.py +2 -0
  2. lightning_sdk/__version__.py +1 -1
  3. lightning_sdk/api/__init__.py +2 -9
  4. lightning_sdk/api/k8s_api.py +105 -0
  5. lightning_sdk/api/studio_api.py +19 -0
  6. lightning_sdk/api/utils.py +19 -0
  7. lightning_sdk/exceptions.py +2 -0
  8. lightning_sdk/k8s_cluster.py +83 -0
  9. lightning_sdk/lightning_cloud/openapi/__init__.py +15 -0
  10. lightning_sdk/lightning_cloud/openapi/api/assistants_service_api.py +134 -1
  11. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +5 -1
  12. lightning_sdk/lightning_cloud/openapi/api/jobs_service_api.py +539 -2
  13. lightning_sdk/lightning_cloud/openapi/api/k8_s_cluster_service_api.py +114 -0
  14. lightning_sdk/lightning_cloud/openapi/api/markets_service_api.py +5 -1
  15. lightning_sdk/lightning_cloud/openapi/api/organizations_service_api.py +99 -2
  16. lightning_sdk/lightning_cloud/openapi/api/projects_service_api.py +5 -1
  17. lightning_sdk/lightning_cloud/openapi/models/__init__.py +15 -0
  18. lightning_sdk/lightning_cloud/openapi/models/cluster_id_metrics_body.py +29 -3
  19. lightning_sdk/lightning_cloud/openapi/models/deployments_deployment_id_body.py +149 -0
  20. lightning_sdk/lightning_cloud/openapi/models/id_content_body.py +123 -0
  21. lightning_sdk/lightning_cloud/openapi/models/job_id_systemmetrics_body.py +123 -0
  22. lightning_sdk/lightning_cloud/openapi/models/message_id_actions_body.py +27 -1
  23. lightning_sdk/lightning_cloud/openapi/models/projects_id_body.py +1 -27
  24. lightning_sdk/lightning_cloud/openapi/models/v1_aws_direct_v1.py +27 -1
  25. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_security_options.py +107 -3
  26. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +53 -1
  27. lightning_sdk/lightning_cloud/openapi/models/v1_compute_cluster_machines.py +149 -0
  28. lightning_sdk/lightning_cloud/openapi/models/v1_compute_cluster_request.py +149 -0
  29. lightning_sdk/lightning_cloud/openapi/models/v1_create_project_request.py +1 -27
  30. lightning_sdk/lightning_cloud/openapi/models/v1_generic_job.py +305 -0
  31. lightning_sdk/lightning_cloud/openapi/models/v1_get_project_balance_response.py +27 -1
  32. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_v1.py +27 -1
  33. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_pod.py +435 -0
  34. lightning_sdk/lightning_cloud/openapi/models/v1_list_all_jobs_response.py +175 -0
  35. lightning_sdk/lightning_cloud/openapi/models/v1_list_jobs_sort_by.py +104 -0
  36. lightning_sdk/lightning_cloud/openapi/models/v1_list_jobs_sort_order.py +104 -0
  37. lightning_sdk/lightning_cloud/openapi/models/v1_list_kubernetes_pods_response.py +149 -0
  38. lightning_sdk/lightning_cloud/openapi/models/v1_list_pipelines_response.py +55 -3
  39. lightning_sdk/lightning_cloud/openapi/models/v1_machine_direct_v1.py +53 -1
  40. lightning_sdk/lightning_cloud/openapi/models/v1_magic_link_login_request.py +27 -1
  41. lightning_sdk/lightning_cloud/openapi/models/v1_membership.py +1 -27
  42. lightning_sdk/lightning_cloud/openapi/models/v1_message.py +27 -1
  43. lightning_sdk/lightning_cloud/openapi/models/v1_message_action.py +27 -1
  44. lightning_sdk/lightning_cloud/openapi/models/v1_org_deployment_visibility.py +227 -0
  45. lightning_sdk/lightning_cloud/openapi/models/v1_pod_preemption_event.py +305 -0
  46. lightning_sdk/lightning_cloud/openapi/models/v1_project_membership.py +1 -27
  47. lightning_sdk/lightning_cloud/openapi/models/v1_project_settings.py +1 -27
  48. lightning_sdk/lightning_cloud/openapi/models/v1_report_job_system_metrics_response.py +97 -0
  49. lightning_sdk/lightning_cloud/openapi/models/v1_resource_visibility.py +27 -1
  50. lightning_sdk/lightning_cloud/openapi/models/v1_rule_resource.py +1 -0
  51. lightning_sdk/lightning_cloud/openapi/models/v1_update_conversation_message_content_response.py +123 -0
  52. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +133 -107
  53. lightning_sdk/lightning_cloud/openapi/models/v1_validate_storage_transfer_response.py +15 -15
  54. lightning_sdk/lightning_cloud/rest_client.py +2 -0
  55. lightning_sdk/studio.py +12 -0
  56. {lightning_sdk-2025.11.13.post0.dist-info → lightning_sdk-2025.11.24.dist-info}/METADATA +2 -1
  57. {lightning_sdk-2025.11.13.post0.dist-info → lightning_sdk-2025.11.24.dist-info}/RECORD +61 -43
  58. {lightning_sdk-2025.11.13.post0.dist-info → lightning_sdk-2025.11.24.dist-info}/LICENSE +0 -0
  59. {lightning_sdk-2025.11.13.post0.dist-info → lightning_sdk-2025.11.24.dist-info}/WHEEL +0 -0
  60. {lightning_sdk-2025.11.13.post0.dist-info → lightning_sdk-2025.11.24.dist-info}/entry_points.txt +0 -0
  61. {lightning_sdk-2025.11.13.post0.dist-info → lightning_sdk-2025.11.24.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,97 @@
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 V1ReportJobSystemMetricsResponse(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
+ }
45
+
46
+ attribute_map = {
47
+ }
48
+
49
+ def __init__(self): # noqa: E501
50
+ """V1ReportJobSystemMetricsResponse - a model defined in Swagger""" # noqa: E501
51
+ self.discriminator = None
52
+
53
+ def to_dict(self) -> dict:
54
+ """Returns the model properties as a dict"""
55
+ result = {}
56
+
57
+ for attr, _ in six.iteritems(self.swagger_types):
58
+ value = getattr(self, attr)
59
+ if isinstance(value, list):
60
+ result[attr] = list(map(
61
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
62
+ value
63
+ ))
64
+ elif hasattr(value, "to_dict"):
65
+ result[attr] = value.to_dict()
66
+ elif isinstance(value, dict):
67
+ result[attr] = dict(map(
68
+ lambda item: (item[0], item[1].to_dict())
69
+ if hasattr(item[1], "to_dict") else item,
70
+ value.items()
71
+ ))
72
+ else:
73
+ result[attr] = value
74
+ if issubclass(V1ReportJobSystemMetricsResponse, dict):
75
+ for key, value in self.items():
76
+ result[key] = value
77
+
78
+ return result
79
+
80
+ def to_str(self) -> str:
81
+ """Returns the string representation of the model"""
82
+ return pprint.pformat(self.to_dict())
83
+
84
+ def __repr__(self) -> str:
85
+ """For `print` and `pprint`"""
86
+ return self.to_str()
87
+
88
+ def __eq__(self, other: 'V1ReportJobSystemMetricsResponse') -> bool:
89
+ """Returns true if both objects are equal"""
90
+ if not isinstance(other, V1ReportJobSystemMetricsResponse):
91
+ return False
92
+
93
+ return self.__dict__ == other.__dict__
94
+
95
+ def __ne__(self, other: 'V1ReportJobSystemMetricsResponse') -> bool:
96
+ """Returns true if both objects are not equal"""
97
+ return not self == other
@@ -43,25 +43,30 @@ class V1ResourceVisibility(object):
43
43
  swagger_types = {
44
44
  'all_org_users': 'bool',
45
45
  'all_users': 'bool',
46
+ 'org_ids': 'list[str]',
46
47
  'user_ids': 'list[str]'
47
48
  }
48
49
 
49
50
  attribute_map = {
50
51
  'all_org_users': 'allOrgUsers',
51
52
  'all_users': 'allUsers',
53
+ 'org_ids': 'orgIds',
52
54
  'user_ids': 'userIds'
53
55
  }
54
56
 
55
- def __init__(self, all_org_users: 'bool' =None, all_users: 'bool' =None, user_ids: 'list[str]' =None): # noqa: E501
57
+ def __init__(self, all_org_users: 'bool' =None, all_users: 'bool' =None, org_ids: 'list[str]' =None, user_ids: 'list[str]' =None): # noqa: E501
56
58
  """V1ResourceVisibility - a model defined in Swagger""" # noqa: E501
57
59
  self._all_org_users = None
58
60
  self._all_users = None
61
+ self._org_ids = None
59
62
  self._user_ids = None
60
63
  self.discriminator = None
61
64
  if all_org_users is not None:
62
65
  self.all_org_users = all_org_users
63
66
  if all_users is not None:
64
67
  self.all_users = all_users
68
+ if org_ids is not None:
69
+ self.org_ids = org_ids
65
70
  if user_ids is not None:
66
71
  self.user_ids = user_ids
67
72
 
@@ -107,6 +112,27 @@ class V1ResourceVisibility(object):
107
112
 
108
113
  self._all_users = all_users
109
114
 
115
+ @property
116
+ def org_ids(self) -> 'list[str]':
117
+ """Gets the org_ids of this V1ResourceVisibility. # noqa: E501
118
+
119
+
120
+ :return: The org_ids of this V1ResourceVisibility. # noqa: E501
121
+ :rtype: list[str]
122
+ """
123
+ return self._org_ids
124
+
125
+ @org_ids.setter
126
+ def org_ids(self, org_ids: 'list[str]'):
127
+ """Sets the org_ids of this V1ResourceVisibility.
128
+
129
+
130
+ :param org_ids: The org_ids of this V1ResourceVisibility. # noqa: E501
131
+ :type: list[str]
132
+ """
133
+
134
+ self._org_ids = org_ids
135
+
110
136
  @property
111
137
  def user_ids(self) -> 'list[str]':
112
138
  """Gets the user_ids of this V1ResourceVisibility. # noqa: E501
@@ -79,6 +79,7 @@ class V1RuleResource(object):
79
79
  ORGSTORAGE = "orgStorage"
80
80
  KUBERNETESCLUSTER = "kubernetesCluster"
81
81
  STORAGETRANSFER = "storageTransfer"
82
+ LITDATASET = "litDataset"
82
83
  """
83
84
  Attributes:
84
85
  swagger_types (dict): The key is attribute name
@@ -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 V1UpdateConversationMessageContentResponse(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
+ 'message': 'V1Message'
45
+ }
46
+
47
+ attribute_map = {
48
+ 'message': 'message'
49
+ }
50
+
51
+ def __init__(self, message: 'V1Message' =None): # noqa: E501
52
+ """V1UpdateConversationMessageContentResponse - a model defined in Swagger""" # noqa: E501
53
+ self._message = None
54
+ self.discriminator = None
55
+ if message is not None:
56
+ self.message = message
57
+
58
+ @property
59
+ def message(self) -> 'V1Message':
60
+ """Gets the message of this V1UpdateConversationMessageContentResponse. # noqa: E501
61
+
62
+
63
+ :return: The message of this V1UpdateConversationMessageContentResponse. # noqa: E501
64
+ :rtype: V1Message
65
+ """
66
+ return self._message
67
+
68
+ @message.setter
69
+ def message(self, message: 'V1Message'):
70
+ """Sets the message of this V1UpdateConversationMessageContentResponse.
71
+
72
+
73
+ :param message: The message of this V1UpdateConversationMessageContentResponse. # noqa: E501
74
+ :type: V1Message
75
+ """
76
+
77
+ self._message = message
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(V1UpdateConversationMessageContentResponse, 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: 'V1UpdateConversationMessageContentResponse') -> bool:
115
+ """Returns true if both objects are equal"""
116
+ if not isinstance(other, V1UpdateConversationMessageContentResponse):
117
+ return False
118
+
119
+ return self.__dict__ == other.__dict__
120
+
121
+ def __ne__(self, other: 'V1UpdateConversationMessageContentResponse') -> bool:
122
+ """Returns true if both objects are not equal"""
123
+ return not self == other
@@ -74,17 +74,19 @@ class V1UserFeatures(object):
74
74
  'f254': 'bool',
75
75
  'f258': 'bool',
76
76
  'f259': 'bool',
77
- 'f261': 'bool',
78
- 'f262': 'bool',
79
77
  'f265': 'bool',
80
78
  'f266': 'bool',
81
79
  'f268': 'bool',
82
- 'f269': 'bool',
83
80
  'f270': 'bool',
84
81
  'f271': 'bool',
85
82
  'f272': 'bool',
86
83
  'f273': 'bool',
87
84
  'f274': 'bool',
85
+ 'f275': 'bool',
86
+ 'f276': 'bool',
87
+ 'f277': 'bool',
88
+ 'f278': 'bool',
89
+ 'f279': 'bool',
88
90
  'fair_share': 'bool',
89
91
  'featured_studios_admin': 'bool',
90
92
  'job_artifacts_v2': 'bool',
@@ -122,8 +124,7 @@ class V1UserFeatures(object):
122
124
  'studio_config': 'bool',
123
125
  'studio_version_visibility': 'bool',
124
126
  'vultr': 'bool',
125
- 'weka': 'bool',
126
- 'writable_s3_connections': 'bool'
127
+ 'weka': 'bool'
127
128
  }
128
129
 
129
130
  attribute_map = {
@@ -160,17 +161,19 @@ class V1UserFeatures(object):
160
161
  'f254': 'f254',
161
162
  'f258': 'f258',
162
163
  'f259': 'f259',
163
- 'f261': 'f261',
164
- 'f262': 'f262',
165
164
  'f265': 'f265',
166
165
  'f266': 'f266',
167
166
  'f268': 'f268',
168
- 'f269': 'f269',
169
167
  'f270': 'f270',
170
168
  'f271': 'f271',
171
169
  'f272': 'f272',
172
170
  'f273': 'f273',
173
171
  'f274': 'f274',
172
+ 'f275': 'f275',
173
+ 'f276': 'f276',
174
+ 'f277': 'f277',
175
+ 'f278': 'f278',
176
+ 'f279': 'f279',
174
177
  'fair_share': 'fairShare',
175
178
  'featured_studios_admin': 'featuredStudiosAdmin',
176
179
  'job_artifacts_v2': 'jobArtifactsV2',
@@ -208,11 +211,10 @@ class V1UserFeatures(object):
208
211
  'studio_config': 'studioConfig',
209
212
  'studio_version_visibility': 'studioVersionVisibility',
210
213
  'vultr': 'vultr',
211
- 'weka': 'weka',
212
- 'writable_s3_connections': 'writableS3Connections'
214
+ 'weka': 'weka'
213
215
  }
214
216
 
215
- def __init__(self, affiliate_links: 'bool' =None, agents_v2: 'bool' =None, ai_hub_monetization: 'bool' =None, auto_fast_load: 'bool' =None, b2c_experience: 'bool' =None, byo_machine_type: '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, cloudspace_schedules: 'bool' =None, code_tab: 'bool' =None, collab_screen_sharing: 'bool' =None, control_center_monitoring: 'bool' =None, cost_attribution_settings: 'bool' =None, datasets: 'bool' =None, default_one_cluster: 'bool' =None, drive_v2: 'bool' =None, enterprise_compute_admin: 'bool' =None, f234: 'bool' =None, f236: 'bool' =None, f240: 'bool' =None, f241: 'bool' =None, f243: 'bool' =None, f245: 'bool' =None, f247: 'bool' =None, f250: 'bool' =None, f252: 'bool' =None, f253: 'bool' =None, f254: 'bool' =None, f258: 'bool' =None, f259: 'bool' =None, f261: 'bool' =None, f262: 'bool' =None, f265: 'bool' =None, f266: 'bool' =None, f268: 'bool' =None, f269: 'bool' =None, f270: 'bool' =None, f271: 'bool' =None, f272: 'bool' =None, f273: 'bool' =None, f274: 'bool' =None, fair_share: 'bool' =None, featured_studios_admin: 'bool' =None, job_artifacts_v2: 'bool' =None, kubernetes_cluster_ui: 'bool' =None, kubernetes_clusters: 'bool' =None, landing_studios: 'bool' =None, lit_logger: 'bool' =None, marketplace: 'bool' =None, mmt_fault_tolerance: 'bool' =None, mmt_strategy_selector: 'bool' =None, multiple_studio_versions: 'bool' =None, nerf_fs_nonpaying: 'bool' =None, org_level_member_permissions: 'bool' =None, org_usage_limits: 'bool' =None, persistent_disk: 'bool' =None, plugin_distributed: 'bool' =None, plugin_inference: 'bool' =None, plugin_label_studio: 'bool' =None, plugin_langflow: 'bool' =None, plugin_python_profiler: 'bool' =None, plugin_sweeps: 'bool' =None, pricing_updates: 'bool' =None, product_generator: 'bool' =None, product_license: 'bool' =None, project_selector: 'bool' =None, publish_pipelines: 'bool' =None, reserved_machines_tab: 'bool' =None, restartable_jobs: 'bool' =None, runnable_public_studio_page: 'bool' =None, security_docs: 'bool' =None, show_dev_admin: 'bool' =None, slurm: 'bool' =None, specialised_studios: 'bool' =None, storage_overuse_deletion: 'bool' =None, studio_config: 'bool' =None, studio_version_visibility: 'bool' =None, vultr: 'bool' =None, weka: 'bool' =None, writable_s3_connections: 'bool' =None): # noqa: E501
217
+ def __init__(self, affiliate_links: 'bool' =None, agents_v2: 'bool' =None, ai_hub_monetization: 'bool' =None, auto_fast_load: 'bool' =None, b2c_experience: 'bool' =None, byo_machine_type: '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, cloudspace_schedules: 'bool' =None, code_tab: 'bool' =None, collab_screen_sharing: 'bool' =None, control_center_monitoring: 'bool' =None, cost_attribution_settings: 'bool' =None, datasets: 'bool' =None, default_one_cluster: 'bool' =None, drive_v2: 'bool' =None, enterprise_compute_admin: 'bool' =None, f234: 'bool' =None, f236: 'bool' =None, f240: 'bool' =None, f241: 'bool' =None, f243: 'bool' =None, f245: 'bool' =None, f247: 'bool' =None, f250: 'bool' =None, f252: 'bool' =None, f253: 'bool' =None, f254: 'bool' =None, f258: 'bool' =None, f259: 'bool' =None, f265: 'bool' =None, f266: 'bool' =None, f268: 'bool' =None, f270: 'bool' =None, f271: 'bool' =None, f272: 'bool' =None, f273: 'bool' =None, f274: 'bool' =None, f275: 'bool' =None, f276: 'bool' =None, f277: 'bool' =None, f278: 'bool' =None, f279: 'bool' =None, fair_share: 'bool' =None, featured_studios_admin: 'bool' =None, job_artifacts_v2: 'bool' =None, kubernetes_cluster_ui: 'bool' =None, kubernetes_clusters: 'bool' =None, landing_studios: 'bool' =None, lit_logger: 'bool' =None, marketplace: 'bool' =None, mmt_fault_tolerance: 'bool' =None, mmt_strategy_selector: 'bool' =None, multiple_studio_versions: 'bool' =None, nerf_fs_nonpaying: 'bool' =None, org_level_member_permissions: 'bool' =None, org_usage_limits: 'bool' =None, persistent_disk: 'bool' =None, plugin_distributed: 'bool' =None, plugin_inference: 'bool' =None, plugin_label_studio: 'bool' =None, plugin_langflow: 'bool' =None, plugin_python_profiler: 'bool' =None, plugin_sweeps: 'bool' =None, pricing_updates: 'bool' =None, product_generator: 'bool' =None, product_license: 'bool' =None, project_selector: 'bool' =None, publish_pipelines: 'bool' =None, reserved_machines_tab: 'bool' =None, restartable_jobs: 'bool' =None, runnable_public_studio_page: 'bool' =None, security_docs: 'bool' =None, show_dev_admin: 'bool' =None, slurm: 'bool' =None, specialised_studios: 'bool' =None, storage_overuse_deletion: 'bool' =None, studio_config: 'bool' =None, studio_version_visibility: 'bool' =None, vultr: 'bool' =None, weka: 'bool' =None): # noqa: E501
216
218
  """V1UserFeatures - a model defined in Swagger""" # noqa: E501
217
219
  self._affiliate_links = None
218
220
  self._agents_v2 = None
@@ -247,17 +249,19 @@ class V1UserFeatures(object):
247
249
  self._f254 = None
248
250
  self._f258 = None
249
251
  self._f259 = None
250
- self._f261 = None
251
- self._f262 = None
252
252
  self._f265 = None
253
253
  self._f266 = None
254
254
  self._f268 = None
255
- self._f269 = None
256
255
  self._f270 = None
257
256
  self._f271 = None
258
257
  self._f272 = None
259
258
  self._f273 = None
260
259
  self._f274 = None
260
+ self._f275 = None
261
+ self._f276 = None
262
+ self._f277 = None
263
+ self._f278 = None
264
+ self._f279 = None
261
265
  self._fair_share = None
262
266
  self._featured_studios_admin = None
263
267
  self._job_artifacts_v2 = None
@@ -296,7 +300,6 @@ class V1UserFeatures(object):
296
300
  self._studio_version_visibility = None
297
301
  self._vultr = None
298
302
  self._weka = None
299
- self._writable_s3_connections = None
300
303
  self.discriminator = None
301
304
  if affiliate_links is not None:
302
305
  self.affiliate_links = affiliate_links
@@ -364,18 +367,12 @@ class V1UserFeatures(object):
364
367
  self.f258 = f258
365
368
  if f259 is not None:
366
369
  self.f259 = f259
367
- if f261 is not None:
368
- self.f261 = f261
369
- if f262 is not None:
370
- self.f262 = f262
371
370
  if f265 is not None:
372
371
  self.f265 = f265
373
372
  if f266 is not None:
374
373
  self.f266 = f266
375
374
  if f268 is not None:
376
375
  self.f268 = f268
377
- if f269 is not None:
378
- self.f269 = f269
379
376
  if f270 is not None:
380
377
  self.f270 = f270
381
378
  if f271 is not None:
@@ -386,6 +383,16 @@ class V1UserFeatures(object):
386
383
  self.f273 = f273
387
384
  if f274 is not None:
388
385
  self.f274 = f274
386
+ if f275 is not None:
387
+ self.f275 = f275
388
+ if f276 is not None:
389
+ self.f276 = f276
390
+ if f277 is not None:
391
+ self.f277 = f277
392
+ if f278 is not None:
393
+ self.f278 = f278
394
+ if f279 is not None:
395
+ self.f279 = f279
389
396
  if fair_share is not None:
390
397
  self.fair_share = fair_share
391
398
  if featured_studios_admin is not None:
@@ -462,8 +469,6 @@ class V1UserFeatures(object):
462
469
  self.vultr = vultr
463
470
  if weka is not None:
464
471
  self.weka = weka
465
- if writable_s3_connections is not None:
466
- self.writable_s3_connections = writable_s3_connections
467
472
 
468
473
  @property
469
474
  def affiliate_links(self) -> 'bool':
@@ -1158,48 +1163,6 @@ class V1UserFeatures(object):
1158
1163
 
1159
1164
  self._f259 = f259
1160
1165
 
1161
- @property
1162
- def f261(self) -> 'bool':
1163
- """Gets the f261 of this V1UserFeatures. # noqa: E501
1164
-
1165
-
1166
- :return: The f261 of this V1UserFeatures. # noqa: E501
1167
- :rtype: bool
1168
- """
1169
- return self._f261
1170
-
1171
- @f261.setter
1172
- def f261(self, f261: 'bool'):
1173
- """Sets the f261 of this V1UserFeatures.
1174
-
1175
-
1176
- :param f261: The f261 of this V1UserFeatures. # noqa: E501
1177
- :type: bool
1178
- """
1179
-
1180
- self._f261 = f261
1181
-
1182
- @property
1183
- def f262(self) -> 'bool':
1184
- """Gets the f262 of this V1UserFeatures. # noqa: E501
1185
-
1186
-
1187
- :return: The f262 of this V1UserFeatures. # noqa: E501
1188
- :rtype: bool
1189
- """
1190
- return self._f262
1191
-
1192
- @f262.setter
1193
- def f262(self, f262: 'bool'):
1194
- """Sets the f262 of this V1UserFeatures.
1195
-
1196
-
1197
- :param f262: The f262 of this V1UserFeatures. # noqa: E501
1198
- :type: bool
1199
- """
1200
-
1201
- self._f262 = f262
1202
-
1203
1166
  @property
1204
1167
  def f265(self) -> 'bool':
1205
1168
  """Gets the f265 of this V1UserFeatures. # noqa: E501
@@ -1263,27 +1226,6 @@ class V1UserFeatures(object):
1263
1226
 
1264
1227
  self._f268 = f268
1265
1228
 
1266
- @property
1267
- def f269(self) -> 'bool':
1268
- """Gets the f269 of this V1UserFeatures. # noqa: E501
1269
-
1270
-
1271
- :return: The f269 of this V1UserFeatures. # noqa: E501
1272
- :rtype: bool
1273
- """
1274
- return self._f269
1275
-
1276
- @f269.setter
1277
- def f269(self, f269: 'bool'):
1278
- """Sets the f269 of this V1UserFeatures.
1279
-
1280
-
1281
- :param f269: The f269 of this V1UserFeatures. # noqa: E501
1282
- :type: bool
1283
- """
1284
-
1285
- self._f269 = f269
1286
-
1287
1229
  @property
1288
1230
  def f270(self) -> 'bool':
1289
1231
  """Gets the f270 of this V1UserFeatures. # noqa: E501
@@ -1389,6 +1331,111 @@ class V1UserFeatures(object):
1389
1331
 
1390
1332
  self._f274 = f274
1391
1333
 
1334
+ @property
1335
+ def f275(self) -> 'bool':
1336
+ """Gets the f275 of this V1UserFeatures. # noqa: E501
1337
+
1338
+
1339
+ :return: The f275 of this V1UserFeatures. # noqa: E501
1340
+ :rtype: bool
1341
+ """
1342
+ return self._f275
1343
+
1344
+ @f275.setter
1345
+ def f275(self, f275: 'bool'):
1346
+ """Sets the f275 of this V1UserFeatures.
1347
+
1348
+
1349
+ :param f275: The f275 of this V1UserFeatures. # noqa: E501
1350
+ :type: bool
1351
+ """
1352
+
1353
+ self._f275 = f275
1354
+
1355
+ @property
1356
+ def f276(self) -> 'bool':
1357
+ """Gets the f276 of this V1UserFeatures. # noqa: E501
1358
+
1359
+
1360
+ :return: The f276 of this V1UserFeatures. # noqa: E501
1361
+ :rtype: bool
1362
+ """
1363
+ return self._f276
1364
+
1365
+ @f276.setter
1366
+ def f276(self, f276: 'bool'):
1367
+ """Sets the f276 of this V1UserFeatures.
1368
+
1369
+
1370
+ :param f276: The f276 of this V1UserFeatures. # noqa: E501
1371
+ :type: bool
1372
+ """
1373
+
1374
+ self._f276 = f276
1375
+
1376
+ @property
1377
+ def f277(self) -> 'bool':
1378
+ """Gets the f277 of this V1UserFeatures. # noqa: E501
1379
+
1380
+
1381
+ :return: The f277 of this V1UserFeatures. # noqa: E501
1382
+ :rtype: bool
1383
+ """
1384
+ return self._f277
1385
+
1386
+ @f277.setter
1387
+ def f277(self, f277: 'bool'):
1388
+ """Sets the f277 of this V1UserFeatures.
1389
+
1390
+
1391
+ :param f277: The f277 of this V1UserFeatures. # noqa: E501
1392
+ :type: bool
1393
+ """
1394
+
1395
+ self._f277 = f277
1396
+
1397
+ @property
1398
+ def f278(self) -> 'bool':
1399
+ """Gets the f278 of this V1UserFeatures. # noqa: E501
1400
+
1401
+
1402
+ :return: The f278 of this V1UserFeatures. # noqa: E501
1403
+ :rtype: bool
1404
+ """
1405
+ return self._f278
1406
+
1407
+ @f278.setter
1408
+ def f278(self, f278: 'bool'):
1409
+ """Sets the f278 of this V1UserFeatures.
1410
+
1411
+
1412
+ :param f278: The f278 of this V1UserFeatures. # noqa: E501
1413
+ :type: bool
1414
+ """
1415
+
1416
+ self._f278 = f278
1417
+
1418
+ @property
1419
+ def f279(self) -> 'bool':
1420
+ """Gets the f279 of this V1UserFeatures. # noqa: E501
1421
+
1422
+
1423
+ :return: The f279 of this V1UserFeatures. # noqa: E501
1424
+ :rtype: bool
1425
+ """
1426
+ return self._f279
1427
+
1428
+ @f279.setter
1429
+ def f279(self, f279: 'bool'):
1430
+ """Sets the f279 of this V1UserFeatures.
1431
+
1432
+
1433
+ :param f279: The f279 of this V1UserFeatures. # noqa: E501
1434
+ :type: bool
1435
+ """
1436
+
1437
+ self._f279 = f279
1438
+
1392
1439
  @property
1393
1440
  def fair_share(self) -> 'bool':
1394
1441
  """Gets the fair_share of this V1UserFeatures. # noqa: E501
@@ -2187,27 +2234,6 @@ class V1UserFeatures(object):
2187
2234
 
2188
2235
  self._weka = weka
2189
2236
 
2190
- @property
2191
- def writable_s3_connections(self) -> 'bool':
2192
- """Gets the writable_s3_connections of this V1UserFeatures. # noqa: E501
2193
-
2194
-
2195
- :return: The writable_s3_connections of this V1UserFeatures. # noqa: E501
2196
- :rtype: bool
2197
- """
2198
- return self._writable_s3_connections
2199
-
2200
- @writable_s3_connections.setter
2201
- def writable_s3_connections(self, writable_s3_connections: 'bool'):
2202
- """Sets the writable_s3_connections of this V1UserFeatures.
2203
-
2204
-
2205
- :param writable_s3_connections: The writable_s3_connections of this V1UserFeatures. # noqa: E501
2206
- :type: bool
2207
- """
2208
-
2209
- self._writable_s3_connections = writable_s3_connections
2210
-
2211
2237
  def to_dict(self) -> dict:
2212
2238
  """Returns the model properties as a dict"""
2213
2239
  result = {}