lightning-sdk 0.2.9__py3-none-any.whl → 0.2.11__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 (50) hide show
  1. lightning_sdk/__init__.py +1 -1
  2. lightning_sdk/api/deployment_api.py +3 -0
  3. lightning_sdk/api/lit_container_api.py +19 -2
  4. lightning_sdk/api/teamspace_api.py +47 -18
  5. lightning_sdk/api/utils.py +1 -1
  6. lightning_sdk/cli/entrypoint.py +2 -2
  7. lightning_sdk/cli/serve.py +143 -16
  8. lightning_sdk/cli/upload.py +4 -1
  9. lightning_sdk/deployment/deployment.py +9 -3
  10. lightning_sdk/lightning_cloud/openapi/__init__.py +5 -0
  11. lightning_sdk/lightning_cloud/openapi/api/cloud_space_service_api.py +98 -1
  12. lightning_sdk/lightning_cloud/openapi/models/__init__.py +5 -0
  13. lightning_sdk/lightning_cloud/openapi/models/cluster_id_capacityreservations_body.py +55 -3
  14. lightning_sdk/lightning_cloud/openapi/models/create.py +53 -1
  15. lightning_sdk/lightning_cloud/openapi/models/orgs_id_body.py +55 -3
  16. lightning_sdk/lightning_cloud/openapi/models/update.py +27 -1
  17. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space.py +53 -1
  18. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_cold_start_metrics_stats.py +357 -0
  19. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_environment_template_config.py +29 -3
  20. lightning_sdk/lightning_cloud/openapi/models/v1_cloudflare_v1.py +227 -0
  21. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_accelerator.py +27 -1
  22. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_capacity_reservation.py +55 -3
  23. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_security_options.py +53 -1
  24. lightning_sdk/lightning_cloud/openapi/models/v1_cluster_spec.py +27 -1
  25. lightning_sdk/lightning_cloud/openapi/models/v1_create_cloud_space_environment_template_request.py +29 -3
  26. lightning_sdk/lightning_cloud/openapi/models/v1_create_cluster_capacity_reservation_response.py +27 -1
  27. lightning_sdk/lightning_cloud/openapi/models/v1_data_connection.py +27 -1
  28. lightning_sdk/lightning_cloud/openapi/models/v1_gcp_direct_vpc.py +149 -0
  29. lightning_sdk/lightning_cloud/openapi/models/v1_get_cloud_space_cold_start_metrics_stats_response.py +123 -0
  30. lightning_sdk/lightning_cloud/openapi/models/v1_get_user_response.py +53 -1
  31. lightning_sdk/lightning_cloud/openapi/models/v1_google_cloud_direct_v1.py +17 -17
  32. lightning_sdk/lightning_cloud/openapi/models/v1_organization.py +55 -3
  33. lightning_sdk/lightning_cloud/openapi/models/v1_project_cluster_binding.py +27 -1
  34. lightning_sdk/lightning_cloud/openapi/models/v1_r2_data_connection.py +253 -0
  35. lightning_sdk/lightning_cloud/openapi/models/v1_update_user_request.py +27 -1
  36. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +50 -24
  37. lightning_sdk/lightning_cloud/openapi/models/v1_validate_data_connection_response.py +27 -1
  38. lightning_sdk/lightning_cloud/openapi/models/v1_weka_data_connection.py +29 -55
  39. lightning_sdk/lightning_cloud/openapi/models/validate.py +27 -1
  40. lightning_sdk/lit_container.py +12 -2
  41. lightning_sdk/models.py +38 -9
  42. lightning_sdk/serve.py +6 -0
  43. lightning_sdk/teamspace.py +16 -2
  44. lightning_sdk/utils/resolve.py +11 -4
  45. {lightning_sdk-0.2.9.dist-info → lightning_sdk-0.2.11.dist-info}/METADATA +1 -1
  46. {lightning_sdk-0.2.9.dist-info → lightning_sdk-0.2.11.dist-info}/RECORD +50 -45
  47. {lightning_sdk-0.2.9.dist-info → lightning_sdk-0.2.11.dist-info}/LICENSE +0 -0
  48. {lightning_sdk-0.2.9.dist-info → lightning_sdk-0.2.11.dist-info}/WHEEL +0 -0
  49. {lightning_sdk-0.2.9.dist-info → lightning_sdk-0.2.11.dist-info}/entry_points.txt +0 -0
  50. {lightning_sdk-0.2.9.dist-info → lightning_sdk-0.2.11.dist-info}/top_level.txt +0 -0
@@ -43,6 +43,7 @@ class V1Organization(object):
43
43
  swagger_types = {
44
44
  'alerts_config': 'V1AlertsConfig',
45
45
  'allow_aws_saas': 'bool',
46
+ 'allow_budgeting': 'bool',
46
47
  'allow_gcp_saas': 'bool',
47
48
  'allow_guest': 'bool',
48
49
  'allow_lambda_saas': 'bool',
@@ -72,12 +73,14 @@ class V1Organization(object):
72
73
  'start_studios_on_spot_instance': 'bool',
73
74
  'teamspace_default_credits': 'float',
74
75
  'twitter_username': 'str',
75
- 'updated_at': 'datetime'
76
+ 'updated_at': 'datetime',
77
+ 'workload_max_run_duration': 'str'
76
78
  }
77
79
 
78
80
  attribute_map = {
79
81
  'alerts_config': 'alertsConfig',
80
82
  'allow_aws_saas': 'allowAwsSaas',
83
+ 'allow_budgeting': 'allowBudgeting',
81
84
  'allow_gcp_saas': 'allowGcpSaas',
82
85
  'allow_guest': 'allowGuest',
83
86
  'allow_lambda_saas': 'allowLambdaSaas',
@@ -107,13 +110,15 @@ class V1Organization(object):
107
110
  'start_studios_on_spot_instance': 'startStudiosOnSpotInstance',
108
111
  'teamspace_default_credits': 'teamspaceDefaultCredits',
109
112
  'twitter_username': 'twitterUsername',
110
- 'updated_at': 'updatedAt'
113
+ 'updated_at': 'updatedAt',
114
+ 'workload_max_run_duration': 'workloadMaxRunDuration'
111
115
  }
112
116
 
113
- def __init__(self, alerts_config: 'V1AlertsConfig' =None, allow_aws_saas: 'bool' =None, allow_gcp_saas: 'bool' =None, allow_guest: 'bool' =None, allow_lambda_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_domain_validations: 'dict(str, V1AutoJoinDomainValidation)' =None, auto_join_domains: 'list[str]' =None, created_at: 'datetime' =None, default_machine_image_version: 'str' =None, default_machine_type: 'str' =None, description: 'str' =None, display_name: 'str' =None, domain: 'str' =None, email: 'str' =None, featured_gallery: 'bool' =None, full_story_end_date: 'datetime' =None, full_story_start_date: 'datetime' =None, id: 'str' =None, location: 'str' =None, name: '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, updated_at: 'datetime' =None): # noqa: E501
117
+ def __init__(self, alerts_config: 'V1AlertsConfig' =None, allow_aws_saas: 'bool' =None, allow_budgeting: 'bool' =None, allow_gcp_saas: 'bool' =None, allow_guest: 'bool' =None, allow_lambda_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_domain_validations: 'dict(str, V1AutoJoinDomainValidation)' =None, auto_join_domains: 'list[str]' =None, created_at: 'datetime' =None, default_machine_image_version: 'str' =None, default_machine_type: 'str' =None, description: 'str' =None, display_name: 'str' =None, domain: 'str' =None, email: 'str' =None, featured_gallery: 'bool' =None, full_story_end_date: 'datetime' =None, full_story_start_date: 'datetime' =None, id: 'str' =None, location: 'str' =None, name: '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, updated_at: 'datetime' =None, workload_max_run_duration: 'str' =None): # noqa: E501
114
118
  """V1Organization - a model defined in Swagger""" # noqa: E501
115
119
  self._alerts_config = None
116
120
  self._allow_aws_saas = None
121
+ self._allow_budgeting = None
117
122
  self._allow_gcp_saas = None
118
123
  self._allow_guest = None
119
124
  self._allow_lambda_saas = None
@@ -144,11 +149,14 @@ class V1Organization(object):
144
149
  self._teamspace_default_credits = None
145
150
  self._twitter_username = None
146
151
  self._updated_at = None
152
+ self._workload_max_run_duration = None
147
153
  self.discriminator = None
148
154
  if alerts_config is not None:
149
155
  self.alerts_config = alerts_config
150
156
  if allow_aws_saas is not None:
151
157
  self.allow_aws_saas = allow_aws_saas
158
+ if allow_budgeting is not None:
159
+ self.allow_budgeting = allow_budgeting
152
160
  if allow_gcp_saas is not None:
153
161
  self.allow_gcp_saas = allow_gcp_saas
154
162
  if allow_guest is not None:
@@ -209,6 +217,8 @@ class V1Organization(object):
209
217
  self.twitter_username = twitter_username
210
218
  if updated_at is not None:
211
219
  self.updated_at = updated_at
220
+ if workload_max_run_duration is not None:
221
+ self.workload_max_run_duration = workload_max_run_duration
212
222
 
213
223
  @property
214
224
  def alerts_config(self) -> 'V1AlertsConfig':
@@ -252,6 +262,27 @@ class V1Organization(object):
252
262
 
253
263
  self._allow_aws_saas = allow_aws_saas
254
264
 
265
+ @property
266
+ def allow_budgeting(self) -> 'bool':
267
+ """Gets the allow_budgeting of this V1Organization. # noqa: E501
268
+
269
+
270
+ :return: The allow_budgeting of this V1Organization. # noqa: E501
271
+ :rtype: bool
272
+ """
273
+ return self._allow_budgeting
274
+
275
+ @allow_budgeting.setter
276
+ def allow_budgeting(self, allow_budgeting: 'bool'):
277
+ """Sets the allow_budgeting of this V1Organization.
278
+
279
+
280
+ :param allow_budgeting: The allow_budgeting of this V1Organization. # noqa: E501
281
+ :type: bool
282
+ """
283
+
284
+ self._allow_budgeting = allow_budgeting
285
+
255
286
  @property
256
287
  def allow_gcp_saas(self) -> 'bool':
257
288
  """Gets the allow_gcp_saas of this V1Organization. # noqa: E501
@@ -882,6 +913,27 @@ class V1Organization(object):
882
913
 
883
914
  self._updated_at = updated_at
884
915
 
916
+ @property
917
+ def workload_max_run_duration(self) -> 'str':
918
+ """Gets the workload_max_run_duration of this V1Organization. # noqa: E501
919
+
920
+
921
+ :return: The workload_max_run_duration of this V1Organization. # noqa: E501
922
+ :rtype: str
923
+ """
924
+ return self._workload_max_run_duration
925
+
926
+ @workload_max_run_duration.setter
927
+ def workload_max_run_duration(self, workload_max_run_duration: 'str'):
928
+ """Sets the workload_max_run_duration of this V1Organization.
929
+
930
+
931
+ :param workload_max_run_duration: The workload_max_run_duration of this V1Organization. # noqa: E501
932
+ :type: str
933
+ """
934
+
935
+ self._workload_max_run_duration = workload_max_run_duration
936
+
885
937
  def to_dict(self) -> dict:
886
938
  """Returns the model properties as a dict"""
887
939
  result = {}
@@ -47,6 +47,7 @@ class V1ProjectClusterBinding(object):
47
47
  'created_at': 'datetime',
48
48
  'is_cluster_healthy': 'bool',
49
49
  'project_id': 'str',
50
+ 'sa_key': 'str',
50
51
  'updated_at': 'datetime'
51
52
  }
52
53
 
@@ -57,10 +58,11 @@ class V1ProjectClusterBinding(object):
57
58
  'created_at': 'createdAt',
58
59
  'is_cluster_healthy': 'isClusterHealthy',
59
60
  'project_id': 'projectId',
61
+ 'sa_key': 'saKey',
60
62
  'updated_at': 'updatedAt'
61
63
  }
62
64
 
63
- def __init__(self, cluster_id: 'str' =None, cluster_name: 'str' =None, cluster_region: 'str' =None, created_at: 'datetime' =None, is_cluster_healthy: 'bool' =None, project_id: 'str' =None, updated_at: 'datetime' =None): # noqa: E501
65
+ def __init__(self, cluster_id: 'str' =None, cluster_name: 'str' =None, cluster_region: 'str' =None, created_at: 'datetime' =None, is_cluster_healthy: 'bool' =None, project_id: 'str' =None, sa_key: 'str' =None, updated_at: 'datetime' =None): # noqa: E501
64
66
  """V1ProjectClusterBinding - a model defined in Swagger""" # noqa: E501
65
67
  self._cluster_id = None
66
68
  self._cluster_name = None
@@ -68,6 +70,7 @@ class V1ProjectClusterBinding(object):
68
70
  self._created_at = None
69
71
  self._is_cluster_healthy = None
70
72
  self._project_id = None
73
+ self._sa_key = None
71
74
  self._updated_at = None
72
75
  self.discriminator = None
73
76
  if cluster_id is not None:
@@ -82,6 +85,8 @@ class V1ProjectClusterBinding(object):
82
85
  self.is_cluster_healthy = is_cluster_healthy
83
86
  if project_id is not None:
84
87
  self.project_id = project_id
88
+ if sa_key is not None:
89
+ self.sa_key = sa_key
85
90
  if updated_at is not None:
86
91
  self.updated_at = updated_at
87
92
 
@@ -211,6 +216,27 @@ class V1ProjectClusterBinding(object):
211
216
 
212
217
  self._project_id = project_id
213
218
 
219
+ @property
220
+ def sa_key(self) -> 'str':
221
+ """Gets the sa_key of this V1ProjectClusterBinding. # noqa: E501
222
+
223
+
224
+ :return: The sa_key of this V1ProjectClusterBinding. # noqa: E501
225
+ :rtype: str
226
+ """
227
+ return self._sa_key
228
+
229
+ @sa_key.setter
230
+ def sa_key(self, sa_key: 'str'):
231
+ """Sets the sa_key of this V1ProjectClusterBinding.
232
+
233
+
234
+ :param sa_key: The sa_key of this V1ProjectClusterBinding. # noqa: E501
235
+ :type: str
236
+ """
237
+
238
+ self._sa_key = sa_key
239
+
214
240
  @property
215
241
  def updated_at(self) -> 'datetime':
216
242
  """Gets the updated_at of this V1ProjectClusterBinding. # noqa: E501
@@ -0,0 +1,253 @@
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 V1R2DataConnection(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
+ 'account_id': 'str',
45
+ 'credential_id': 'str',
46
+ 'name': 'str',
47
+ 'secret_access_key': 'str',
48
+ 'source': 'str',
49
+ 'token_value': 'str'
50
+ }
51
+
52
+ attribute_map = {
53
+ 'account_id': 'accountId',
54
+ 'credential_id': 'credentialId',
55
+ 'name': 'name',
56
+ 'secret_access_key': 'secretAccessKey',
57
+ 'source': 'source',
58
+ 'token_value': 'tokenValue'
59
+ }
60
+
61
+ def __init__(self, account_id: 'str' =None, credential_id: 'str' =None, name: 'str' =None, secret_access_key: 'str' =None, source: 'str' =None, token_value: 'str' =None): # noqa: E501
62
+ """V1R2DataConnection - a model defined in Swagger""" # noqa: E501
63
+ self._account_id = None
64
+ self._credential_id = None
65
+ self._name = None
66
+ self._secret_access_key = None
67
+ self._source = None
68
+ self._token_value = None
69
+ self.discriminator = None
70
+ if account_id is not None:
71
+ self.account_id = account_id
72
+ if credential_id is not None:
73
+ self.credential_id = credential_id
74
+ if name is not None:
75
+ self.name = name
76
+ if secret_access_key is not None:
77
+ self.secret_access_key = secret_access_key
78
+ if source is not None:
79
+ self.source = source
80
+ if token_value is not None:
81
+ self.token_value = token_value
82
+
83
+ @property
84
+ def account_id(self) -> 'str':
85
+ """Gets the account_id of this V1R2DataConnection. # noqa: E501
86
+
87
+
88
+ :return: The account_id of this V1R2DataConnection. # noqa: E501
89
+ :rtype: str
90
+ """
91
+ return self._account_id
92
+
93
+ @account_id.setter
94
+ def account_id(self, account_id: 'str'):
95
+ """Sets the account_id of this V1R2DataConnection.
96
+
97
+
98
+ :param account_id: The account_id of this V1R2DataConnection. # noqa: E501
99
+ :type: str
100
+ """
101
+
102
+ self._account_id = account_id
103
+
104
+ @property
105
+ def credential_id(self) -> 'str':
106
+ """Gets the credential_id of this V1R2DataConnection. # noqa: E501
107
+
108
+
109
+ :return: The credential_id of this V1R2DataConnection. # noqa: E501
110
+ :rtype: str
111
+ """
112
+ return self._credential_id
113
+
114
+ @credential_id.setter
115
+ def credential_id(self, credential_id: 'str'):
116
+ """Sets the credential_id of this V1R2DataConnection.
117
+
118
+
119
+ :param credential_id: The credential_id of this V1R2DataConnection. # noqa: E501
120
+ :type: str
121
+ """
122
+
123
+ self._credential_id = credential_id
124
+
125
+ @property
126
+ def name(self) -> 'str':
127
+ """Gets the name of this V1R2DataConnection. # noqa: E501
128
+
129
+
130
+ :return: The name of this V1R2DataConnection. # noqa: E501
131
+ :rtype: str
132
+ """
133
+ return self._name
134
+
135
+ @name.setter
136
+ def name(self, name: 'str'):
137
+ """Sets the name of this V1R2DataConnection.
138
+
139
+
140
+ :param name: The name of this V1R2DataConnection. # noqa: E501
141
+ :type: str
142
+ """
143
+
144
+ self._name = name
145
+
146
+ @property
147
+ def secret_access_key(self) -> 'str':
148
+ """Gets the secret_access_key of this V1R2DataConnection. # noqa: E501
149
+
150
+
151
+ :return: The secret_access_key of this V1R2DataConnection. # noqa: E501
152
+ :rtype: str
153
+ """
154
+ return self._secret_access_key
155
+
156
+ @secret_access_key.setter
157
+ def secret_access_key(self, secret_access_key: 'str'):
158
+ """Sets the secret_access_key of this V1R2DataConnection.
159
+
160
+
161
+ :param secret_access_key: The secret_access_key of this V1R2DataConnection. # noqa: E501
162
+ :type: str
163
+ """
164
+
165
+ self._secret_access_key = secret_access_key
166
+
167
+ @property
168
+ def source(self) -> 'str':
169
+ """Gets the source of this V1R2DataConnection. # noqa: E501
170
+
171
+
172
+ :return: The source of this V1R2DataConnection. # noqa: E501
173
+ :rtype: str
174
+ """
175
+ return self._source
176
+
177
+ @source.setter
178
+ def source(self, source: 'str'):
179
+ """Sets the source of this V1R2DataConnection.
180
+
181
+
182
+ :param source: The source of this V1R2DataConnection. # noqa: E501
183
+ :type: str
184
+ """
185
+
186
+ self._source = source
187
+
188
+ @property
189
+ def token_value(self) -> 'str':
190
+ """Gets the token_value of this V1R2DataConnection. # noqa: E501
191
+
192
+
193
+ :return: The token_value of this V1R2DataConnection. # noqa: E501
194
+ :rtype: str
195
+ """
196
+ return self._token_value
197
+
198
+ @token_value.setter
199
+ def token_value(self, token_value: 'str'):
200
+ """Sets the token_value of this V1R2DataConnection.
201
+
202
+
203
+ :param token_value: The token_value of this V1R2DataConnection. # noqa: E501
204
+ :type: str
205
+ """
206
+
207
+ self._token_value = token_value
208
+
209
+ def to_dict(self) -> dict:
210
+ """Returns the model properties as a dict"""
211
+ result = {}
212
+
213
+ for attr, _ in six.iteritems(self.swagger_types):
214
+ value = getattr(self, attr)
215
+ if isinstance(value, list):
216
+ result[attr] = list(map(
217
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
218
+ value
219
+ ))
220
+ elif hasattr(value, "to_dict"):
221
+ result[attr] = value.to_dict()
222
+ elif isinstance(value, dict):
223
+ result[attr] = dict(map(
224
+ lambda item: (item[0], item[1].to_dict())
225
+ if hasattr(item[1], "to_dict") else item,
226
+ value.items()
227
+ ))
228
+ else:
229
+ result[attr] = value
230
+ if issubclass(V1R2DataConnection, dict):
231
+ for key, value in self.items():
232
+ result[key] = value
233
+
234
+ return result
235
+
236
+ def to_str(self) -> str:
237
+ """Returns the string representation of the model"""
238
+ return pprint.pformat(self.to_dict())
239
+
240
+ def __repr__(self) -> str:
241
+ """For `print` and `pprint`"""
242
+ return self.to_str()
243
+
244
+ def __eq__(self, other: 'V1R2DataConnection') -> bool:
245
+ """Returns true if both objects are equal"""
246
+ if not isinstance(other, V1R2DataConnection):
247
+ return False
248
+
249
+ return self.__dict__ == other.__dict__
250
+
251
+ def __ne__(self, other: 'V1R2DataConnection') -> bool:
252
+ """Returns true if both objects are not equal"""
253
+ return not self == other
@@ -50,6 +50,7 @@ class V1UpdateUserRequest(object):
50
50
  'experimentation_id': 'str',
51
51
  'first_name': 'str',
52
52
  'general_audience_mode': 'bool',
53
+ 'git_credentials_id': 'str',
53
54
  'last_name': 'str',
54
55
  'non_developer_mode': 'bool',
55
56
  'opted_in_marketing_emails': 'bool',
@@ -77,6 +78,7 @@ class V1UpdateUserRequest(object):
77
78
  'experimentation_id': 'experimentationId',
78
79
  'first_name': 'firstName',
79
80
  'general_audience_mode': 'generalAudienceMode',
81
+ 'git_credentials_id': 'gitCredentialsId',
80
82
  'last_name': 'lastName',
81
83
  'non_developer_mode': 'nonDeveloperMode',
82
84
  'opted_in_marketing_emails': 'optedInMarketingEmails',
@@ -94,7 +96,7 @@ class V1UpdateUserRequest(object):
94
96
  'website': 'website'
95
97
  }
96
98
 
97
- def __init__(self, agree_to_terms_and_conditions: 'bool' =None, complete_sign_up: 'bool' =None, completed_project_onboarding: 'bool' =None, country: 'str' =None, discounted_pro_plan: 'bool' =None, email: 'str' =None, experimentation_id: 'str' =None, first_name: 'str' =None, general_audience_mode: 'bool' =None, last_name: 'str' =None, non_developer_mode: 'bool' =None, opted_in_marketing_emails: 'bool' =None, organization: 'str' =None, preferred_color_scheme: 'str' =None, preferred_ide: 'str' =None, preferred_shell: 'str' =None, preferred_vscode_marketplace: 'str' =None, role: 'str' =None, saw_create_first_project_dialog: 'bool' =None, saw_forums_login_merge_dialog: 'bool' =None, saw_free_credits_notification: 'bool' =None, user_metadata: 'str' =None, username: 'str' =None, website: 'str' =None): # noqa: E501
99
+ def __init__(self, agree_to_terms_and_conditions: 'bool' =None, complete_sign_up: 'bool' =None, completed_project_onboarding: 'bool' =None, country: 'str' =None, discounted_pro_plan: 'bool' =None, email: 'str' =None, experimentation_id: 'str' =None, first_name: 'str' =None, general_audience_mode: 'bool' =None, git_credentials_id: 'str' =None, last_name: 'str' =None, non_developer_mode: 'bool' =None, opted_in_marketing_emails: 'bool' =None, organization: 'str' =None, preferred_color_scheme: 'str' =None, preferred_ide: 'str' =None, preferred_shell: 'str' =None, preferred_vscode_marketplace: 'str' =None, role: 'str' =None, saw_create_first_project_dialog: 'bool' =None, saw_forums_login_merge_dialog: 'bool' =None, saw_free_credits_notification: 'bool' =None, user_metadata: 'str' =None, username: 'str' =None, website: 'str' =None): # noqa: E501
98
100
  """V1UpdateUserRequest - a model defined in Swagger""" # noqa: E501
99
101
  self._agree_to_terms_and_conditions = None
100
102
  self._complete_sign_up = None
@@ -105,6 +107,7 @@ class V1UpdateUserRequest(object):
105
107
  self._experimentation_id = None
106
108
  self._first_name = None
107
109
  self._general_audience_mode = None
110
+ self._git_credentials_id = None
108
111
  self._last_name = None
109
112
  self._non_developer_mode = None
110
113
  self._opted_in_marketing_emails = None
@@ -139,6 +142,8 @@ class V1UpdateUserRequest(object):
139
142
  self.first_name = first_name
140
143
  if general_audience_mode is not None:
141
144
  self.general_audience_mode = general_audience_mode
145
+ if git_credentials_id is not None:
146
+ self.git_credentials_id = git_credentials_id
142
147
  if last_name is not None:
143
148
  self.last_name = last_name
144
149
  if non_developer_mode is not None:
@@ -359,6 +364,27 @@ class V1UpdateUserRequest(object):
359
364
 
360
365
  self._general_audience_mode = general_audience_mode
361
366
 
367
+ @property
368
+ def git_credentials_id(self) -> 'str':
369
+ """Gets the git_credentials_id of this V1UpdateUserRequest. # noqa: E501
370
+
371
+
372
+ :return: The git_credentials_id of this V1UpdateUserRequest. # noqa: E501
373
+ :rtype: str
374
+ """
375
+ return self._git_credentials_id
376
+
377
+ @git_credentials_id.setter
378
+ def git_credentials_id(self, git_credentials_id: 'str'):
379
+ """Sets the git_credentials_id of this V1UpdateUserRequest.
380
+
381
+
382
+ :param git_credentials_id: The git_credentials_id of this V1UpdateUserRequest. # noqa: E501
383
+ :type: str
384
+ """
385
+
386
+ self._git_credentials_id = git_credentials_id
387
+
362
388
  @property
363
389
  def last_name(self) -> 'str':
364
390
  """Gets the last_name of this V1UpdateUserRequest. # noqa: E501