lightning-sdk 2025.10.22__py3-none-any.whl → 2025.10.23__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 (39) hide show
  1. lightning_sdk/__init__.py +1 -1
  2. lightning_sdk/api/job_api.py +4 -1
  3. lightning_sdk/cli/entrypoint.py +3 -0
  4. lightning_sdk/cli/groups.py +7 -0
  5. lightning_sdk/cli/license/__init__.py +14 -0
  6. lightning_sdk/cli/license/get.py +15 -0
  7. lightning_sdk/cli/license/list.py +45 -0
  8. lightning_sdk/cli/license/set.py +13 -0
  9. lightning_sdk/cli/studio/create.py +1 -1
  10. lightning_sdk/cli/utils/handle_machine_and_gpus_args.py +1 -3
  11. lightning_sdk/job/base.py +7 -0
  12. lightning_sdk/job/job.py +8 -0
  13. lightning_sdk/job/v1.py +3 -0
  14. lightning_sdk/job/v2.py +4 -0
  15. lightning_sdk/lightning_cloud/openapi/__init__.py +6 -0
  16. lightning_sdk/lightning_cloud/openapi/api/auth_service_api.py +182 -0
  17. lightning_sdk/lightning_cloud/openapi/api/k8_s_cluster_service_api.py +117 -0
  18. lightning_sdk/lightning_cloud/openapi/models/__init__.py +6 -0
  19. lightning_sdk/lightning_cloud/openapi/models/update1.py +27 -1
  20. lightning_sdk/lightning_cloud/openapi/models/v1_data_connection.py +27 -1
  21. lightning_sdk/lightning_cloud/openapi/models/v1_external_search_user.py +27 -1
  22. lightning_sdk/lightning_cloud/openapi/models/v1_filesystem_metric.py +201 -0
  23. lightning_sdk/lightning_cloud/openapi/models/v1_list_filesystem_metrics_response.py +123 -0
  24. lightning_sdk/lightning_cloud/openapi/models/v1_list_platform_notifications_response.py +123 -0
  25. lightning_sdk/lightning_cloud/openapi/models/v1_platform_notification.py +279 -0
  26. lightning_sdk/lightning_cloud/openapi/models/v1_reset_api_key_request.py +97 -0
  27. lightning_sdk/lightning_cloud/openapi/models/v1_reset_api_key_response.py +123 -0
  28. lightning_sdk/lightning_cloud/openapi/models/v1_user_features.py +105 -131
  29. lightning_sdk/machine.py +3 -0
  30. lightning_sdk/pipeline/steps.py +1 -0
  31. lightning_sdk/studio.py +41 -11
  32. lightning_sdk/utils/config.py +18 -3
  33. lightning_sdk/utils/resolve.py +6 -1
  34. {lightning_sdk-2025.10.22.dist-info → lightning_sdk-2025.10.23.dist-info}/METADATA +1 -1
  35. {lightning_sdk-2025.10.22.dist-info → lightning_sdk-2025.10.23.dist-info}/RECORD +39 -29
  36. {lightning_sdk-2025.10.22.dist-info → lightning_sdk-2025.10.23.dist-info}/LICENSE +0 -0
  37. {lightning_sdk-2025.10.22.dist-info → lightning_sdk-2025.10.23.dist-info}/WHEEL +0 -0
  38. {lightning_sdk-2025.10.22.dist-info → lightning_sdk-2025.10.23.dist-info}/entry_points.txt +0 -0
  39. {lightning_sdk-2025.10.22.dist-info → lightning_sdk-2025.10.23.dist-info}/top_level.txt +0 -0
@@ -1674,6 +1674,123 @@ class K8SClusterServiceApi(object):
1674
1674
  _request_timeout=params.get('_request_timeout'),
1675
1675
  collection_formats=collection_formats)
1676
1676
 
1677
+ def k8_s_cluster_service_list_filesystem_metrics(self, project_id: 'str', cluster_id: 'str', **kwargs) -> 'V1ListFilesystemMetricsResponse': # noqa: E501
1678
+ """k8_s_cluster_service_list_filesystem_metrics # noqa: E501
1679
+
1680
+ This method makes a synchronous HTTP request by default. To make an
1681
+ asynchronous HTTP request, please pass async_req=True
1682
+ >>> thread = api.k8_s_cluster_service_list_filesystem_metrics(project_id, cluster_id, async_req=True)
1683
+ >>> result = thread.get()
1684
+
1685
+ :param async_req bool
1686
+ :param str project_id: (required)
1687
+ :param str cluster_id: (required)
1688
+ :param str fstype:
1689
+ :param str mountpoint:
1690
+ :param datetime start: Date range.
1691
+ :param datetime end:
1692
+ :return: V1ListFilesystemMetricsResponse
1693
+ If the method is called asynchronously,
1694
+ returns the request thread.
1695
+ """
1696
+ kwargs['_return_http_data_only'] = True
1697
+ if kwargs.get('async_req'):
1698
+ return self.k8_s_cluster_service_list_filesystem_metrics_with_http_info(project_id, cluster_id, **kwargs) # noqa: E501
1699
+ else:
1700
+ (data) = self.k8_s_cluster_service_list_filesystem_metrics_with_http_info(project_id, cluster_id, **kwargs) # noqa: E501
1701
+ return data
1702
+
1703
+ def k8_s_cluster_service_list_filesystem_metrics_with_http_info(self, project_id: 'str', cluster_id: 'str', **kwargs) -> 'V1ListFilesystemMetricsResponse': # noqa: E501
1704
+ """k8_s_cluster_service_list_filesystem_metrics # noqa: E501
1705
+
1706
+ This method makes a synchronous HTTP request by default. To make an
1707
+ asynchronous HTTP request, please pass async_req=True
1708
+ >>> thread = api.k8_s_cluster_service_list_filesystem_metrics_with_http_info(project_id, cluster_id, async_req=True)
1709
+ >>> result = thread.get()
1710
+
1711
+ :param async_req bool
1712
+ :param str project_id: (required)
1713
+ :param str cluster_id: (required)
1714
+ :param str fstype:
1715
+ :param str mountpoint:
1716
+ :param datetime start: Date range.
1717
+ :param datetime end:
1718
+ :return: V1ListFilesystemMetricsResponse
1719
+ If the method is called asynchronously,
1720
+ returns the request thread.
1721
+ """
1722
+
1723
+ all_params = ['project_id', 'cluster_id', 'fstype', 'mountpoint', 'start', 'end'] # noqa: E501
1724
+ all_params.append('async_req')
1725
+ all_params.append('_return_http_data_only')
1726
+ all_params.append('_preload_content')
1727
+ all_params.append('_request_timeout')
1728
+
1729
+ params = locals()
1730
+ for key, val in six.iteritems(params['kwargs']):
1731
+ if key not in all_params:
1732
+ raise TypeError(
1733
+ "Got an unexpected keyword argument '%s'"
1734
+ " to method k8_s_cluster_service_list_filesystem_metrics" % key
1735
+ )
1736
+ params[key] = val
1737
+ del params['kwargs']
1738
+ # verify the required parameter 'project_id' is set
1739
+ if ('project_id' not in params or
1740
+ params['project_id'] is None):
1741
+ raise ValueError("Missing the required parameter `project_id` when calling `k8_s_cluster_service_list_filesystem_metrics`") # noqa: E501
1742
+ # verify the required parameter 'cluster_id' is set
1743
+ if ('cluster_id' not in params or
1744
+ params['cluster_id'] is None):
1745
+ raise ValueError("Missing the required parameter `cluster_id` when calling `k8_s_cluster_service_list_filesystem_metrics`") # noqa: E501
1746
+
1747
+ collection_formats = {}
1748
+
1749
+ path_params = {}
1750
+ if 'project_id' in params:
1751
+ path_params['projectId'] = params['project_id'] # noqa: E501
1752
+ if 'cluster_id' in params:
1753
+ path_params['clusterId'] = params['cluster_id'] # noqa: E501
1754
+
1755
+ query_params = []
1756
+ if 'fstype' in params:
1757
+ query_params.append(('fstype', params['fstype'])) # noqa: E501
1758
+ if 'mountpoint' in params:
1759
+ query_params.append(('mountpoint', params['mountpoint'])) # noqa: E501
1760
+ if 'start' in params:
1761
+ query_params.append(('start', params['start'])) # noqa: E501
1762
+ if 'end' in params:
1763
+ query_params.append(('end', params['end'])) # noqa: E501
1764
+
1765
+ header_params = {}
1766
+
1767
+ form_params = []
1768
+ local_var_files = {}
1769
+
1770
+ body_params = None
1771
+ # HTTP header `Accept`
1772
+ header_params['Accept'] = self.api_client.select_header_accept(
1773
+ ['application/json']) # noqa: E501
1774
+
1775
+ # Authentication setting
1776
+ auth_settings = [] # noqa: E501
1777
+
1778
+ return self.api_client.call_api(
1779
+ '/v1/projects/{projectId}/clusters/{clusterId}/filesystem', 'GET',
1780
+ path_params,
1781
+ query_params,
1782
+ header_params,
1783
+ body=body_params,
1784
+ post_params=form_params,
1785
+ files=local_var_files,
1786
+ response_type='V1ListFilesystemMetricsResponse', # noqa: E501
1787
+ auth_settings=auth_settings,
1788
+ async_req=params.get('async_req'),
1789
+ _return_http_data_only=params.get('_return_http_data_only'),
1790
+ _preload_content=params.get('_preload_content', True),
1791
+ _request_timeout=params.get('_request_timeout'),
1792
+ collection_formats=collection_formats)
1793
+
1677
1794
  def k8_s_cluster_service_list_group_pod_metrics(self, project_id: 'str', cluster_id: 'str', **kwargs) -> 'V1ListGroupPodMetricsResponse': # noqa: E501
1678
1795
  """k8_s_cluster_service_list_group_pod_metrics # noqa: E501
1679
1796
 
@@ -500,6 +500,7 @@ from lightning_sdk.lightning_cloud.openapi.models.v1_filesystem_cloud_space impo
500
500
  from lightning_sdk.lightning_cloud.openapi.models.v1_filesystem_dataset import V1FilesystemDataset
501
501
  from lightning_sdk.lightning_cloud.openapi.models.v1_filesystem_job import V1FilesystemJob
502
502
  from lightning_sdk.lightning_cloud.openapi.models.v1_filesystem_mmt import V1FilesystemMMT
503
+ from lightning_sdk.lightning_cloud.openapi.models.v1_filesystem_metric import V1FilesystemMetric
503
504
  from lightning_sdk.lightning_cloud.openapi.models.v1_filesystem_metrics import V1FilesystemMetrics
504
505
  from lightning_sdk.lightning_cloud.openapi.models.v1_filesystem_slurm_job import V1FilesystemSlurmJob
505
506
  from lightning_sdk.lightning_cloud.openapi.models.v1_filesystem_snowflake_connection import V1FilesystemSnowflakeConnection
@@ -686,6 +687,7 @@ from lightning_sdk.lightning_cloud.openapi.models.v1_list_filesystem_cloud_space
686
687
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_filesystem_datasets_response import V1ListFilesystemDatasetsResponse
687
688
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_filesystem_jobs_response import V1ListFilesystemJobsResponse
688
689
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_filesystem_mm_ts_response import V1ListFilesystemMMTsResponse
690
+ from lightning_sdk.lightning_cloud.openapi.models.v1_list_filesystem_metrics_response import V1ListFilesystemMetricsResponse
689
691
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_filesystem_slurm_jobs_response import V1ListFilesystemSlurmJobsResponse
690
692
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_filesystem_snowflake_response import V1ListFilesystemSnowflakeResponse
691
693
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_gallery_components_response import V1ListGalleryComponentsResponse
@@ -731,6 +733,7 @@ from lightning_sdk.lightning_cloud.openapi.models.v1_list_org_roles_response imp
731
733
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_organization_cluster_encryption_keys_response import V1ListOrganizationClusterEncryptionKeysResponse
732
734
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_organizations_response import V1ListOrganizationsResponse
733
735
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_pipelines_response import V1ListPipelinesResponse
736
+ from lightning_sdk.lightning_cloud.openapi.models.v1_list_platform_notifications_response import V1ListPlatformNotificationsResponse
734
737
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_pod_metrics_response import V1ListPodMetricsResponse
735
738
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_profiler_captures_response import V1ListProfilerCapturesResponse
736
739
  from lightning_sdk.lightning_cloud.openapi.models.v1_list_project_artifacts_response import V1ListProjectArtifactsResponse
@@ -838,6 +841,7 @@ from lightning_sdk.lightning_cloud.openapi.models.v1_pipeline_step_status import
838
841
  from lightning_sdk.lightning_cloud.openapi.models.v1_pipeline_step_type import V1PipelineStepType
839
842
  from lightning_sdk.lightning_cloud.openapi.models.v1_pipeline_template import V1PipelineTemplate
840
843
  from lightning_sdk.lightning_cloud.openapi.models.v1_pipeline_template_visibility_type import V1PipelineTemplateVisibilityType
844
+ from lightning_sdk.lightning_cloud.openapi.models.v1_platform_notification import V1PlatformNotification
841
845
  from lightning_sdk.lightning_cloud.openapi.models.v1_plugin import V1Plugin
842
846
  from lightning_sdk.lightning_cloud.openapi.models.v1_plugins_list_response import V1PluginsListResponse
843
847
  from lightning_sdk.lightning_cloud.openapi.models.v1_pod_metrics import V1PodMetrics
@@ -892,6 +896,8 @@ from lightning_sdk.lightning_cloud.openapi.models.v1_request_cluster_access_resp
892
896
  from lightning_sdk.lightning_cloud.openapi.models.v1_request_verification_code_response import V1RequestVerificationCodeResponse
893
897
  from lightning_sdk.lightning_cloud.openapi.models.v1_required_balance_reason import V1RequiredBalanceReason
894
898
  from lightning_sdk.lightning_cloud.openapi.models.v1_reservation_details import V1ReservationDetails
899
+ from lightning_sdk.lightning_cloud.openapi.models.v1_reset_api_key_request import V1ResetAPIKeyRequest
900
+ from lightning_sdk.lightning_cloud.openapi.models.v1_reset_api_key_response import V1ResetAPIKeyResponse
895
901
  from lightning_sdk.lightning_cloud.openapi.models.v1_resource_tag import V1ResourceTag
896
902
  from lightning_sdk.lightning_cloud.openapi.models.v1_resource_visibility import V1ResourceVisibility
897
903
  from lightning_sdk.lightning_cloud.openapi.models.v1_resources import V1Resources
@@ -41,6 +41,7 @@ class Update1(object):
41
41
  and the value is json key in definition.
42
42
  """
43
43
  swagger_types = {
44
+ 'auto_increase_enabled': 'bool',
44
45
  'aws': 'V1AwsDataConnection',
45
46
  'efs': 'V1EfsConfig',
46
47
  'gcp': 'V1GcpDataConnection',
@@ -54,6 +55,7 @@ class Update1(object):
54
55
  }
55
56
 
56
57
  attribute_map = {
58
+ 'auto_increase_enabled': 'autoIncreaseEnabled',
57
59
  'aws': 'aws',
58
60
  'efs': 'efs',
59
61
  'gcp': 'gcp',
@@ -66,8 +68,9 @@ class Update1(object):
66
68
  'writable': 'writable'
67
69
  }
68
70
 
69
- def __init__(self, aws: 'V1AwsDataConnection' =None, efs: 'V1EfsConfig' =None, gcp: 'V1GcpDataConnection' =None, gcs_folder: 'V1GCSFolderDataConnection' =None, name: 'str' =None, r2: 'V1R2DataConnection' =None, run_cmds: 'list[str]' =None, s3_folder: 'V1S3FolderDataConnection' =None, snowflake: 'V1SnowflakeDataConnection' =None, writable: 'bool' =None): # noqa: E501
71
+ def __init__(self, auto_increase_enabled: 'bool' =None, aws: 'V1AwsDataConnection' =None, efs: 'V1EfsConfig' =None, gcp: 'V1GcpDataConnection' =None, gcs_folder: 'V1GCSFolderDataConnection' =None, name: 'str' =None, r2: 'V1R2DataConnection' =None, run_cmds: 'list[str]' =None, s3_folder: 'V1S3FolderDataConnection' =None, snowflake: 'V1SnowflakeDataConnection' =None, writable: 'bool' =None): # noqa: E501
70
72
  """Update1 - a model defined in Swagger""" # noqa: E501
73
+ self._auto_increase_enabled = None
71
74
  self._aws = None
72
75
  self._efs = None
73
76
  self._gcp = None
@@ -79,6 +82,8 @@ class Update1(object):
79
82
  self._snowflake = None
80
83
  self._writable = None
81
84
  self.discriminator = None
85
+ if auto_increase_enabled is not None:
86
+ self.auto_increase_enabled = auto_increase_enabled
82
87
  if aws is not None:
83
88
  self.aws = aws
84
89
  if efs is not None:
@@ -100,6 +105,27 @@ class Update1(object):
100
105
  if writable is not None:
101
106
  self.writable = writable
102
107
 
108
+ @property
109
+ def auto_increase_enabled(self) -> 'bool':
110
+ """Gets the auto_increase_enabled of this Update1. # noqa: E501
111
+
112
+
113
+ :return: The auto_increase_enabled of this Update1. # noqa: E501
114
+ :rtype: bool
115
+ """
116
+ return self._auto_increase_enabled
117
+
118
+ @auto_increase_enabled.setter
119
+ def auto_increase_enabled(self, auto_increase_enabled: 'bool'):
120
+ """Sets the auto_increase_enabled of this Update1.
121
+
122
+
123
+ :param auto_increase_enabled: The auto_increase_enabled of this Update1. # noqa: E501
124
+ :type: bool
125
+ """
126
+
127
+ self._auto_increase_enabled = auto_increase_enabled
128
+
103
129
  @property
104
130
  def aws(self) -> 'V1AwsDataConnection':
105
131
  """Gets the aws of this Update1. # noqa: E501
@@ -56,6 +56,7 @@ class V1DataConnection(object):
56
56
  'is_billable_folder': 'bool',
57
57
  'is_cache': 'bool',
58
58
  'is_managed': 'bool',
59
+ 'is_public': 'bool',
59
60
  'lock_out': 'bool',
60
61
  'lustre': 'V1LustreDataConnection',
61
62
  'name': 'str',
@@ -91,6 +92,7 @@ class V1DataConnection(object):
91
92
  'is_billable_folder': 'isBillableFolder',
92
93
  'is_cache': 'isCache',
93
94
  'is_managed': 'isManaged',
95
+ 'is_public': 'isPublic',
94
96
  'lock_out': 'lockOut',
95
97
  'lustre': 'lustre',
96
98
  'name': 'name',
@@ -110,7 +112,7 @@ class V1DataConnection(object):
110
112
  'writable': 'writable'
111
113
  }
112
114
 
113
- def __init__(self, access_cluster_ids: 'list[str]' =None, accessible: 'bool' =None, aws: 'V1AwsDataConnection' =None, cluster_id: 'str' =None, created_at: 'datetime' =None, efs: 'V1EfsConfig' =None, error: 'str' =None, filestore: 'V1FilestoreDataConnection' =None, gcp: 'V1GcpDataConnection' =None, gcs_folder: 'V1GCSFolderDataConnection' =None, id: 'str' =None, index: 'V1Index' =None, is_billable_folder: 'bool' =None, is_cache: 'bool' =None, is_managed: 'bool' =None, lock_out: 'bool' =None, lustre: 'V1LustreDataConnection' =None, name: 'str' =None, number_of_files: 'str' =None, project_id: 'str' =None, r2: 'V1R2DataConnection' =None, run_cmds: 'list[str]' =None, s3_folder: 'V1S3FolderDataConnection' =None, snowflake: 'V1SnowflakeDataConnection' =None, state: 'V1DataConnectionState' =None, total_daily_read_bytes: 'str' =None, total_daily_write_bytes: 'str' =None, total_size_bytes: 'str' =None, type: 'str' =None, updated_at: 'datetime' =None, weka: 'V1WekaDataConnection' =None, writable: 'bool' =None): # noqa: E501
115
+ def __init__(self, access_cluster_ids: 'list[str]' =None, accessible: 'bool' =None, aws: 'V1AwsDataConnection' =None, cluster_id: 'str' =None, created_at: 'datetime' =None, efs: 'V1EfsConfig' =None, error: 'str' =None, filestore: 'V1FilestoreDataConnection' =None, gcp: 'V1GcpDataConnection' =None, gcs_folder: 'V1GCSFolderDataConnection' =None, id: 'str' =None, index: 'V1Index' =None, is_billable_folder: 'bool' =None, is_cache: 'bool' =None, is_managed: 'bool' =None, is_public: 'bool' =None, lock_out: 'bool' =None, lustre: 'V1LustreDataConnection' =None, name: 'str' =None, number_of_files: 'str' =None, project_id: 'str' =None, r2: 'V1R2DataConnection' =None, run_cmds: 'list[str]' =None, s3_folder: 'V1S3FolderDataConnection' =None, snowflake: 'V1SnowflakeDataConnection' =None, state: 'V1DataConnectionState' =None, total_daily_read_bytes: 'str' =None, total_daily_write_bytes: 'str' =None, total_size_bytes: 'str' =None, type: 'str' =None, updated_at: 'datetime' =None, weka: 'V1WekaDataConnection' =None, writable: 'bool' =None): # noqa: E501
114
116
  """V1DataConnection - a model defined in Swagger""" # noqa: E501
115
117
  self._access_cluster_ids = None
116
118
  self._accessible = None
@@ -127,6 +129,7 @@ class V1DataConnection(object):
127
129
  self._is_billable_folder = None
128
130
  self._is_cache = None
129
131
  self._is_managed = None
132
+ self._is_public = None
130
133
  self._lock_out = None
131
134
  self._lustre = None
132
135
  self._name = None
@@ -175,6 +178,8 @@ class V1DataConnection(object):
175
178
  self.is_cache = is_cache
176
179
  if is_managed is not None:
177
180
  self.is_managed = is_managed
181
+ if is_public is not None:
182
+ self.is_public = is_public
178
183
  if lock_out is not None:
179
184
  self.lock_out = lock_out
180
185
  if lustre is not None:
@@ -525,6 +530,27 @@ class V1DataConnection(object):
525
530
 
526
531
  self._is_managed = is_managed
527
532
 
533
+ @property
534
+ def is_public(self) -> 'bool':
535
+ """Gets the is_public of this V1DataConnection. # noqa: E501
536
+
537
+
538
+ :return: The is_public of this V1DataConnection. # noqa: E501
539
+ :rtype: bool
540
+ """
541
+ return self._is_public
542
+
543
+ @is_public.setter
544
+ def is_public(self, is_public: 'bool'):
545
+ """Sets the is_public of this V1DataConnection.
546
+
547
+
548
+ :param is_public: The is_public of this V1DataConnection. # noqa: E501
549
+ :type: bool
550
+ """
551
+
552
+ self._is_public = is_public
553
+
528
554
  @property
529
555
  def lock_out(self) -> 'bool':
530
556
  """Gets the lock_out of this V1DataConnection. # noqa: E501
@@ -43,6 +43,7 @@ class V1ExternalSearchUser(object):
43
43
  swagger_types = {
44
44
  'first_name': 'str',
45
45
  'id': 'str',
46
+ 'internal': 'bool',
46
47
  'last_name': 'str',
47
48
  'organization': 'str',
48
49
  'picture_url': 'str',
@@ -54,6 +55,7 @@ class V1ExternalSearchUser(object):
54
55
  attribute_map = {
55
56
  'first_name': 'firstName',
56
57
  'id': 'id',
58
+ 'internal': 'internal',
57
59
  'last_name': 'lastName',
58
60
  'organization': 'organization',
59
61
  'picture_url': 'pictureUrl',
@@ -62,10 +64,11 @@ class V1ExternalSearchUser(object):
62
64
  'username': 'username'
63
65
  }
64
66
 
65
- def __init__(self, first_name: 'str' =None, id: 'str' =None, last_name: 'str' =None, organization: 'str' =None, picture_url: 'str' =None, role: 'str' =None, sb: 'bool' =None, username: 'str' =None): # noqa: E501
67
+ def __init__(self, first_name: 'str' =None, id: 'str' =None, internal: 'bool' =None, last_name: 'str' =None, organization: 'str' =None, picture_url: 'str' =None, role: 'str' =None, sb: 'bool' =None, username: 'str' =None): # noqa: E501
66
68
  """V1ExternalSearchUser - a model defined in Swagger""" # noqa: E501
67
69
  self._first_name = None
68
70
  self._id = None
71
+ self._internal = None
69
72
  self._last_name = None
70
73
  self._organization = None
71
74
  self._picture_url = None
@@ -77,6 +80,8 @@ class V1ExternalSearchUser(object):
77
80
  self.first_name = first_name
78
81
  if id is not None:
79
82
  self.id = id
83
+ if internal is not None:
84
+ self.internal = internal
80
85
  if last_name is not None:
81
86
  self.last_name = last_name
82
87
  if organization is not None:
@@ -132,6 +137,27 @@ class V1ExternalSearchUser(object):
132
137
 
133
138
  self._id = id
134
139
 
140
+ @property
141
+ def internal(self) -> 'bool':
142
+ """Gets the internal of this V1ExternalSearchUser. # noqa: E501
143
+
144
+
145
+ :return: The internal of this V1ExternalSearchUser. # noqa: E501
146
+ :rtype: bool
147
+ """
148
+ return self._internal
149
+
150
+ @internal.setter
151
+ def internal(self, internal: 'bool'):
152
+ """Sets the internal of this V1ExternalSearchUser.
153
+
154
+
155
+ :param internal: The internal of this V1ExternalSearchUser. # noqa: E501
156
+ :type: bool
157
+ """
158
+
159
+ self._internal = internal
160
+
135
161
  @property
136
162
  def last_name(self) -> 'str':
137
163
  """Gets the last_name of this V1ExternalSearchUser. # noqa: E501
@@ -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 V1FilesystemMetric(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
+ 'mountpoint': 'str',
45
+ 'timestamp': 'datetime',
46
+ 'total': 'float',
47
+ 'utilisation': 'float'
48
+ }
49
+
50
+ attribute_map = {
51
+ 'mountpoint': 'mountpoint',
52
+ 'timestamp': 'timestamp',
53
+ 'total': 'total',
54
+ 'utilisation': 'utilisation'
55
+ }
56
+
57
+ def __init__(self, mountpoint: 'str' =None, timestamp: 'datetime' =None, total: 'float' =None, utilisation: 'float' =None): # noqa: E501
58
+ """V1FilesystemMetric - a model defined in Swagger""" # noqa: E501
59
+ self._mountpoint = None
60
+ self._timestamp = None
61
+ self._total = None
62
+ self._utilisation = None
63
+ self.discriminator = None
64
+ if mountpoint is not None:
65
+ self.mountpoint = mountpoint
66
+ if timestamp is not None:
67
+ self.timestamp = timestamp
68
+ if total is not None:
69
+ self.total = total
70
+ if utilisation is not None:
71
+ self.utilisation = utilisation
72
+
73
+ @property
74
+ def mountpoint(self) -> 'str':
75
+ """Gets the mountpoint of this V1FilesystemMetric. # noqa: E501
76
+
77
+
78
+ :return: The mountpoint of this V1FilesystemMetric. # noqa: E501
79
+ :rtype: str
80
+ """
81
+ return self._mountpoint
82
+
83
+ @mountpoint.setter
84
+ def mountpoint(self, mountpoint: 'str'):
85
+ """Sets the mountpoint of this V1FilesystemMetric.
86
+
87
+
88
+ :param mountpoint: The mountpoint of this V1FilesystemMetric. # noqa: E501
89
+ :type: str
90
+ """
91
+
92
+ self._mountpoint = mountpoint
93
+
94
+ @property
95
+ def timestamp(self) -> 'datetime':
96
+ """Gets the timestamp of this V1FilesystemMetric. # noqa: E501
97
+
98
+
99
+ :return: The timestamp of this V1FilesystemMetric. # noqa: E501
100
+ :rtype: datetime
101
+ """
102
+ return self._timestamp
103
+
104
+ @timestamp.setter
105
+ def timestamp(self, timestamp: 'datetime'):
106
+ """Sets the timestamp of this V1FilesystemMetric.
107
+
108
+
109
+ :param timestamp: The timestamp of this V1FilesystemMetric. # noqa: E501
110
+ :type: datetime
111
+ """
112
+
113
+ self._timestamp = timestamp
114
+
115
+ @property
116
+ def total(self) -> 'float':
117
+ """Gets the total of this V1FilesystemMetric. # noqa: E501
118
+
119
+
120
+ :return: The total of this V1FilesystemMetric. # noqa: E501
121
+ :rtype: float
122
+ """
123
+ return self._total
124
+
125
+ @total.setter
126
+ def total(self, total: 'float'):
127
+ """Sets the total of this V1FilesystemMetric.
128
+
129
+
130
+ :param total: The total of this V1FilesystemMetric. # noqa: E501
131
+ :type: float
132
+ """
133
+
134
+ self._total = total
135
+
136
+ @property
137
+ def utilisation(self) -> 'float':
138
+ """Gets the utilisation of this V1FilesystemMetric. # noqa: E501
139
+
140
+
141
+ :return: The utilisation of this V1FilesystemMetric. # noqa: E501
142
+ :rtype: float
143
+ """
144
+ return self._utilisation
145
+
146
+ @utilisation.setter
147
+ def utilisation(self, utilisation: 'float'):
148
+ """Sets the utilisation of this V1FilesystemMetric.
149
+
150
+
151
+ :param utilisation: The utilisation of this V1FilesystemMetric. # noqa: E501
152
+ :type: float
153
+ """
154
+
155
+ self._utilisation = utilisation
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(V1FilesystemMetric, 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: 'V1FilesystemMetric') -> bool:
193
+ """Returns true if both objects are equal"""
194
+ if not isinstance(other, V1FilesystemMetric):
195
+ return False
196
+
197
+ return self.__dict__ == other.__dict__
198
+
199
+ def __ne__(self, other: 'V1FilesystemMetric') -> bool:
200
+ """Returns true if both objects are not equal"""
201
+ return not self == other