lightning-sdk 2025.12.9__py3-none-any.whl → 2025.12.17__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 (78) hide show
  1. lightning_sdk/__version__.py +1 -1
  2. lightning_sdk/api/job_api.py +16 -0
  3. lightning_sdk/api/org_api.py +7 -0
  4. lightning_sdk/api/studio_api.py +28 -3
  5. lightning_sdk/api/teamspace_api.py +42 -5
  6. lightning_sdk/api/user_api.py +5 -0
  7. lightning_sdk/cli/legacy/download.py +2 -1
  8. lightning_sdk/cli/legacy/studios_menu.py +8 -1
  9. lightning_sdk/job/base.py +26 -4
  10. lightning_sdk/job/job.py +16 -5
  11. lightning_sdk/job/v1.py +7 -2
  12. lightning_sdk/job/v2.py +41 -1
  13. lightning_sdk/lightning_cloud/openapi/__init__.py +26 -1
  14. lightning_sdk/lightning_cloud/openapi/api/__init__.py +1 -0
  15. lightning_sdk/lightning_cloud/openapi/api/cloud_space_service_api.py +5 -1
  16. lightning_sdk/lightning_cloud/openapi/api/cluster_service_api.py +517 -0
  17. lightning_sdk/lightning_cloud/openapi/api/data_connection_service_api.py +5 -1
  18. lightning_sdk/lightning_cloud/openapi/api/file_system_service_api.py +11 -11
  19. lightning_sdk/lightning_cloud/openapi/api/kubernetes_virtual_machine_service_api.py +557 -0
  20. lightning_sdk/lightning_cloud/openapi/api/storage_service_api.py +5 -1
  21. lightning_sdk/lightning_cloud/openapi/models/__init__.py +25 -1
  22. lightning_sdk/lightning_cloud/openapi/models/cloud_space_environment_template_service_update_cloud_space_environment_template_body.py +27 -1
  23. lightning_sdk/lightning_cloud/openapi/models/cluster_service_add_container_registry_body.py +123 -0
  24. lightning_sdk/lightning_cloud/openapi/models/cluster_service_create_machine_body.py +27 -1
  25. lightning_sdk/lightning_cloud/openapi/models/cluster_service_refresh_container_registry_credentials_body.py +97 -0
  26. lightning_sdk/lightning_cloud/openapi/models/cluster_service_validate_container_registry_body.py +97 -0
  27. lightning_sdk/lightning_cloud/openapi/models/kubernetes_virtual_machine_service_create_kubernetes_virtual_machine_body.py +513 -0
  28. lightning_sdk/lightning_cloud/openapi/models/kubernetes_virtual_machine_service_update_kubernetes_virtual_machine_body.py +97 -0
  29. lightning_sdk/lightning_cloud/openapi/models/v1_add_container_registry_response.py +123 -0
  30. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_environment_template_config.py +27 -1
  31. lightning_sdk/lightning_cloud/openapi/models/v1_cloud_space_specialized_view.py +1 -0
  32. lightning_sdk/lightning_cloud/openapi/models/v1_container_registry.py +253 -0
  33. lightning_sdk/lightning_cloud/openapi/models/v1_container_registry_info.py +281 -0
  34. lightning_sdk/lightning_cloud/openapi/models/v1_container_registry_integration.py +123 -0
  35. lightning_sdk/lightning_cloud/openapi/models/v1_container_registry_status.py +105 -0
  36. lightning_sdk/lightning_cloud/openapi/models/v1_create_cloud_space_environment_template_request.py +27 -1
  37. lightning_sdk/lightning_cloud/openapi/models/v1_delete_container_registry_response.py +97 -0
  38. lightning_sdk/lightning_cloud/openapi/models/v1_delete_kubernetes_virtual_machine_response.py +97 -0
  39. lightning_sdk/lightning_cloud/openapi/models/v1_ecr_registry_config.py +175 -0
  40. lightning_sdk/lightning_cloud/openapi/models/v1_ecr_registry_config_input.py +123 -0
  41. lightning_sdk/lightning_cloud/openapi/models/v1_ecr_registry_details.py +201 -0
  42. lightning_sdk/lightning_cloud/openapi/models/v1_get_artifacts_page_response.py +29 -3
  43. lightning_sdk/lightning_cloud/openapi/models/v1_get_user_response.py +27 -1
  44. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_direct_v1.py +53 -1
  45. lightning_sdk/lightning_cloud/openapi/models/v1_kubernetes_virtual_machine.py +383 -0
  46. lightning_sdk/lightning_cloud/openapi/models/v1_kubevirt_config.py +305 -0
  47. lightning_sdk/lightning_cloud/openapi/models/v1_kubevirt_provider_configuration.py +227 -0
  48. lightning_sdk/lightning_cloud/openapi/models/v1_kubevirt_vm_configuration.py +149 -0
  49. lightning_sdk/lightning_cloud/openapi/models/v1_kubevirt_vm_resources.py +201 -0
  50. lightning_sdk/lightning_cloud/openapi/models/v1_list_container_registries_response.py +123 -0
  51. lightning_sdk/lightning_cloud/openapi/models/v1_list_kubernetes_virtual_machines_response.py +123 -0
  52. lightning_sdk/lightning_cloud/openapi/models/v1_machine.py +27 -1
  53. lightning_sdk/lightning_cloud/openapi/models/v1_node_metrics.py +27 -1
  54. lightning_sdk/lightning_cloud/openapi/models/v1_refresh_container_registry_credentials_response.py +123 -0
  55. lightning_sdk/lightning_cloud/openapi/models/v1_search_user.py +27 -1
  56. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +79 -1
  57. lightning_sdk/lightning_cloud/openapi/models/v1_validate_container_registry_response.py +149 -0
  58. lightning_sdk/lightning_cloud/openapi/rest.py +2 -2
  59. lightning_sdk/machine.py +1 -0
  60. lightning_sdk/mmt/base.py +26 -7
  61. lightning_sdk/mmt/mmt.py +11 -6
  62. lightning_sdk/mmt/v1.py +5 -2
  63. lightning_sdk/mmt/v2.py +5 -2
  64. lightning_sdk/organization.py +10 -1
  65. lightning_sdk/owner.py +4 -0
  66. lightning_sdk/pipeline/steps.py +3 -0
  67. lightning_sdk/plugin.py +2 -2
  68. lightning_sdk/studio.py +33 -2
  69. lightning_sdk/teamspace.py +44 -4
  70. lightning_sdk/user.py +22 -2
  71. lightning_sdk/utils/resolve.py +9 -7
  72. {lightning_sdk-2025.12.9.dist-info → lightning_sdk-2025.12.17.dist-info}/METADATA +1 -1
  73. {lightning_sdk-2025.12.9.dist-info → lightning_sdk-2025.12.17.dist-info}/RECORD +78 -53
  74. /lightning_sdk/lightning_cloud/openapi/models/{v1_list_filesystem_mm_ts_response.py → v1_list_filesystem_mmts_response.py} +0 -0
  75. {lightning_sdk-2025.12.9.dist-info → lightning_sdk-2025.12.17.dist-info}/LICENSE +0 -0
  76. {lightning_sdk-2025.12.9.dist-info → lightning_sdk-2025.12.17.dist-info}/WHEEL +0 -0
  77. {lightning_sdk-2025.12.9.dist-info → lightning_sdk-2025.12.17.dist-info}/entry_points.txt +0 -0
  78. {lightning_sdk-2025.12.9.dist-info → lightning_sdk-2025.12.17.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,201 @@
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 V1KubevirtVmResources(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
+ 'cpu': 'int',
45
+ 'gpus': 'int',
46
+ 'ram': 'str',
47
+ 'storage': 'int'
48
+ }
49
+
50
+ attribute_map = {
51
+ 'cpu': 'cpu',
52
+ 'gpus': 'gpus',
53
+ 'ram': 'ram',
54
+ 'storage': 'storage'
55
+ }
56
+
57
+ def __init__(self, cpu: 'int' =None, gpus: 'int' =None, ram: 'str' =None, storage: 'int' =None): # noqa: E501
58
+ """V1KubevirtVmResources - a model defined in Swagger""" # noqa: E501
59
+ self._cpu = None
60
+ self._gpus = None
61
+ self._ram = None
62
+ self._storage = None
63
+ self.discriminator = None
64
+ if cpu is not None:
65
+ self.cpu = cpu
66
+ if gpus is not None:
67
+ self.gpus = gpus
68
+ if ram is not None:
69
+ self.ram = ram
70
+ if storage is not None:
71
+ self.storage = storage
72
+
73
+ @property
74
+ def cpu(self) -> 'int':
75
+ """Gets the cpu of this V1KubevirtVmResources. # noqa: E501
76
+
77
+
78
+ :return: The cpu of this V1KubevirtVmResources. # noqa: E501
79
+ :rtype: int
80
+ """
81
+ return self._cpu
82
+
83
+ @cpu.setter
84
+ def cpu(self, cpu: 'int'):
85
+ """Sets the cpu of this V1KubevirtVmResources.
86
+
87
+
88
+ :param cpu: The cpu of this V1KubevirtVmResources. # noqa: E501
89
+ :type: int
90
+ """
91
+
92
+ self._cpu = cpu
93
+
94
+ @property
95
+ def gpus(self) -> 'int':
96
+ """Gets the gpus of this V1KubevirtVmResources. # noqa: E501
97
+
98
+
99
+ :return: The gpus of this V1KubevirtVmResources. # noqa: E501
100
+ :rtype: int
101
+ """
102
+ return self._gpus
103
+
104
+ @gpus.setter
105
+ def gpus(self, gpus: 'int'):
106
+ """Sets the gpus of this V1KubevirtVmResources.
107
+
108
+
109
+ :param gpus: The gpus of this V1KubevirtVmResources. # noqa: E501
110
+ :type: int
111
+ """
112
+
113
+ self._gpus = gpus
114
+
115
+ @property
116
+ def ram(self) -> 'str':
117
+ """Gets the ram of this V1KubevirtVmResources. # noqa: E501
118
+
119
+
120
+ :return: The ram of this V1KubevirtVmResources. # noqa: E501
121
+ :rtype: str
122
+ """
123
+ return self._ram
124
+
125
+ @ram.setter
126
+ def ram(self, ram: 'str'):
127
+ """Sets the ram of this V1KubevirtVmResources.
128
+
129
+
130
+ :param ram: The ram of this V1KubevirtVmResources. # noqa: E501
131
+ :type: str
132
+ """
133
+
134
+ self._ram = ram
135
+
136
+ @property
137
+ def storage(self) -> 'int':
138
+ """Gets the storage of this V1KubevirtVmResources. # noqa: E501
139
+
140
+
141
+ :return: The storage of this V1KubevirtVmResources. # noqa: E501
142
+ :rtype: int
143
+ """
144
+ return self._storage
145
+
146
+ @storage.setter
147
+ def storage(self, storage: 'int'):
148
+ """Sets the storage of this V1KubevirtVmResources.
149
+
150
+
151
+ :param storage: The storage of this V1KubevirtVmResources. # noqa: E501
152
+ :type: int
153
+ """
154
+
155
+ self._storage = storage
156
+
157
+ def to_dict(self) -> dict:
158
+ """Returns the model properties as a dict"""
159
+ result = {}
160
+
161
+ for attr, _ in six.iteritems(self.swagger_types):
162
+ value = getattr(self, attr)
163
+ if isinstance(value, list):
164
+ result[attr] = list(map(
165
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
166
+ value
167
+ ))
168
+ elif hasattr(value, "to_dict"):
169
+ result[attr] = value.to_dict()
170
+ elif isinstance(value, dict):
171
+ result[attr] = dict(map(
172
+ lambda item: (item[0], item[1].to_dict())
173
+ if hasattr(item[1], "to_dict") else item,
174
+ value.items()
175
+ ))
176
+ else:
177
+ result[attr] = value
178
+ if issubclass(V1KubevirtVmResources, dict):
179
+ for key, value in self.items():
180
+ result[key] = value
181
+
182
+ return result
183
+
184
+ def to_str(self) -> str:
185
+ """Returns the string representation of the model"""
186
+ return pprint.pformat(self.to_dict())
187
+
188
+ def __repr__(self) -> str:
189
+ """For `print` and `pprint`"""
190
+ return self.to_str()
191
+
192
+ def __eq__(self, other: 'V1KubevirtVmResources') -> bool:
193
+ """Returns true if both objects are equal"""
194
+ if not isinstance(other, V1KubevirtVmResources):
195
+ return False
196
+
197
+ return self.__dict__ == other.__dict__
198
+
199
+ def __ne__(self, other: 'V1KubevirtVmResources') -> bool:
200
+ """Returns true if both objects are not equal"""
201
+ return not self == other
@@ -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 V1ListContainerRegistriesResponse(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
+ 'registries': 'list[V1ContainerRegistryInfo]'
45
+ }
46
+
47
+ attribute_map = {
48
+ 'registries': 'registries'
49
+ }
50
+
51
+ def __init__(self, registries: 'list[V1ContainerRegistryInfo]' =None): # noqa: E501
52
+ """V1ListContainerRegistriesResponse - a model defined in Swagger""" # noqa: E501
53
+ self._registries = None
54
+ self.discriminator = None
55
+ if registries is not None:
56
+ self.registries = registries
57
+
58
+ @property
59
+ def registries(self) -> 'list[V1ContainerRegistryInfo]':
60
+ """Gets the registries of this V1ListContainerRegistriesResponse. # noqa: E501
61
+
62
+
63
+ :return: The registries of this V1ListContainerRegistriesResponse. # noqa: E501
64
+ :rtype: list[V1ContainerRegistryInfo]
65
+ """
66
+ return self._registries
67
+
68
+ @registries.setter
69
+ def registries(self, registries: 'list[V1ContainerRegistryInfo]'):
70
+ """Sets the registries of this V1ListContainerRegistriesResponse.
71
+
72
+
73
+ :param registries: The registries of this V1ListContainerRegistriesResponse. # noqa: E501
74
+ :type: list[V1ContainerRegistryInfo]
75
+ """
76
+
77
+ self._registries = registries
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(V1ListContainerRegistriesResponse, 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: 'V1ListContainerRegistriesResponse') -> bool:
115
+ """Returns true if both objects are equal"""
116
+ if not isinstance(other, V1ListContainerRegistriesResponse):
117
+ return False
118
+
119
+ return self.__dict__ == other.__dict__
120
+
121
+ def __ne__(self, other: 'V1ListContainerRegistriesResponse') -> bool:
122
+ """Returns true if both objects are not equal"""
123
+ return not self == other
@@ -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 V1ListKubernetesVirtualMachinesResponse(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
+ 'virtual_machines': 'list[V1KubernetesVirtualMachine]'
45
+ }
46
+
47
+ attribute_map = {
48
+ 'virtual_machines': 'virtualMachines'
49
+ }
50
+
51
+ def __init__(self, virtual_machines: 'list[V1KubernetesVirtualMachine]' =None): # noqa: E501
52
+ """V1ListKubernetesVirtualMachinesResponse - a model defined in Swagger""" # noqa: E501
53
+ self._virtual_machines = None
54
+ self.discriminator = None
55
+ if virtual_machines is not None:
56
+ self.virtual_machines = virtual_machines
57
+
58
+ @property
59
+ def virtual_machines(self) -> 'list[V1KubernetesVirtualMachine]':
60
+ """Gets the virtual_machines of this V1ListKubernetesVirtualMachinesResponse. # noqa: E501
61
+
62
+
63
+ :return: The virtual_machines of this V1ListKubernetesVirtualMachinesResponse. # noqa: E501
64
+ :rtype: list[V1KubernetesVirtualMachine]
65
+ """
66
+ return self._virtual_machines
67
+
68
+ @virtual_machines.setter
69
+ def virtual_machines(self, virtual_machines: 'list[V1KubernetesVirtualMachine]'):
70
+ """Sets the virtual_machines of this V1ListKubernetesVirtualMachinesResponse.
71
+
72
+
73
+ :param virtual_machines: The virtual_machines of this V1ListKubernetesVirtualMachinesResponse. # noqa: E501
74
+ :type: list[V1KubernetesVirtualMachine]
75
+ """
76
+
77
+ self._virtual_machines = virtual_machines
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(V1ListKubernetesVirtualMachinesResponse, 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: 'V1ListKubernetesVirtualMachinesResponse') -> bool:
115
+ """Returns true if both objects are equal"""
116
+ if not isinstance(other, V1ListKubernetesVirtualMachinesResponse):
117
+ return False
118
+
119
+ return self.__dict__ == other.__dict__
120
+
121
+ def __ne__(self, other: 'V1ListKubernetesVirtualMachinesResponse') -> bool:
122
+ """Returns true if both objects are not equal"""
123
+ return not self == other
@@ -60,6 +60,7 @@ class V1Machine(object):
60
60
  'resource_id': 'str',
61
61
  'resource_type': 'str',
62
62
  'resources': 'V1Resources',
63
+ 'ssh_username': 'str',
63
64
  'status': 'str',
64
65
  'unschedulable': 'bool',
65
66
  'updated_at': 'datetime',
@@ -86,13 +87,14 @@ class V1Machine(object):
86
87
  'resource_id': 'resourceId',
87
88
  'resource_type': 'resourceType',
88
89
  'resources': 'resources',
90
+ 'ssh_username': 'sshUsername',
89
91
  'status': 'status',
90
92
  'unschedulable': 'unschedulable',
91
93
  'updated_at': 'updatedAt',
92
94
  'warning_message': 'warningMessage'
93
95
  }
94
96
 
95
- def __init__(self, address: 'str' =None, cloud_space_name: 'str' =None, cluster_id: 'str' =None, created_at: 'datetime' =None, display_name: 'str' =None, id: 'str' =None, instance_type: 'str' =None, management_api_url: 'str' =None, name: 'str' =None, org_id: 'str' =None, project_id: 'str' =None, provider: 'str' =None, provider_instance_id: 'str' =None, provider_region: 'str' =None, provisioning_method: 'str' =None, ready_at: 'datetime' =None, resource_id: 'str' =None, resource_type: 'str' =None, resources: 'V1Resources' =None, status: 'str' =None, unschedulable: 'bool' =None, updated_at: 'datetime' =None, warning_message: 'str' =None): # noqa: E501
97
+ def __init__(self, address: 'str' =None, cloud_space_name: 'str' =None, cluster_id: 'str' =None, created_at: 'datetime' =None, display_name: 'str' =None, id: 'str' =None, instance_type: 'str' =None, management_api_url: 'str' =None, name: 'str' =None, org_id: 'str' =None, project_id: 'str' =None, provider: 'str' =None, provider_instance_id: 'str' =None, provider_region: 'str' =None, provisioning_method: 'str' =None, ready_at: 'datetime' =None, resource_id: 'str' =None, resource_type: 'str' =None, resources: 'V1Resources' =None, ssh_username: 'str' =None, status: 'str' =None, unschedulable: 'bool' =None, updated_at: 'datetime' =None, warning_message: 'str' =None): # noqa: E501
96
98
  """V1Machine - a model defined in Swagger""" # noqa: E501
97
99
  self._address = None
98
100
  self._cloud_space_name = None
@@ -113,6 +115,7 @@ class V1Machine(object):
113
115
  self._resource_id = None
114
116
  self._resource_type = None
115
117
  self._resources = None
118
+ self._ssh_username = None
116
119
  self._status = None
117
120
  self._unschedulable = None
118
121
  self._updated_at = None
@@ -156,6 +159,8 @@ class V1Machine(object):
156
159
  self.resource_type = resource_type
157
160
  if resources is not None:
158
161
  self.resources = resources
162
+ if ssh_username is not None:
163
+ self.ssh_username = ssh_username
159
164
  if status is not None:
160
165
  self.status = status
161
166
  if unschedulable is not None:
@@ -564,6 +569,27 @@ class V1Machine(object):
564
569
 
565
570
  self._resources = resources
566
571
 
572
+ @property
573
+ def ssh_username(self) -> 'str':
574
+ """Gets the ssh_username of this V1Machine. # noqa: E501
575
+
576
+
577
+ :return: The ssh_username of this V1Machine. # noqa: E501
578
+ :rtype: str
579
+ """
580
+ return self._ssh_username
581
+
582
+ @ssh_username.setter
583
+ def ssh_username(self, ssh_username: 'str'):
584
+ """Sets the ssh_username of this V1Machine.
585
+
586
+
587
+ :param ssh_username: The ssh_username of this V1Machine. # noqa: E501
588
+ :type: str
589
+ """
590
+
591
+ self._ssh_username = ssh_username
592
+
567
593
  @property
568
594
  def status(self) -> 'str':
569
595
  """Gets the status of this V1Machine. # noqa: E501
@@ -44,6 +44,7 @@ class V1NodeMetrics(object):
44
44
  'cpu_capacity_cores': 'float',
45
45
  'cpu_util': 'float',
46
46
  'filesystem': 'dict(str, V1FilesystemMetrics)',
47
+ 'kubelet_failure': 'bool',
47
48
  'max_gpu_temp_recorded': 'float',
48
49
  'max_power_per_gpu': 'float',
49
50
  'mem_total': 'str',
@@ -70,6 +71,7 @@ class V1NodeMetrics(object):
70
71
  'cpu_capacity_cores': 'cpuCapacityCores',
71
72
  'cpu_util': 'cpuUtil',
72
73
  'filesystem': 'filesystem',
74
+ 'kubelet_failure': 'kubeletFailure',
73
75
  'max_gpu_temp_recorded': 'maxGpuTempRecorded',
74
76
  'max_power_per_gpu': 'maxPowerPerGpu',
75
77
  'mem_total': 'memTotal',
@@ -92,11 +94,12 @@ class V1NodeMetrics(object):
92
94
  'unschedulable': 'unschedulable'
93
95
  }
94
96
 
95
- def __init__(self, cpu_capacity_cores: 'float' =None, cpu_util: 'float' =None, filesystem: 'dict(str, V1FilesystemMetrics)' =None, max_gpu_temp_recorded: 'float' =None, max_power_per_gpu: 'float' =None, mem_total: 'str' =None, mem_util: 'float' =None, node_name: 'str' =None, num_unschedulable_gpus: 'int' =None, nvlink_rx_gib: 'dict(str, float)' =None, nvlink_tx_gib: 'dict(str, float)' =None, pcie_rx_gib: 'dict(str, float)' =None, pcie_tx_gib: 'dict(str, float)' =None, per_gpu_errors: 'dict(str, int)' =None, per_gpu_mem_free: 'dict(str, int)' =None, per_gpu_mem_used: 'dict(str, int)' =None, per_gpu_power_usage_watts: 'dict(str, int)' =None, per_gpu_sm_active: 'dict(str, float)' =None, per_gpu_sm_occupancy: 'dict(str, float)' =None, per_gpu_temperature_c: 'dict(str, int)' =None, per_gpu_util: 'dict(str, float)' =None, timestamp: 'datetime' =None, unschedulable: 'bool' =None): # noqa: E501
97
+ def __init__(self, cpu_capacity_cores: 'float' =None, cpu_util: 'float' =None, filesystem: 'dict(str, V1FilesystemMetrics)' =None, kubelet_failure: 'bool' =None, max_gpu_temp_recorded: 'float' =None, max_power_per_gpu: 'float' =None, mem_total: 'str' =None, mem_util: 'float' =None, node_name: 'str' =None, num_unschedulable_gpus: 'int' =None, nvlink_rx_gib: 'dict(str, float)' =None, nvlink_tx_gib: 'dict(str, float)' =None, pcie_rx_gib: 'dict(str, float)' =None, pcie_tx_gib: 'dict(str, float)' =None, per_gpu_errors: 'dict(str, int)' =None, per_gpu_mem_free: 'dict(str, int)' =None, per_gpu_mem_used: 'dict(str, int)' =None, per_gpu_power_usage_watts: 'dict(str, int)' =None, per_gpu_sm_active: 'dict(str, float)' =None, per_gpu_sm_occupancy: 'dict(str, float)' =None, per_gpu_temperature_c: 'dict(str, int)' =None, per_gpu_util: 'dict(str, float)' =None, timestamp: 'datetime' =None, unschedulable: 'bool' =None): # noqa: E501
96
98
  """V1NodeMetrics - a model defined in Swagger""" # noqa: E501
97
99
  self._cpu_capacity_cores = None
98
100
  self._cpu_util = None
99
101
  self._filesystem = None
102
+ self._kubelet_failure = None
100
103
  self._max_gpu_temp_recorded = None
101
104
  self._max_power_per_gpu = None
102
105
  self._mem_total = None
@@ -124,6 +127,8 @@ class V1NodeMetrics(object):
124
127
  self.cpu_util = cpu_util
125
128
  if filesystem is not None:
126
129
  self.filesystem = filesystem
130
+ if kubelet_failure is not None:
131
+ self.kubelet_failure = kubelet_failure
127
132
  if max_gpu_temp_recorded is not None:
128
133
  self.max_gpu_temp_recorded = max_gpu_temp_recorded
129
134
  if max_power_per_gpu is not None:
@@ -228,6 +233,27 @@ class V1NodeMetrics(object):
228
233
 
229
234
  self._filesystem = filesystem
230
235
 
236
+ @property
237
+ def kubelet_failure(self) -> 'bool':
238
+ """Gets the kubelet_failure of this V1NodeMetrics. # noqa: E501
239
+
240
+
241
+ :return: The kubelet_failure of this V1NodeMetrics. # noqa: E501
242
+ :rtype: bool
243
+ """
244
+ return self._kubelet_failure
245
+
246
+ @kubelet_failure.setter
247
+ def kubelet_failure(self, kubelet_failure: 'bool'):
248
+ """Sets the kubelet_failure of this V1NodeMetrics.
249
+
250
+
251
+ :param kubelet_failure: The kubelet_failure of this V1NodeMetrics. # noqa: E501
252
+ :type: bool
253
+ """
254
+
255
+ self._kubelet_failure = kubelet_failure
256
+
231
257
  @property
232
258
  def max_gpu_temp_recorded(self) -> 'float':
233
259
  """Gets the max_gpu_temp_recorded of this V1NodeMetrics. # noqa: E501