anyscale 0.26.64__py3-none-any.whl → 0.26.65__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 (49) hide show
  1. anyscale/_private/docgen/__main__.py +23 -4
  2. anyscale/_private/docgen/generator.py +127 -34
  3. anyscale/_private/docgen/generator_legacy.py +35 -12
  4. anyscale/client/README.md +37 -0
  5. anyscale/client/openapi_client/__init__.py +26 -0
  6. anyscale/client/openapi_client/api/default_api.py +1423 -97
  7. anyscale/client/openapi_client/models/__init__.py +26 -0
  8. anyscale/client/openapi_client/models/connection_type.py +99 -0
  9. anyscale/client/openapi_client/models/create_experimental_workspace.py +29 -1
  10. anyscale/client/openapi_client/models/data_catalog.py +281 -0
  11. anyscale/client/openapi_client/models/data_catalog_connection.py +308 -0
  12. anyscale/client/openapi_client/models/data_catalog_connection_status.py +102 -0
  13. anyscale/client/openapi_client/models/data_catalog_provider.py +101 -0
  14. anyscale/client/openapi_client/models/databricks_connection_config.py +152 -0
  15. anyscale/client/openapi_client/models/databricks_connection_info.py +229 -0
  16. anyscale/client/openapi_client/models/databricks_connection_response.py +148 -0
  17. anyscale/client/openapi_client/models/databricks_register_request.py +187 -0
  18. anyscale/client/openapi_client/models/databricksconnectioninfo_response.py +121 -0
  19. anyscale/client/openapi_client/models/databricksconnectionresponse_response.py +121 -0
  20. anyscale/client/openapi_client/models/datacatalog_list_response.py +147 -0
  21. anyscale/client/openapi_client/models/datacatalogconnection_list_response.py +147 -0
  22. anyscale/client/openapi_client/models/decorated_session.py +29 -1
  23. anyscale/client/openapi_client/models/domain_verification.py +181 -0
  24. anyscale/client/openapi_client/models/list_databricks_connections.py +121 -0
  25. anyscale/client/openapi_client/models/o_auth_connection_response.py +229 -0
  26. anyscale/client/openapi_client/models/oauth_auth_url_response.py +121 -0
  27. anyscale/client/openapi_client/models/oauthconnectionresponse_response.py +121 -0
  28. anyscale/client/openapi_client/models/sso_config.py +148 -0
  29. anyscale/client/openapi_client/models/sso_connection.py +148 -0
  30. anyscale/client/openapi_client/models/sso_connection_state.py +100 -0
  31. anyscale/client/openapi_client/models/ssoconfig_response.py +121 -0
  32. anyscale/client/openapi_client/models/update_workspace_template.py +346 -0
  33. anyscale/client/openapi_client/models/usage_by_cluster_type.py +174 -0
  34. anyscale/client/openapi_client/models/usagebyclustertype_list_response.py +147 -0
  35. anyscale/client/openapi_client/models/validation_status.py +101 -0
  36. anyscale/commands/cloud_commands.py +310 -206
  37. anyscale/controllers/cloud_controller.py +174 -240
  38. anyscale/controllers/cloud_functional_verification_controller.py +6 -3
  39. anyscale/sdk/anyscale_client/models/session.py +31 -3
  40. anyscale/util.py +1 -1
  41. anyscale/version.py +1 -1
  42. {anyscale-0.26.64.dist-info → anyscale-0.26.65.dist-info}/METADATA +1 -1
  43. {anyscale-0.26.64.dist-info → anyscale-0.26.65.dist-info}/RECORD +48 -23
  44. anyscale/commands/cloud_commands_util.py +0 -10
  45. {anyscale-0.26.64.dist-info → anyscale-0.26.65.dist-info}/WHEEL +0 -0
  46. {anyscale-0.26.64.dist-info → anyscale-0.26.65.dist-info}/entry_points.txt +0 -0
  47. {anyscale-0.26.64.dist-info → anyscale-0.26.65.dist-info}/licenses/LICENSE +0 -0
  48. {anyscale-0.26.64.dist-info → anyscale-0.26.65.dist-info}/licenses/NOTICE +0 -0
  49. {anyscale-0.26.64.dist-info → anyscale-0.26.65.dist-info}/top_level.txt +0 -0
@@ -149,6 +149,7 @@ from openapi_client.models.compute_template_config import ComputeTemplateConfig
149
149
  from openapi_client.models.compute_template_query import ComputeTemplateQuery
150
150
  from openapi_client.models.computetemplate_response import ComputetemplateResponse
151
151
  from openapi_client.models.computetemplateconfig_response import ComputetemplateconfigResponse
152
+ from openapi_client.models.connection_type import ConnectionType
152
153
  from openapi_client.models.create_aioa_cloud_waitlist import CreateAioaCloudWaitlist
153
154
  from openapi_client.models.create_analytics_event import CreateAnalyticsEvent
154
155
  from openapi_client.models.create_app_config import CreateAppConfig
@@ -204,6 +205,18 @@ from openapi_client.models.credit_type import CreditType
204
205
  from openapi_client.models.credits_v2 import CreditsV2
205
206
  from openapi_client.models.customer_alert_status import CustomerAlertStatus
206
207
  from openapi_client.models.dashboard_panel import DashboardPanel
208
+ from openapi_client.models.data_catalog import DataCatalog
209
+ from openapi_client.models.data_catalog_connection import DataCatalogConnection
210
+ from openapi_client.models.data_catalog_connection_status import DataCatalogConnectionStatus
211
+ from openapi_client.models.data_catalog_provider import DataCatalogProvider
212
+ from openapi_client.models.databricks_connection_config import DatabricksConnectionConfig
213
+ from openapi_client.models.databricks_connection_info import DatabricksConnectionInfo
214
+ from openapi_client.models.databricks_connection_response import DatabricksConnectionResponse
215
+ from openapi_client.models.databricks_register_request import DatabricksRegisterRequest
216
+ from openapi_client.models.databricksconnectioninfo_response import DatabricksconnectioninfoResponse
217
+ from openapi_client.models.databricksconnectionresponse_response import DatabricksconnectionresponseResponse
218
+ from openapi_client.models.datacatalog_list_response import DatacatalogListResponse
219
+ from openapi_client.models.datacatalogconnection_list_response import DatacatalogconnectionListResponse
207
220
  from openapi_client.models.dataplane_services import DataplaneServices
208
221
  from openapi_client.models.dataset import Dataset
209
222
  from openapi_client.models.dataset_dag import DatasetDag
@@ -283,6 +296,7 @@ from openapi_client.models.describemachinepoolresponse_response import Describem
283
296
  from openapi_client.models.describesystemworkloadresponse_response import DescribesystemworkloadresponseResponse
284
297
  from openapi_client.models.detach_machine_pool_from_cloud_request import DetachMachinePoolFromCloudRequest
285
298
  from openapi_client.models.detachmachinepoolfromcloudresponse_response import DetachmachinepoolfromcloudresponseResponse
299
+ from openapi_client.models.domain_verification import DomainVerification
286
300
  from openapi_client.models.editable_cloud_resource import EditableCloudResource
287
301
  from openapi_client.models.editable_cloud_resource_gcp import EditableCloudResourceGCP
288
302
  from openapi_client.models.email_verification_request import EmailVerificationRequest
@@ -359,6 +373,7 @@ from openapi_client.models.kubernetes_manager_registration_response import Kuber
359
373
  from openapi_client.models.kubernetesmanagerregistrationresponse_response import KubernetesmanagerregistrationresponseResponse
360
374
  from openapi_client.models.lb_resource import LBResource
361
375
  from openapi_client.models.lbresource_response import LbresourceResponse
376
+ from openapi_client.models.list_databricks_connections import ListDatabricksConnections
362
377
  from openapi_client.models.list_machine_pools_response import ListMachinePoolsResponse
363
378
  from openapi_client.models.list_machines_response import ListMachinesResponse
364
379
  from openapi_client.models.list_ray_sessions_response import ListRaySessionsResponse
@@ -429,6 +444,9 @@ from openapi_client.models.nodemetricsresponse_response import Nodemetricsrespon
429
444
  from openapi_client.models.notification_channel_email_config import NotificationChannelEmailConfig
430
445
  from openapi_client.models.notification_channel_slack_config import NotificationChannelSlackConfig
431
446
  from openapi_client.models.notification_channel_webhook_config import NotificationChannelWebhookConfig
447
+ from openapi_client.models.o_auth_connection_response import OAuthConnectionResponse
448
+ from openapi_client.models.oauth_auth_url_response import OauthAuthUrlResponse
449
+ from openapi_client.models.oauthconnectionresponse_response import OauthconnectionresponseResponse
432
450
  from openapi_client.models.object_storage import ObjectStorage
433
451
  from openapi_client.models.operation_error import OperationError
434
452
  from openapi_client.models.operation_progress import OperationProgress
@@ -525,6 +543,9 @@ from openapi_client.models.rollout_strategy import RolloutStrategy
525
543
  from openapi_client.models.run_attempt_status import RunAttemptStatus
526
544
  from openapi_client.models.run_status import RunStatus
527
545
  from openapi_client.models.s3_download_location import S3DownloadLocation
546
+ from openapi_client.models.sso_config import SSOConfig
547
+ from openapi_client.models.sso_connection import SSOConnection
548
+ from openapi_client.models.sso_connection_state import SSOConnectionState
528
549
  from openapi_client.models.sso_login_info import SSOLoginInfo
529
550
  from openapi_client.models.sso_mode import SSOMode
530
551
  from openapi_client.models.supportedbaseimagesenum import SUPPORTEDBASEIMAGESENUM
@@ -568,6 +589,7 @@ from openapi_client.models.sessionsshkey_response import SessionsshkeyResponse
568
589
  from openapi_client.models.show_otp_source_return_api_model import ShowOTPSourceReturnApiModel
569
590
  from openapi_client.models.showotpsourcereturnapimodel_response import ShowotpsourcereturnapimodelResponse
570
591
  from openapi_client.models.sort_order import SortOrder
592
+ from openapi_client.models.ssoconfig_response import SsoconfigResponse
571
593
  from openapi_client.models.ssologininfo_response import SsologininfoResponse
572
594
  from openapi_client.models.start_session_options import StartSessionOptions
573
595
  from openapi_client.models.stop_session_options import StopSessionOptions
@@ -625,17 +647,20 @@ from openapi_client.models.update_organization_collaborator import UpdateOrganiz
625
647
  from openapi_client.models.update_payment_info import UpdatePaymentInfo
626
648
  from openapi_client.models.update_project_collaborator import UpdateProjectCollaborator
627
649
  from openapi_client.models.update_resource_quota import UpdateResourceQuota
650
+ from openapi_client.models.update_workspace_template import UpdateWorkspaceTemplate
628
651
  from openapi_client.models.updatemachinepoolresponse_response import UpdatemachinepoolresponseResponse
629
652
  from openapi_client.models.upload_session_command_logs_locations import UploadSessionCommandLogsLocations
630
653
  from openapi_client.models.uploadsessioncommandlogslocations_response import UploadsessioncommandlogslocationsResponse
631
654
  from openapi_client.models.upsert_resource_tags_request import UpsertResourceTagsRequest
632
655
  from openapi_client.models.usage_by_cloud import UsageByCloud
633
656
  from openapi_client.models.usage_by_cluster import UsageByCluster
657
+ from openapi_client.models.usage_by_cluster_type import UsageByClusterType
634
658
  from openapi_client.models.usage_by_instance_type import UsageByInstanceType
635
659
  from openapi_client.models.usage_by_project import UsageByProject
636
660
  from openapi_client.models.usage_by_user import UsageByUser
637
661
  from openapi_client.models.usagebycloud_list_response import UsagebycloudListResponse
638
662
  from openapi_client.models.usagebycluster_list_response import UsagebyclusterListResponse
663
+ from openapi_client.models.usagebyclustertype_list_response import UsagebyclustertypeListResponse
639
664
  from openapi_client.models.usagebyinstancetype_list_response import UsagebyinstancetypeListResponse
640
665
  from openapi_client.models.usagebyproject_list_response import UsagebyprojectListResponse
641
666
  from openapi_client.models.usagebyuser_list_response import UsagebyuserListResponse
@@ -648,6 +673,7 @@ from openapi_client.models.useworkosresponse_response import UseworkosresponseRe
648
673
  from openapi_client.models.utm_fields import UtmFields
649
674
  from openapi_client.models.validate_otp_params_api_model import ValidateOTPParamsApiModel
650
675
  from openapi_client.models.validation_error import ValidationError
676
+ from openapi_client.models.validation_status import ValidationStatus
651
677
  from openapi_client.models.waitlist_status_response import WaitlistStatusResponse
652
678
  from openapi_client.models.waitlist_status_type import WaitlistStatusType
653
679
  from openapi_client.models.waitliststatusresponse_response import WaitliststatusresponseResponse
@@ -0,0 +1,99 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Managed Ray API
5
+
6
+ No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501
7
+
8
+ The version of the OpenAPI document: 0.1.0
9
+ Generated by: https://openapi-generator.tech
10
+ """
11
+
12
+
13
+ import pprint
14
+ import re # noqa: F401
15
+
16
+ import six
17
+
18
+ from openapi_client.configuration import Configuration
19
+
20
+
21
+ class ConnectionType(object):
22
+ """NOTE: This class is auto generated by OpenAPI Generator.
23
+ Ref: https://openapi-generator.tech
24
+
25
+ Do not edit the class manually.
26
+ """
27
+
28
+ """
29
+ allowed enum values
30
+ """
31
+ DATABRICKS_U2M = "databricks_U2M"
32
+
33
+ allowable_values = [DATABRICKS_U2M] # noqa: E501
34
+
35
+ """
36
+ Attributes:
37
+ openapi_types (dict): The key is attribute name
38
+ and the value is attribute type.
39
+ attribute_map (dict): The key is attribute name
40
+ and the value is json key in definition.
41
+ """
42
+ openapi_types = {
43
+ }
44
+
45
+ attribute_map = {
46
+ }
47
+
48
+ def __init__(self, local_vars_configuration=None): # noqa: E501
49
+ """ConnectionType - a model defined in OpenAPI""" # noqa: E501
50
+ if local_vars_configuration is None:
51
+ local_vars_configuration = Configuration()
52
+ self.local_vars_configuration = local_vars_configuration
53
+ self.discriminator = None
54
+
55
+ def to_dict(self):
56
+ """Returns the model properties as a dict"""
57
+ result = {}
58
+
59
+ for attr, _ in six.iteritems(self.openapi_types):
60
+ value = getattr(self, attr)
61
+ if isinstance(value, list):
62
+ result[attr] = list(map(
63
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
64
+ value
65
+ ))
66
+ elif hasattr(value, "to_dict"):
67
+ result[attr] = value.to_dict()
68
+ elif isinstance(value, dict):
69
+ result[attr] = dict(map(
70
+ lambda item: (item[0], item[1].to_dict())
71
+ if hasattr(item[1], "to_dict") else item,
72
+ value.items()
73
+ ))
74
+ else:
75
+ result[attr] = value
76
+
77
+ return result
78
+
79
+ def to_str(self):
80
+ """Returns the string representation of the model"""
81
+ return pprint.pformat(self.to_dict())
82
+
83
+ def __repr__(self):
84
+ """For `print` and `pprint`"""
85
+ return self.to_str()
86
+
87
+ def __eq__(self, other):
88
+ """Returns true if both objects are equal"""
89
+ if not isinstance(other, ConnectionType):
90
+ return False
91
+
92
+ return self.to_dict() == other.to_dict()
93
+
94
+ def __ne__(self, other):
95
+ """Returns true if both objects are not equal"""
96
+ if not isinstance(other, ConnectionType):
97
+ return True
98
+
99
+ return self.to_dict() != other.to_dict()
@@ -44,6 +44,7 @@ class CreateExperimentalWorkspace(object):
44
44
  'cloned_job_id': 'str',
45
45
  'cloned_workspace_id': 'str',
46
46
  'template_id': 'str',
47
+ 'template_version_id': 'str',
47
48
  'template_url': 'str',
48
49
  'tags': 'dict(str, str)',
49
50
  'skip_start': 'bool'
@@ -61,12 +62,13 @@ class CreateExperimentalWorkspace(object):
61
62
  'cloned_job_id': 'cloned_job_id',
62
63
  'cloned_workspace_id': 'cloned_workspace_id',
63
64
  'template_id': 'template_id',
65
+ 'template_version_id': 'template_version_id',
64
66
  'template_url': 'template_url',
65
67
  'tags': 'tags',
66
68
  'skip_start': 'skip_start'
67
69
  }
68
70
 
69
- def __init__(self, name=None, description=None, project_id=None, cloud_id=None, compute_config_id=None, base_snapshot=None, cluster_environment_build_id=None, idle_timeout_minutes=None, cloned_job_id=None, cloned_workspace_id=None, template_id=None, template_url=None, tags=None, skip_start=None, local_vars_configuration=None): # noqa: E501
71
+ def __init__(self, name=None, description=None, project_id=None, cloud_id=None, compute_config_id=None, base_snapshot=None, cluster_environment_build_id=None, idle_timeout_minutes=None, cloned_job_id=None, cloned_workspace_id=None, template_id=None, template_version_id=None, template_url=None, tags=None, skip_start=None, local_vars_configuration=None): # noqa: E501
70
72
  """CreateExperimentalWorkspace - a model defined in OpenAPI""" # noqa: E501
71
73
  if local_vars_configuration is None:
72
74
  local_vars_configuration = Configuration()
@@ -83,6 +85,7 @@ class CreateExperimentalWorkspace(object):
83
85
  self._cloned_job_id = None
84
86
  self._cloned_workspace_id = None
85
87
  self._template_id = None
88
+ self._template_version_id = None
86
89
  self._template_url = None
87
90
  self._tags = None
88
91
  self._skip_start = None
@@ -105,6 +108,8 @@ class CreateExperimentalWorkspace(object):
105
108
  self.cloned_workspace_id = cloned_workspace_id
106
109
  if template_id is not None:
107
110
  self.template_id = template_id
111
+ if template_version_id is not None:
112
+ self.template_version_id = template_version_id
108
113
  if template_url is not None:
109
114
  self.template_url = template_url
110
115
  if tags is not None:
@@ -375,6 +380,29 @@ class CreateExperimentalWorkspace(object):
375
380
 
376
381
  self._template_id = template_id
377
382
 
383
+ @property
384
+ def template_version_id(self):
385
+ """Gets the template_version_id of this CreateExperimentalWorkspace. # noqa: E501
386
+
387
+ The Id of the template version to use. # noqa: E501
388
+
389
+ :return: The template_version_id of this CreateExperimentalWorkspace. # noqa: E501
390
+ :rtype: str
391
+ """
392
+ return self._template_version_id
393
+
394
+ @template_version_id.setter
395
+ def template_version_id(self, template_version_id):
396
+ """Sets the template_version_id of this CreateExperimentalWorkspace.
397
+
398
+ The Id of the template version to use. # noqa: E501
399
+
400
+ :param template_version_id: The template_version_id of this CreateExperimentalWorkspace. # noqa: E501
401
+ :type: str
402
+ """
403
+
404
+ self._template_version_id = template_version_id
405
+
378
406
  @property
379
407
  def template_url(self):
380
408
  """Gets the template_url of this CreateExperimentalWorkspace. # noqa: E501
@@ -0,0 +1,281 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ Managed Ray API
5
+
6
+ No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) # noqa: E501
7
+
8
+ The version of the OpenAPI document: 0.1.0
9
+ Generated by: https://openapi-generator.tech
10
+ """
11
+
12
+
13
+ import pprint
14
+ import re # noqa: F401
15
+
16
+ import six
17
+
18
+ from openapi_client.configuration import Configuration
19
+
20
+
21
+ class DataCatalog(object):
22
+ """NOTE: This class is auto generated by OpenAPI Generator.
23
+ Ref: https://openapi-generator.tech
24
+
25
+ Do not edit the class manually.
26
+ """
27
+
28
+ """
29
+ Attributes:
30
+ openapi_types (dict): The key is attribute name
31
+ and the value is attribute type.
32
+ attribute_map (dict): The key is attribute name
33
+ and the value is json key in definition.
34
+ """
35
+ openapi_types = {
36
+ 'id': 'str',
37
+ 'name': 'str',
38
+ 'connection_id': 'str',
39
+ 'description': 'str',
40
+ 'created_at': 'str',
41
+ 'updated_at': 'str',
42
+ 'metadata': 'object'
43
+ }
44
+
45
+ attribute_map = {
46
+ 'id': 'id',
47
+ 'name': 'name',
48
+ 'connection_id': 'connection_id',
49
+ 'description': 'description',
50
+ 'created_at': 'created_at',
51
+ 'updated_at': 'updated_at',
52
+ 'metadata': 'metadata'
53
+ }
54
+
55
+ def __init__(self, id=None, name=None, connection_id=None, description=None, created_at=None, updated_at=None, metadata=None, local_vars_configuration=None): # noqa: E501
56
+ """DataCatalog - a model defined in OpenAPI""" # noqa: E501
57
+ if local_vars_configuration is None:
58
+ local_vars_configuration = Configuration()
59
+ self.local_vars_configuration = local_vars_configuration
60
+
61
+ self._id = None
62
+ self._name = None
63
+ self._connection_id = None
64
+ self._description = None
65
+ self._created_at = None
66
+ self._updated_at = None
67
+ self._metadata = None
68
+ self.discriminator = None
69
+
70
+ self.id = id
71
+ self.name = name
72
+ self.connection_id = connection_id
73
+ if description is not None:
74
+ self.description = description
75
+ self.created_at = created_at
76
+ self.updated_at = updated_at
77
+ if metadata is not None:
78
+ self.metadata = metadata
79
+
80
+ @property
81
+ def id(self):
82
+ """Gets the id of this DataCatalog. # noqa: E501
83
+
84
+
85
+ :return: The id of this DataCatalog. # noqa: E501
86
+ :rtype: str
87
+ """
88
+ return self._id
89
+
90
+ @id.setter
91
+ def id(self, id):
92
+ """Sets the id of this DataCatalog.
93
+
94
+
95
+ :param id: The id of this DataCatalog. # noqa: E501
96
+ :type: str
97
+ """
98
+ if self.local_vars_configuration.client_side_validation and id is None: # noqa: E501
99
+ raise ValueError("Invalid value for `id`, must not be `None`") # noqa: E501
100
+
101
+ self._id = id
102
+
103
+ @property
104
+ def name(self):
105
+ """Gets the name of this DataCatalog. # noqa: E501
106
+
107
+
108
+ :return: The name of this DataCatalog. # noqa: E501
109
+ :rtype: str
110
+ """
111
+ return self._name
112
+
113
+ @name.setter
114
+ def name(self, name):
115
+ """Sets the name of this DataCatalog.
116
+
117
+
118
+ :param name: The name of this DataCatalog. # noqa: E501
119
+ :type: str
120
+ """
121
+ if self.local_vars_configuration.client_side_validation and name is None: # noqa: E501
122
+ raise ValueError("Invalid value for `name`, must not be `None`") # noqa: E501
123
+
124
+ self._name = name
125
+
126
+ @property
127
+ def connection_id(self):
128
+ """Gets the connection_id of this DataCatalog. # noqa: E501
129
+
130
+
131
+ :return: The connection_id of this DataCatalog. # noqa: E501
132
+ :rtype: str
133
+ """
134
+ return self._connection_id
135
+
136
+ @connection_id.setter
137
+ def connection_id(self, connection_id):
138
+ """Sets the connection_id of this DataCatalog.
139
+
140
+
141
+ :param connection_id: The connection_id of this DataCatalog. # noqa: E501
142
+ :type: str
143
+ """
144
+ if self.local_vars_configuration.client_side_validation and connection_id is None: # noqa: E501
145
+ raise ValueError("Invalid value for `connection_id`, must not be `None`") # noqa: E501
146
+
147
+ self._connection_id = connection_id
148
+
149
+ @property
150
+ def description(self):
151
+ """Gets the description of this DataCatalog. # noqa: E501
152
+
153
+
154
+ :return: The description of this DataCatalog. # noqa: E501
155
+ :rtype: str
156
+ """
157
+ return self._description
158
+
159
+ @description.setter
160
+ def description(self, description):
161
+ """Sets the description of this DataCatalog.
162
+
163
+
164
+ :param description: The description of this DataCatalog. # noqa: E501
165
+ :type: str
166
+ """
167
+
168
+ self._description = description
169
+
170
+ @property
171
+ def created_at(self):
172
+ """Gets the created_at of this DataCatalog. # noqa: E501
173
+
174
+
175
+ :return: The created_at of this DataCatalog. # noqa: E501
176
+ :rtype: str
177
+ """
178
+ return self._created_at
179
+
180
+ @created_at.setter
181
+ def created_at(self, created_at):
182
+ """Sets the created_at of this DataCatalog.
183
+
184
+
185
+ :param created_at: The created_at of this DataCatalog. # noqa: E501
186
+ :type: str
187
+ """
188
+ if self.local_vars_configuration.client_side_validation and created_at is None: # noqa: E501
189
+ raise ValueError("Invalid value for `created_at`, must not be `None`") # noqa: E501
190
+
191
+ self._created_at = created_at
192
+
193
+ @property
194
+ def updated_at(self):
195
+ """Gets the updated_at of this DataCatalog. # noqa: E501
196
+
197
+
198
+ :return: The updated_at of this DataCatalog. # noqa: E501
199
+ :rtype: str
200
+ """
201
+ return self._updated_at
202
+
203
+ @updated_at.setter
204
+ def updated_at(self, updated_at):
205
+ """Sets the updated_at of this DataCatalog.
206
+
207
+
208
+ :param updated_at: The updated_at of this DataCatalog. # noqa: E501
209
+ :type: str
210
+ """
211
+ if self.local_vars_configuration.client_side_validation and updated_at is None: # noqa: E501
212
+ raise ValueError("Invalid value for `updated_at`, must not be `None`") # noqa: E501
213
+
214
+ self._updated_at = updated_at
215
+
216
+ @property
217
+ def metadata(self):
218
+ """Gets the metadata of this DataCatalog. # noqa: E501
219
+
220
+
221
+ :return: The metadata of this DataCatalog. # noqa: E501
222
+ :rtype: object
223
+ """
224
+ return self._metadata
225
+
226
+ @metadata.setter
227
+ def metadata(self, metadata):
228
+ """Sets the metadata of this DataCatalog.
229
+
230
+
231
+ :param metadata: The metadata of this DataCatalog. # noqa: E501
232
+ :type: object
233
+ """
234
+
235
+ self._metadata = metadata
236
+
237
+ def to_dict(self):
238
+ """Returns the model properties as a dict"""
239
+ result = {}
240
+
241
+ for attr, _ in six.iteritems(self.openapi_types):
242
+ value = getattr(self, attr)
243
+ if isinstance(value, list):
244
+ result[attr] = list(map(
245
+ lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
246
+ value
247
+ ))
248
+ elif hasattr(value, "to_dict"):
249
+ result[attr] = value.to_dict()
250
+ elif isinstance(value, dict):
251
+ result[attr] = dict(map(
252
+ lambda item: (item[0], item[1].to_dict())
253
+ if hasattr(item[1], "to_dict") else item,
254
+ value.items()
255
+ ))
256
+ else:
257
+ result[attr] = value
258
+
259
+ return result
260
+
261
+ def to_str(self):
262
+ """Returns the string representation of the model"""
263
+ return pprint.pformat(self.to_dict())
264
+
265
+ def __repr__(self):
266
+ """For `print` and `pprint`"""
267
+ return self.to_str()
268
+
269
+ def __eq__(self, other):
270
+ """Returns true if both objects are equal"""
271
+ if not isinstance(other, DataCatalog):
272
+ return False
273
+
274
+ return self.to_dict() == other.to_dict()
275
+
276
+ def __ne__(self, other):
277
+ """Returns true if both objects are not equal"""
278
+ if not isinstance(other, DataCatalog):
279
+ return True
280
+
281
+ return self.to_dict() != other.to_dict()