lightning-sdk 0.1.38__py3-none-any.whl → 0.1.40__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 (53) hide show
  1. lightning_sdk/__init__.py +1 -1
  2. lightning_sdk/_mmt/__init__.py +3 -0
  3. lightning_sdk/_mmt/base.py +180 -0
  4. lightning_sdk/_mmt/mmt.py +161 -0
  5. lightning_sdk/_mmt/v1.py +69 -0
  6. lightning_sdk/_mmt/v2.py +141 -0
  7. lightning_sdk/api/deployment_api.py +0 -2
  8. lightning_sdk/api/job_api.py +4 -0
  9. lightning_sdk/api/mmt_api.py +147 -0
  10. lightning_sdk/api/teamspace_api.py +4 -11
  11. lightning_sdk/api/utils.py +6 -3
  12. lightning_sdk/cli/download.py +3 -5
  13. lightning_sdk/cli/mmt.py +137 -0
  14. lightning_sdk/cli/run.py +16 -0
  15. lightning_sdk/cli/upload.py +3 -10
  16. lightning_sdk/job/base.py +24 -3
  17. lightning_sdk/job/job.py +10 -1
  18. lightning_sdk/job/v1.py +7 -1
  19. lightning_sdk/job/v2.py +18 -9
  20. lightning_sdk/lightning_cloud/openapi/__init__.py +7 -3
  21. lightning_sdk/lightning_cloud/openapi/api/assistants_service_api.py +90 -284
  22. lightning_sdk/lightning_cloud/openapi/api/data_connection_service_api.py +6 -1
  23. lightning_sdk/lightning_cloud/openapi/api/models_store_api.py +235 -1
  24. lightning_sdk/lightning_cloud/openapi/models/__init__.py +7 -3
  25. lightning_sdk/lightning_cloud/openapi/models/deployments_id_body.py +27 -1
  26. lightning_sdk/lightning_cloud/openapi/models/id_start_body.py +29 -3
  27. lightning_sdk/lightning_cloud/openapi/models/model_id_visibility_body.py +123 -0
  28. lightning_sdk/lightning_cloud/openapi/models/project_id_cloudspaces_body.py +27 -1
  29. lightning_sdk/lightning_cloud/openapi/models/v1_aws_direct_v1.py +27 -1
  30. lightning_sdk/lightning_cloud/openapi/models/{project_id_agentmanagedmodels_body.py → v1_body.py} +21 -47
  31. lightning_sdk/lightning_cloud/openapi/models/v1_data_path.py +29 -3
  32. lightning_sdk/lightning_cloud/openapi/models/v1_deployment.py +27 -1
  33. lightning_sdk/lightning_cloud/openapi/models/v1_deployment_api.py +201 -0
  34. lightning_sdk/lightning_cloud/openapi/models/v1_get_model_files_response.py +27 -1
  35. lightning_sdk/lightning_cloud/openapi/models/v1_job_spec.py +53 -53
  36. lightning_sdk/lightning_cloud/openapi/models/v1_managed_model.py +27 -1
  37. lightning_sdk/lightning_cloud/openapi/models/v1_managed_model_abilities.py +175 -0
  38. lightning_sdk/lightning_cloud/openapi/models/v1_model.py +29 -3
  39. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job.py +53 -1
  40. lightning_sdk/lightning_cloud/openapi/models/v1_multi_machine_job_state.py +1 -2
  41. lightning_sdk/lightning_cloud/openapi/models/v1_query_param.py +175 -0
  42. lightning_sdk/lightning_cloud/openapi/models/{v1_list_managed_models_response.py → v1_resource_visibility.py} +23 -23
  43. lightning_sdk/lightning_cloud/openapi/models/{v1_delete_managed_model_response.py → v1_update_model_visibility_response.py} +6 -6
  44. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +27 -1
  45. lightning_sdk/models.py +153 -0
  46. lightning_sdk/teamspace.py +15 -11
  47. {lightning_sdk-0.1.38.dist-info → lightning_sdk-0.1.40.dist-info}/METADATA +1 -1
  48. {lightning_sdk-0.1.38.dist-info → lightning_sdk-0.1.40.dist-info}/RECORD +52 -41
  49. {lightning_sdk-0.1.38.dist-info → lightning_sdk-0.1.40.dist-info}/entry_points.txt +1 -0
  50. lightning_sdk/cli/models.py +0 -68
  51. {lightning_sdk-0.1.38.dist-info → lightning_sdk-0.1.40.dist-info}/LICENSE +0 -0
  52. {lightning_sdk-0.1.38.dist-info → lightning_sdk-0.1.40.dist-info}/WHEEL +0 -0
  53. {lightning_sdk-0.1.38.dist-info → lightning_sdk-0.1.40.dist-info}/top_level.txt +0 -0
@@ -41,6 +41,8 @@ class V1JobSpec(object):
41
41
  and the value is json key in definition.
42
42
  """
43
43
  swagger_types = {
44
+ 'artifacts_destination': 'str',
45
+ 'artifacts_source': 'str',
44
46
  'cloudspace_id': 'str',
45
47
  'cluster_id': 'str',
46
48
  'command': 'str',
@@ -58,13 +60,13 @@ class V1JobSpec(object):
58
60
  'resources': 'V1Resources',
59
61
  'restart_policy': 'str',
60
62
  'run_id': 'str',
61
- 'skip_data_connections_setup': 'bool',
62
- 'skip_filesystem_setup': 'bool',
63
63
  'spot': 'bool',
64
64
  'volumes': 'list[V1Volume]'
65
65
  }
66
66
 
67
67
  attribute_map = {
68
+ 'artifacts_destination': 'artifactsDestination',
69
+ 'artifacts_source': 'artifactsSource',
68
70
  'cloudspace_id': 'cloudspaceId',
69
71
  'cluster_id': 'clusterId',
70
72
  'command': 'command',
@@ -82,14 +84,14 @@ class V1JobSpec(object):
82
84
  'resources': 'resources',
83
85
  'restart_policy': 'restartPolicy',
84
86
  'run_id': 'runId',
85
- 'skip_data_connections_setup': 'skipDataConnectionsSetup',
86
- 'skip_filesystem_setup': 'skipFilesystemSetup',
87
87
  'spot': 'spot',
88
88
  'volumes': 'volumes'
89
89
  }
90
90
 
91
- def __init__(self, cloudspace_id: 'str' =None, cluster_id: 'str' =None, command: 'str' =None, data_paths: 'list[V1DataPath]' =None, entrypoint: 'str' =None, env: 'list[V1EnvVar]' =None, image: 'str' =None, image_cluster_credentials: 'bool' =None, image_secret_ref: 'str' =None, include_credentials: 'bool' =None, instance_name: 'str' =None, instance_type: 'str' =None, modified_volume: 'bool' =None, readiness_probe: 'V1JobHealthCheckConfig' =None, resources: 'V1Resources' =None, restart_policy: 'str' =None, run_id: 'str' =None, skip_data_connections_setup: 'bool' =None, skip_filesystem_setup: 'bool' =None, spot: 'bool' =None, volumes: 'list[V1Volume]' =None): # noqa: E501
91
+ def __init__(self, artifacts_destination: 'str' =None, artifacts_source: 'str' =None, cloudspace_id: 'str' =None, cluster_id: 'str' =None, command: 'str' =None, data_paths: 'list[V1DataPath]' =None, entrypoint: 'str' =None, env: 'list[V1EnvVar]' =None, image: 'str' =None, image_cluster_credentials: 'bool' =None, image_secret_ref: 'str' =None, include_credentials: 'bool' =None, instance_name: 'str' =None, instance_type: 'str' =None, modified_volume: 'bool' =None, readiness_probe: 'V1JobHealthCheckConfig' =None, resources: 'V1Resources' =None, restart_policy: 'str' =None, run_id: 'str' =None, spot: 'bool' =None, volumes: 'list[V1Volume]' =None): # noqa: E501
92
92
  """V1JobSpec - a model defined in Swagger""" # noqa: E501
93
+ self._artifacts_destination = None
94
+ self._artifacts_source = None
93
95
  self._cloudspace_id = None
94
96
  self._cluster_id = None
95
97
  self._command = None
@@ -107,11 +109,13 @@ class V1JobSpec(object):
107
109
  self._resources = None
108
110
  self._restart_policy = None
109
111
  self._run_id = None
110
- self._skip_data_connections_setup = None
111
- self._skip_filesystem_setup = None
112
112
  self._spot = None
113
113
  self._volumes = None
114
114
  self.discriminator = None
115
+ if artifacts_destination is not None:
116
+ self.artifacts_destination = artifacts_destination
117
+ if artifacts_source is not None:
118
+ self.artifacts_source = artifacts_source
115
119
  if cloudspace_id is not None:
116
120
  self.cloudspace_id = cloudspace_id
117
121
  if cluster_id is not None:
@@ -146,15 +150,53 @@ class V1JobSpec(object):
146
150
  self.restart_policy = restart_policy
147
151
  if run_id is not None:
148
152
  self.run_id = run_id
149
- if skip_data_connections_setup is not None:
150
- self.skip_data_connections_setup = skip_data_connections_setup
151
- if skip_filesystem_setup is not None:
152
- self.skip_filesystem_setup = skip_filesystem_setup
153
153
  if spot is not None:
154
154
  self.spot = spot
155
155
  if volumes is not None:
156
156
  self.volumes = volumes
157
157
 
158
+ @property
159
+ def artifacts_destination(self) -> 'str':
160
+ """Gets the artifacts_destination of this V1JobSpec. # noqa: E501
161
+
162
+
163
+ :return: The artifacts_destination of this V1JobSpec. # noqa: E501
164
+ :rtype: str
165
+ """
166
+ return self._artifacts_destination
167
+
168
+ @artifacts_destination.setter
169
+ def artifacts_destination(self, artifacts_destination: 'str'):
170
+ """Sets the artifacts_destination of this V1JobSpec.
171
+
172
+
173
+ :param artifacts_destination: The artifacts_destination of this V1JobSpec. # noqa: E501
174
+ :type: str
175
+ """
176
+
177
+ self._artifacts_destination = artifacts_destination
178
+
179
+ @property
180
+ def artifacts_source(self) -> 'str':
181
+ """Gets the artifacts_source of this V1JobSpec. # noqa: E501
182
+
183
+
184
+ :return: The artifacts_source of this V1JobSpec. # noqa: E501
185
+ :rtype: str
186
+ """
187
+ return self._artifacts_source
188
+
189
+ @artifacts_source.setter
190
+ def artifacts_source(self, artifacts_source: 'str'):
191
+ """Sets the artifacts_source of this V1JobSpec.
192
+
193
+
194
+ :param artifacts_source: The artifacts_source of this V1JobSpec. # noqa: E501
195
+ :type: str
196
+ """
197
+
198
+ self._artifacts_source = artifacts_source
199
+
158
200
  @property
159
201
  def cloudspace_id(self) -> 'str':
160
202
  """Gets the cloudspace_id of this V1JobSpec. # noqa: E501
@@ -512,48 +554,6 @@ class V1JobSpec(object):
512
554
 
513
555
  self._run_id = run_id
514
556
 
515
- @property
516
- def skip_data_connections_setup(self) -> 'bool':
517
- """Gets the skip_data_connections_setup of this V1JobSpec. # noqa: E501
518
-
519
-
520
- :return: The skip_data_connections_setup of this V1JobSpec. # noqa: E501
521
- :rtype: bool
522
- """
523
- return self._skip_data_connections_setup
524
-
525
- @skip_data_connections_setup.setter
526
- def skip_data_connections_setup(self, skip_data_connections_setup: 'bool'):
527
- """Sets the skip_data_connections_setup of this V1JobSpec.
528
-
529
-
530
- :param skip_data_connections_setup: The skip_data_connections_setup of this V1JobSpec. # noqa: E501
531
- :type: bool
532
- """
533
-
534
- self._skip_data_connections_setup = skip_data_connections_setup
535
-
536
- @property
537
- def skip_filesystem_setup(self) -> 'bool':
538
- """Gets the skip_filesystem_setup of this V1JobSpec. # noqa: E501
539
-
540
-
541
- :return: The skip_filesystem_setup of this V1JobSpec. # noqa: E501
542
- :rtype: bool
543
- """
544
- return self._skip_filesystem_setup
545
-
546
- @skip_filesystem_setup.setter
547
- def skip_filesystem_setup(self, skip_filesystem_setup: 'bool'):
548
- """Sets the skip_filesystem_setup of this V1JobSpec.
549
-
550
-
551
- :param skip_filesystem_setup: The skip_filesystem_setup of this V1JobSpec. # noqa: E501
552
- :type: bool
553
- """
554
-
555
- self._skip_filesystem_setup = skip_filesystem_setup
556
-
557
557
  @property
558
558
  def spot(self) -> 'bool':
559
559
  """Gets the spot of this V1JobSpec. # noqa: E501
@@ -41,6 +41,7 @@ class V1ManagedModel(object):
41
41
  and the value is json key in definition.
42
42
  """
43
43
  swagger_types = {
44
+ 'abilities': 'V1ManagedModelAbilities',
44
45
  'completion_token_price': 'float',
45
46
  'description': 'str',
46
47
  'endpoint_id': 'str',
@@ -50,6 +51,7 @@ class V1ManagedModel(object):
50
51
  }
51
52
 
52
53
  attribute_map = {
54
+ 'abilities': 'abilities',
53
55
  'completion_token_price': 'completionTokenPrice',
54
56
  'description': 'description',
55
57
  'endpoint_id': 'endpointId',
@@ -58,8 +60,9 @@ class V1ManagedModel(object):
58
60
  'prompt_token_price': 'promptTokenPrice'
59
61
  }
60
62
 
61
- def __init__(self, completion_token_price: 'float' =None, description: 'str' =None, endpoint_id: 'str' =None, id: 'str' =None, name: 'str' =None, prompt_token_price: 'float' =None): # noqa: E501
63
+ def __init__(self, abilities: 'V1ManagedModelAbilities' =None, completion_token_price: 'float' =None, description: 'str' =None, endpoint_id: 'str' =None, id: 'str' =None, name: 'str' =None, prompt_token_price: 'float' =None): # noqa: E501
62
64
  """V1ManagedModel - a model defined in Swagger""" # noqa: E501
65
+ self._abilities = None
63
66
  self._completion_token_price = None
64
67
  self._description = None
65
68
  self._endpoint_id = None
@@ -67,6 +70,8 @@ class V1ManagedModel(object):
67
70
  self._name = None
68
71
  self._prompt_token_price = None
69
72
  self.discriminator = None
73
+ if abilities is not None:
74
+ self.abilities = abilities
70
75
  if completion_token_price is not None:
71
76
  self.completion_token_price = completion_token_price
72
77
  if description is not None:
@@ -80,6 +85,27 @@ class V1ManagedModel(object):
80
85
  if prompt_token_price is not None:
81
86
  self.prompt_token_price = prompt_token_price
82
87
 
88
+ @property
89
+ def abilities(self) -> 'V1ManagedModelAbilities':
90
+ """Gets the abilities of this V1ManagedModel. # noqa: E501
91
+
92
+
93
+ :return: The abilities of this V1ManagedModel. # noqa: E501
94
+ :rtype: V1ManagedModelAbilities
95
+ """
96
+ return self._abilities
97
+
98
+ @abilities.setter
99
+ def abilities(self, abilities: 'V1ManagedModelAbilities'):
100
+ """Sets the abilities of this V1ManagedModel.
101
+
102
+
103
+ :param abilities: The abilities of this V1ManagedModel. # noqa: E501
104
+ :type: V1ManagedModelAbilities
105
+ """
106
+
107
+ self._abilities = abilities
108
+
83
109
  @property
84
110
  def completion_token_price(self) -> 'float':
85
111
  """Gets the completion_token_price of this V1ManagedModel. # noqa: E501
@@ -0,0 +1,175 @@
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 V1ManagedModelAbilities(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
+ 'can_call_hub_deployment': 'bool',
45
+ 'can_receive_files': 'bool',
46
+ 'can_receive_images': 'bool'
47
+ }
48
+
49
+ attribute_map = {
50
+ 'can_call_hub_deployment': 'canCallHubDeployment',
51
+ 'can_receive_files': 'canReceiveFiles',
52
+ 'can_receive_images': 'canReceiveImages'
53
+ }
54
+
55
+ def __init__(self, can_call_hub_deployment: 'bool' =None, can_receive_files: 'bool' =None, can_receive_images: 'bool' =None): # noqa: E501
56
+ """V1ManagedModelAbilities - a model defined in Swagger""" # noqa: E501
57
+ self._can_call_hub_deployment = None
58
+ self._can_receive_files = None
59
+ self._can_receive_images = None
60
+ self.discriminator = None
61
+ if can_call_hub_deployment is not None:
62
+ self.can_call_hub_deployment = can_call_hub_deployment
63
+ if can_receive_files is not None:
64
+ self.can_receive_files = can_receive_files
65
+ if can_receive_images is not None:
66
+ self.can_receive_images = can_receive_images
67
+
68
+ @property
69
+ def can_call_hub_deployment(self) -> 'bool':
70
+ """Gets the can_call_hub_deployment of this V1ManagedModelAbilities. # noqa: E501
71
+
72
+
73
+ :return: The can_call_hub_deployment of this V1ManagedModelAbilities. # noqa: E501
74
+ :rtype: bool
75
+ """
76
+ return self._can_call_hub_deployment
77
+
78
+ @can_call_hub_deployment.setter
79
+ def can_call_hub_deployment(self, can_call_hub_deployment: 'bool'):
80
+ """Sets the can_call_hub_deployment of this V1ManagedModelAbilities.
81
+
82
+
83
+ :param can_call_hub_deployment: The can_call_hub_deployment of this V1ManagedModelAbilities. # noqa: E501
84
+ :type: bool
85
+ """
86
+
87
+ self._can_call_hub_deployment = can_call_hub_deployment
88
+
89
+ @property
90
+ def can_receive_files(self) -> 'bool':
91
+ """Gets the can_receive_files of this V1ManagedModelAbilities. # noqa: E501
92
+
93
+
94
+ :return: The can_receive_files of this V1ManagedModelAbilities. # noqa: E501
95
+ :rtype: bool
96
+ """
97
+ return self._can_receive_files
98
+
99
+ @can_receive_files.setter
100
+ def can_receive_files(self, can_receive_files: 'bool'):
101
+ """Sets the can_receive_files of this V1ManagedModelAbilities.
102
+
103
+
104
+ :param can_receive_files: The can_receive_files of this V1ManagedModelAbilities. # noqa: E501
105
+ :type: bool
106
+ """
107
+
108
+ self._can_receive_files = can_receive_files
109
+
110
+ @property
111
+ def can_receive_images(self) -> 'bool':
112
+ """Gets the can_receive_images of this V1ManagedModelAbilities. # noqa: E501
113
+
114
+
115
+ :return: The can_receive_images of this V1ManagedModelAbilities. # noqa: E501
116
+ :rtype: bool
117
+ """
118
+ return self._can_receive_images
119
+
120
+ @can_receive_images.setter
121
+ def can_receive_images(self, can_receive_images: 'bool'):
122
+ """Sets the can_receive_images of this V1ManagedModelAbilities.
123
+
124
+
125
+ :param can_receive_images: The can_receive_images of this V1ManagedModelAbilities. # noqa: E501
126
+ :type: bool
127
+ """
128
+
129
+ self._can_receive_images = can_receive_images
130
+
131
+ def to_dict(self) -> dict:
132
+ """Returns the model properties as a dict"""
133
+ result = {}
134
+
135
+ for attr, _ in six.iteritems(self.swagger_types):
136
+ value = getattr(self, attr)
137
+ if isinstance(value, list):
138
+ result[attr] = list(map(
139
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
140
+ value
141
+ ))
142
+ elif hasattr(value, "to_dict"):
143
+ result[attr] = value.to_dict()
144
+ elif isinstance(value, dict):
145
+ result[attr] = dict(map(
146
+ lambda item: (item[0], item[1].to_dict())
147
+ if hasattr(item[1], "to_dict") else item,
148
+ value.items()
149
+ ))
150
+ else:
151
+ result[attr] = value
152
+ if issubclass(V1ManagedModelAbilities, dict):
153
+ for key, value in self.items():
154
+ result[key] = value
155
+
156
+ return result
157
+
158
+ def to_str(self) -> str:
159
+ """Returns the string representation of the model"""
160
+ return pprint.pformat(self.to_dict())
161
+
162
+ def __repr__(self) -> str:
163
+ """For `print` and `pprint`"""
164
+ return self.to_str()
165
+
166
+ def __eq__(self, other: 'V1ManagedModelAbilities') -> bool:
167
+ """Returns true if both objects are equal"""
168
+ if not isinstance(other, V1ManagedModelAbilities):
169
+ return False
170
+
171
+ return self.__dict__ == other.__dict__
172
+
173
+ def __ne__(self, other: 'V1ManagedModelAbilities') -> bool:
174
+ """Returns true if both objects are not equal"""
175
+ return not self == other
@@ -54,7 +54,8 @@ class V1Model(object):
54
54
  'project_id': 'str',
55
55
  'tags': 'list[str]',
56
56
  'updated_at': 'datetime',
57
- 'user_id': 'str'
57
+ 'user_id': 'str',
58
+ 'visibility': 'V1ResourceVisibility'
58
59
  }
59
60
 
60
61
  attribute_map = {
@@ -71,10 +72,11 @@ class V1Model(object):
71
72
  'project_id': 'projectId',
72
73
  'tags': 'tags',
73
74
  'updated_at': 'updatedAt',
74
- 'user_id': 'userId'
75
+ 'user_id': 'userId',
76
+ 'visibility': 'visibility'
75
77
  }
76
78
 
77
- def __init__(self, categories: 'list[str]' =None, created_at: 'datetime' =None, description: 'str' =None, downloads: 'str' =None, id: 'str' =None, latest_version: 'V1ModelVersionArchive' =None, license: 'str' =None, model_metadata: 'dict(str, str)' =None, name: 'str' =None, private: 'bool' =None, project_id: 'str' =None, tags: 'list[str]' =None, updated_at: 'datetime' =None, user_id: 'str' =None): # noqa: E501
79
+ def __init__(self, categories: 'list[str]' =None, created_at: 'datetime' =None, description: 'str' =None, downloads: 'str' =None, id: 'str' =None, latest_version: 'V1ModelVersionArchive' =None, license: 'str' =None, model_metadata: 'dict(str, str)' =None, name: 'str' =None, private: 'bool' =None, project_id: 'str' =None, tags: 'list[str]' =None, updated_at: 'datetime' =None, user_id: 'str' =None, visibility: 'V1ResourceVisibility' =None): # noqa: E501
78
80
  """V1Model - a model defined in Swagger""" # noqa: E501
79
81
  self._categories = None
80
82
  self._created_at = None
@@ -90,6 +92,7 @@ class V1Model(object):
90
92
  self._tags = None
91
93
  self._updated_at = None
92
94
  self._user_id = None
95
+ self._visibility = None
93
96
  self.discriminator = None
94
97
  if categories is not None:
95
98
  self.categories = categories
@@ -119,6 +122,8 @@ class V1Model(object):
119
122
  self.updated_at = updated_at
120
123
  if user_id is not None:
121
124
  self.user_id = user_id
125
+ if visibility is not None:
126
+ self.visibility = visibility
122
127
 
123
128
  @property
124
129
  def categories(self) -> 'list[str]':
@@ -414,6 +419,27 @@ class V1Model(object):
414
419
 
415
420
  self._user_id = user_id
416
421
 
422
+ @property
423
+ def visibility(self) -> 'V1ResourceVisibility':
424
+ """Gets the visibility of this V1Model. # noqa: E501
425
+
426
+
427
+ :return: The visibility of this V1Model. # noqa: E501
428
+ :rtype: V1ResourceVisibility
429
+ """
430
+ return self._visibility
431
+
432
+ @visibility.setter
433
+ def visibility(self, visibility: 'V1ResourceVisibility'):
434
+ """Sets the visibility of this V1Model.
435
+
436
+
437
+ :param visibility: The visibility of this V1Model. # noqa: E501
438
+ :type: V1ResourceVisibility
439
+ """
440
+
441
+ self._visibility = visibility
442
+
417
443
  def to_dict(self) -> dict:
418
444
  """Returns the model properties as a dict"""
419
445
  result = {}
@@ -46,9 +46,11 @@ class V1MultiMachineJob(object):
46
46
  'desired_state': 'V1MultiMachineJobState',
47
47
  'id': 'str',
48
48
  'machines': 'int',
49
+ 'message': 'str',
49
50
  'name': 'str',
50
51
  'project_id': 'str',
51
52
  'spec': 'V1JobSpec',
53
+ 'state': 'V1MultiMachineJobState',
52
54
  'status': 'V1MultiMachineJobStatus',
53
55
  'updated_at': 'datetime',
54
56
  'user_id': 'str'
@@ -60,24 +62,28 @@ class V1MultiMachineJob(object):
60
62
  'desired_state': 'desiredState',
61
63
  'id': 'id',
62
64
  'machines': 'machines',
65
+ 'message': 'message',
63
66
  'name': 'name',
64
67
  'project_id': 'projectId',
65
68
  'spec': 'spec',
69
+ 'state': 'state',
66
70
  'status': 'status',
67
71
  'updated_at': 'updatedAt',
68
72
  'user_id': 'userId'
69
73
  }
70
74
 
71
- def __init__(self, cloudspace_id: 'str' =None, created_at: 'datetime' =None, desired_state: 'V1MultiMachineJobState' =None, id: 'str' =None, machines: 'int' =None, name: 'str' =None, project_id: 'str' =None, spec: 'V1JobSpec' =None, status: 'V1MultiMachineJobStatus' =None, updated_at: 'datetime' =None, user_id: 'str' =None): # noqa: E501
75
+ def __init__(self, cloudspace_id: 'str' =None, created_at: 'datetime' =None, desired_state: 'V1MultiMachineJobState' =None, id: 'str' =None, machines: 'int' =None, message: 'str' =None, name: 'str' =None, project_id: 'str' =None, spec: 'V1JobSpec' =None, state: 'V1MultiMachineJobState' =None, status: 'V1MultiMachineJobStatus' =None, updated_at: 'datetime' =None, user_id: 'str' =None): # noqa: E501
72
76
  """V1MultiMachineJob - a model defined in Swagger""" # noqa: E501
73
77
  self._cloudspace_id = None
74
78
  self._created_at = None
75
79
  self._desired_state = None
76
80
  self._id = None
77
81
  self._machines = None
82
+ self._message = None
78
83
  self._name = None
79
84
  self._project_id = None
80
85
  self._spec = None
86
+ self._state = None
81
87
  self._status = None
82
88
  self._updated_at = None
83
89
  self._user_id = None
@@ -92,12 +98,16 @@ class V1MultiMachineJob(object):
92
98
  self.id = id
93
99
  if machines is not None:
94
100
  self.machines = machines
101
+ if message is not None:
102
+ self.message = message
95
103
  if name is not None:
96
104
  self.name = name
97
105
  if project_id is not None:
98
106
  self.project_id = project_id
99
107
  if spec is not None:
100
108
  self.spec = spec
109
+ if state is not None:
110
+ self.state = state
101
111
  if status is not None:
102
112
  self.status = status
103
113
  if updated_at is not None:
@@ -210,6 +220,27 @@ class V1MultiMachineJob(object):
210
220
 
211
221
  self._machines = machines
212
222
 
223
+ @property
224
+ def message(self) -> 'str':
225
+ """Gets the message of this V1MultiMachineJob. # noqa: E501
226
+
227
+
228
+ :return: The message of this V1MultiMachineJob. # noqa: E501
229
+ :rtype: str
230
+ """
231
+ return self._message
232
+
233
+ @message.setter
234
+ def message(self, message: 'str'):
235
+ """Sets the message of this V1MultiMachineJob.
236
+
237
+
238
+ :param message: The message of this V1MultiMachineJob. # noqa: E501
239
+ :type: str
240
+ """
241
+
242
+ self._message = message
243
+
213
244
  @property
214
245
  def name(self) -> 'str':
215
246
  """Gets the name of this V1MultiMachineJob. # noqa: E501
@@ -273,6 +304,27 @@ class V1MultiMachineJob(object):
273
304
 
274
305
  self._spec = spec
275
306
 
307
+ @property
308
+ def state(self) -> 'V1MultiMachineJobState':
309
+ """Gets the state of this V1MultiMachineJob. # noqa: E501
310
+
311
+
312
+ :return: The state of this V1MultiMachineJob. # noqa: E501
313
+ :rtype: V1MultiMachineJobState
314
+ """
315
+ return self._state
316
+
317
+ @state.setter
318
+ def state(self, state: 'V1MultiMachineJobState'):
319
+ """Sets the state of this V1MultiMachineJob.
320
+
321
+
322
+ :param state: The state of this V1MultiMachineJob. # noqa: E501
323
+ :type: V1MultiMachineJobState
324
+ """
325
+
326
+ self._state = state
327
+
276
328
  @property
277
329
  def status(self) -> 'V1MultiMachineJobStatus':
278
330
  """Gets the status of this V1MultiMachineJob. # noqa: E501
@@ -39,11 +39,10 @@ class V1MultiMachineJobState(object):
39
39
  """
40
40
  UNSPECIFIED = "MultiMachineJob_STATE_UNSPECIFIED"
41
41
  RUNNING = "MultiMachineJob_STATE_RUNNING"
42
- STOP = "MultiMachineJob_STATE_STOP"
43
42
  STOPPED = "MultiMachineJob_STATE_STOPPED"
44
- DELETE = "MultiMachineJob_STATE_DELETE"
45
43
  DELETED = "MultiMachineJob_STATE_DELETED"
46
44
  FAILED = "MultiMachineJob_STATE_FAILED"
45
+ COMPLETED = "MultiMachineJob_STATE_COMPLETED"
47
46
  """
48
47
  Attributes:
49
48
  swagger_types (dict): The key is attribute name