openmetadata-ingestion 1.9.12.0__py3-none-any.whl → 1.10.0.0__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.

Potentially problematic release.


This version of openmetadata-ingestion might be problematic. Click here for more details.

Files changed (949) hide show
  1. metadata/cli/common.py +0 -1
  2. metadata/examples/workflows/bigquery.yaml +1 -0
  3. metadata/examples/workflows/databricks.yaml +9 -1
  4. metadata/examples/workflows/databricks_usage.yaml +7 -1
  5. metadata/examples/workflows/metabase.yaml +1 -0
  6. metadata/examples/workflows/unity_catalog.yaml +7 -1
  7. metadata/examples/workflows/unity_catalog_usage.yaml +7 -1
  8. metadata/generated/antlr/EntityLinkLexer.py +406 -432
  9. metadata/generated/schema/analytics/__init__.py +1 -1
  10. metadata/generated/schema/analytics/basic.py +1 -1
  11. metadata/generated/schema/analytics/reportData.py +1 -1
  12. metadata/generated/schema/analytics/reportDataType/__init__.py +1 -1
  13. metadata/generated/schema/analytics/reportDataType/aggregatedCostAnalysisReportData.py +1 -1
  14. metadata/generated/schema/analytics/reportDataType/entityReportData.py +1 -1
  15. metadata/generated/schema/analytics/reportDataType/rawCostAnalysisReportData.py +1 -1
  16. metadata/generated/schema/analytics/reportDataType/webAnalyticEntityViewReportData.py +1 -1
  17. metadata/generated/schema/analytics/reportDataType/webAnalyticUserActivityReportData.py +1 -1
  18. metadata/generated/schema/analytics/webAnalyticEvent.py +1 -1
  19. metadata/generated/schema/analytics/webAnalyticEventData.py +1 -1
  20. metadata/generated/schema/analytics/webAnalyticEventType/__init__.py +1 -1
  21. metadata/generated/schema/analytics/webAnalyticEventType/customEvent.py +1 -1
  22. metadata/generated/schema/analytics/webAnalyticEventType/pageViewEvent.py +1 -1
  23. metadata/generated/schema/api/__init__.py +1 -1
  24. metadata/generated/schema/api/addGlossaryToAssetsRequest.py +1 -1
  25. metadata/generated/schema/api/addTagToAssetsRequest.py +1 -1
  26. metadata/generated/schema/api/analytics/__init__.py +1 -1
  27. metadata/generated/schema/api/analytics/createWebAnalyticEvent.py +1 -1
  28. metadata/generated/schema/api/automations/__init__.py +1 -1
  29. metadata/generated/schema/api/automations/createWorkflow.py +1 -1
  30. metadata/generated/schema/api/bulkAssets.py +1 -1
  31. metadata/generated/schema/api/classification/__init__.py +1 -1
  32. metadata/generated/schema/api/classification/createClassification.py +52 -1
  33. metadata/generated/schema/api/classification/createTag.py +29 -2
  34. metadata/generated/schema/api/classification/createTagWithRecognizers.py +67 -0
  35. metadata/generated/schema/api/classification/loadTags.py +1 -1
  36. metadata/generated/schema/api/configuration/__init__.py +3 -0
  37. metadata/generated/schema/api/configuration/rdfConfiguration.py +47 -0
  38. metadata/generated/schema/api/createBot.py +1 -1
  39. metadata/generated/schema/api/createEventPublisherJob.py +1 -1
  40. metadata/generated/schema/api/createType.py +1 -1
  41. metadata/generated/schema/api/data/__init__.py +1 -1
  42. metadata/generated/schema/api/data/createAPICollection.py +1 -1
  43. metadata/generated/schema/api/data/createAPIEndpoint.py +1 -1
  44. metadata/generated/schema/api/data/createChart.py +1 -1
  45. metadata/generated/schema/api/data/createContainer.py +1 -1
  46. metadata/generated/schema/api/data/createCustomProperty.py +1 -1
  47. metadata/generated/schema/api/data/createDashboard.py +1 -1
  48. metadata/generated/schema/api/data/createDashboardDataModel.py +5 -1
  49. metadata/generated/schema/api/data/createDataContract.py +33 -3
  50. metadata/generated/schema/api/data/createDatabase.py +1 -1
  51. metadata/generated/schema/api/data/createDatabaseSchema.py +1 -1
  52. metadata/generated/schema/api/data/createDirectory.py +1 -1
  53. metadata/generated/schema/api/data/createEntityProfile.py +1 -1
  54. metadata/generated/schema/api/data/createFile.py +1 -1
  55. metadata/generated/schema/api/data/createGlossary.py +1 -1
  56. metadata/generated/schema/api/data/createGlossaryTerm.py +1 -1
  57. metadata/generated/schema/api/data/createMetric.py +8 -1
  58. metadata/generated/schema/api/data/createMlModel.py +1 -1
  59. metadata/generated/schema/api/data/createPipeline.py +1 -1
  60. metadata/generated/schema/api/data/createQuery.py +1 -1
  61. metadata/generated/schema/api/data/createQueryCostRecord.py +1 -1
  62. metadata/generated/schema/api/data/createSearchIndex.py +1 -1
  63. metadata/generated/schema/api/data/createSpreadsheet.py +9 -1
  64. metadata/generated/schema/api/data/createStoredProcedure.py +1 -1
  65. metadata/generated/schema/api/data/createTable.py +1 -1
  66. metadata/generated/schema/api/data/createTableProfile.py +1 -1
  67. metadata/generated/schema/api/data/createTopic.py +1 -1
  68. metadata/generated/schema/api/data/createWorksheet.py +1 -1
  69. metadata/generated/schema/api/data/loadGlossary.py +1 -1
  70. metadata/generated/schema/api/data/restoreEntity.py +1 -1
  71. metadata/generated/schema/api/data/updateColumn.py +1 -1
  72. metadata/generated/schema/api/dataInsight/__init__.py +1 -1
  73. metadata/generated/schema/api/dataInsight/createDataInsightChart.py +1 -1
  74. metadata/generated/schema/api/dataInsight/custom/__init__.py +1 -1
  75. metadata/generated/schema/api/dataInsight/custom/createDataInsightCustomChart.py +1 -1
  76. metadata/generated/schema/api/dataInsight/kpi/__init__.py +1 -1
  77. metadata/generated/schema/api/dataInsight/kpi/createKpiRequest.py +1 -1
  78. metadata/generated/schema/api/docStore/__init__.py +1 -1
  79. metadata/generated/schema/api/docStore/createDocument.py +1 -1
  80. metadata/generated/schema/api/domains/__init__.py +1 -1
  81. metadata/generated/schema/api/domains/createDataProduct.py +7 -1
  82. metadata/generated/schema/api/domains/createDomain.py +1 -1
  83. metadata/generated/schema/api/entityRelationship/__init__.py +1 -1
  84. metadata/generated/schema/api/entityRelationship/entityRelationshipDirection.py +1 -1
  85. metadata/generated/schema/api/entityRelationship/esEntityRelationshipData.py +1 -1
  86. metadata/generated/schema/api/entityRelationship/relationshipRef.py +1 -1
  87. metadata/generated/schema/api/entityRelationship/searchEntityRelationshipRequest.py +1 -1
  88. metadata/generated/schema/api/entityRelationship/searchEntityRelationshipResult.py +1 -1
  89. metadata/generated/schema/api/entityRelationship/searchSchemaEntityRelationshipResult.py +1 -1
  90. metadata/generated/schema/api/events/__init__.py +3 -0
  91. metadata/generated/schema/api/events/createNotificationTemplate.py +61 -0
  92. metadata/generated/schema/api/events/notificationTemplateValidationRequest.py +30 -0
  93. metadata/generated/schema/api/events/notificationTemplateValidationResponse.py +36 -0
  94. metadata/generated/schema/api/feed/__init__.py +1 -1
  95. metadata/generated/schema/api/feed/closeTask.py +1 -1
  96. metadata/generated/schema/api/feed/createPost.py +1 -1
  97. metadata/generated/schema/api/feed/createSuggestion.py +1 -1
  98. metadata/generated/schema/api/feed/createThread.py +1 -1
  99. metadata/generated/schema/api/feed/resolveTask.py +1 -1
  100. metadata/generated/schema/api/feed/threadCount.py +1 -1
  101. metadata/generated/schema/api/governance/__init__.py +1 -1
  102. metadata/generated/schema/api/governance/createWorkflowDefinition.py +1 -1
  103. metadata/generated/schema/api/governance/createWorkflowInstanceState.py +1 -1
  104. metadata/generated/schema/api/lineage/__init__.py +1 -1
  105. metadata/generated/schema/api/lineage/addLineage.py +1 -1
  106. metadata/generated/schema/api/lineage/entityCountLineageRequest.py +66 -0
  107. metadata/generated/schema/api/lineage/esLineageData.py +1 -1
  108. metadata/generated/schema/api/lineage/lineageDirection.py +1 -1
  109. metadata/generated/schema/api/lineage/lineagePaginationInfo.py +57 -0
  110. metadata/generated/schema/api/lineage/nodeInformation.py +9 -1
  111. metadata/generated/schema/api/lineage/searchLineageRequest.py +1 -1
  112. metadata/generated/schema/api/lineage/searchLineageResult.py +1 -1
  113. metadata/generated/schema/api/mcp/__init__.py +1 -1
  114. metadata/generated/schema/api/mcp/mcpSearchResponse.py +1 -1
  115. metadata/generated/schema/api/mcp/mcpToolDefinition.py +1 -1
  116. metadata/generated/schema/api/openMetadataServerVersion.py +1 -1
  117. metadata/generated/schema/api/policies/__init__.py +1 -1
  118. metadata/generated/schema/api/policies/createPolicy.py +1 -1
  119. metadata/generated/schema/api/rdf/__init__.py +3 -0
  120. metadata/generated/schema/api/rdf/sparqlQuery.py +57 -0
  121. metadata/generated/schema/api/rdf/sparqlResponse.py +56 -0
  122. metadata/generated/schema/api/scim/__init__.py +1 -1
  123. metadata/generated/schema/api/scim/scimGroup.py +1 -1
  124. metadata/generated/schema/api/scim/scimPatchOp.py +1 -1
  125. metadata/generated/schema/api/scim/scimUser.py +1 -1
  126. metadata/generated/schema/api/search/__init__.py +1 -1
  127. metadata/generated/schema/api/search/previewSearchRequest.py +1 -1
  128. metadata/generated/schema/api/services/__init__.py +1 -1
  129. metadata/generated/schema/api/services/createApiService.py +1 -1
  130. metadata/generated/schema/api/services/createDashboardService.py +1 -1
  131. metadata/generated/schema/api/services/createDatabaseService.py +1 -1
  132. metadata/generated/schema/api/services/createDriveService.py +9 -2
  133. metadata/generated/schema/api/services/createMessagingService.py +1 -1
  134. metadata/generated/schema/api/services/createMetadataService.py +1 -1
  135. metadata/generated/schema/api/services/createMlModelService.py +1 -1
  136. metadata/generated/schema/api/services/createPipelineService.py +1 -1
  137. metadata/generated/schema/api/services/createSearchService.py +1 -1
  138. metadata/generated/schema/api/services/createSecurityService.py +1 -1
  139. metadata/generated/schema/api/services/createStorageService.py +1 -1
  140. metadata/generated/schema/api/services/ingestionPipelines/__init__.py +1 -1
  141. metadata/generated/schema/api/services/ingestionPipelines/createIngestionPipeline.py +8 -1
  142. metadata/generated/schema/api/setOwner.py +1 -1
  143. metadata/generated/schema/api/teams/__init__.py +1 -1
  144. metadata/generated/schema/api/teams/createPersona.py +1 -1
  145. metadata/generated/schema/api/teams/createRole.py +1 -1
  146. metadata/generated/schema/api/teams/createTeam.py +1 -1
  147. metadata/generated/schema/api/teams/createUser.py +1 -1
  148. metadata/generated/schema/api/tests/__init__.py +1 -1
  149. metadata/generated/schema/api/tests/createCustomMetric.py +1 -1
  150. metadata/generated/schema/api/tests/createLogicalTestCases.py +1 -1
  151. metadata/generated/schema/api/tests/createTestCase.py +5 -1
  152. metadata/generated/schema/api/tests/createTestCaseResolutionStatus.py +1 -1
  153. metadata/generated/schema/api/tests/createTestCaseResult.py +1 -1
  154. metadata/generated/schema/api/tests/createTestDefinition.py +1 -1
  155. metadata/generated/schema/api/tests/createTestSuite.py +5 -1
  156. metadata/generated/schema/api/tests/moveGlossaryTermRequest.py +1 -1
  157. metadata/generated/schema/api/validateGlossaryTagsRequest.py +1 -1
  158. metadata/generated/schema/api/voteRequest.py +1 -1
  159. metadata/generated/schema/auth/__init__.py +1 -1
  160. metadata/generated/schema/auth/basicAuth.py +1 -1
  161. metadata/generated/schema/auth/basicLoginRequest.py +1 -1
  162. metadata/generated/schema/auth/changePasswordRequest.py +1 -1
  163. metadata/generated/schema/auth/createPersonalToken.py +1 -1
  164. metadata/generated/schema/auth/emailRequest.py +1 -1
  165. metadata/generated/schema/auth/emailVerificationToken.py +1 -1
  166. metadata/generated/schema/auth/generateToken.py +1 -1
  167. metadata/generated/schema/auth/jwtAuth.py +1 -1
  168. metadata/generated/schema/auth/loginRequest.py +1 -1
  169. metadata/generated/schema/auth/logoutRequest.py +1 -1
  170. metadata/generated/schema/auth/passwordResetRequest.py +1 -1
  171. metadata/generated/schema/auth/passwordResetToken.py +1 -1
  172. metadata/generated/schema/auth/personalAccessToken.py +1 -1
  173. metadata/generated/schema/auth/refreshToken.py +1 -1
  174. metadata/generated/schema/auth/registrationRequest.py +1 -1
  175. metadata/generated/schema/auth/revokePersonalToken.py +1 -1
  176. metadata/generated/schema/auth/revokeToken.py +1 -1
  177. metadata/generated/schema/auth/serviceTokenEnum.py +1 -1
  178. metadata/generated/schema/auth/ssoAuth.py +1 -1
  179. metadata/generated/schema/auth/supportToken.py +1 -1
  180. metadata/generated/schema/auth/tokenRefreshRequest.py +1 -1
  181. metadata/generated/schema/configuration/__init__.py +1 -1
  182. metadata/generated/schema/configuration/aiPlatformConfiguration.py +1 -1
  183. metadata/generated/schema/configuration/appsPrivateConfiguration.py +1 -1
  184. metadata/generated/schema/configuration/assetCertificationSettings.py +1 -1
  185. metadata/generated/schema/configuration/authConfig.py +1 -1
  186. metadata/generated/schema/configuration/authenticationConfiguration.py +1 -1
  187. metadata/generated/schema/configuration/authorizerConfiguration.py +1 -1
  188. metadata/generated/schema/configuration/cacheConfiguration.py +1 -1
  189. metadata/generated/schema/configuration/changeEventConfiguration.py +1 -1
  190. metadata/generated/schema/configuration/dataQualityConfiguration.py +1 -1
  191. metadata/generated/schema/configuration/elasticSearchConfiguration.py +2 -1
  192. metadata/generated/schema/configuration/entityRulesSettings.py +1 -1
  193. metadata/generated/schema/configuration/eventHandlerConfiguration.py +1 -1
  194. metadata/generated/schema/configuration/fernetConfiguration.py +1 -1
  195. metadata/generated/schema/configuration/jwtTokenConfiguration.py +1 -1
  196. metadata/generated/schema/configuration/kafkaEventConfiguration.py +1 -1
  197. metadata/generated/schema/configuration/ldapConfiguration.py +1 -1
  198. metadata/generated/schema/configuration/ldapTrustStoreConfig/__init__.py +1 -1
  199. metadata/generated/schema/configuration/ldapTrustStoreConfig/customTrustManagerConfig.py +1 -1
  200. metadata/generated/schema/configuration/ldapTrustStoreConfig/hostNameConfig.py +1 -1
  201. metadata/generated/schema/configuration/ldapTrustStoreConfig/jvmDefaultConfig.py +1 -1
  202. metadata/generated/schema/configuration/ldapTrustStoreConfig/trustAllConfig.py +1 -1
  203. metadata/generated/schema/configuration/ldapTrustStoreConfig/truststoreConfig.py +1 -1
  204. metadata/generated/schema/configuration/limitsConfiguration.py +1 -1
  205. metadata/generated/schema/configuration/lineageSettings.py +1 -1
  206. metadata/generated/schema/configuration/logStorageConfiguration.py +105 -0
  207. metadata/generated/schema/configuration/loginConfiguration.py +1 -1
  208. metadata/generated/schema/configuration/logoConfiguration.py +1 -1
  209. metadata/generated/schema/configuration/openMetadataBaseUrlConfiguration.py +1 -1
  210. metadata/generated/schema/configuration/opertionalConfiguration.py +1 -1
  211. metadata/generated/schema/configuration/opsConfig.py +1 -1
  212. metadata/generated/schema/configuration/pipelineServiceClientConfiguration.py +9 -2
  213. metadata/generated/schema/configuration/profilerConfiguration.py +2 -1
  214. metadata/generated/schema/configuration/searchSettings.py +7 -2
  215. metadata/generated/schema/configuration/securityConfiguration.py +26 -0
  216. metadata/generated/schema/configuration/slackAppConfiguration.py +1 -1
  217. metadata/generated/schema/configuration/taskNotificationConfiguration.py +1 -1
  218. metadata/generated/schema/configuration/testResultNotificationConfiguration.py +1 -1
  219. metadata/generated/schema/configuration/themeConfiguration.py +1 -1
  220. metadata/generated/schema/configuration/uiThemePreference.py +1 -1
  221. metadata/generated/schema/configuration/workflowSettings.py +1 -1
  222. metadata/generated/schema/dataInsight/__init__.py +1 -1
  223. metadata/generated/schema/dataInsight/custom/__init__.py +1 -1
  224. metadata/generated/schema/dataInsight/custom/dataInsightCustomChart.py +1 -1
  225. metadata/generated/schema/dataInsight/custom/dataInsightCustomChartResult.py +1 -1
  226. metadata/generated/schema/dataInsight/custom/dataInsightCustomChartResultList.py +1 -1
  227. metadata/generated/schema/dataInsight/custom/formulaHolder.py +1 -1
  228. metadata/generated/schema/dataInsight/custom/lineChart.py +1 -1
  229. metadata/generated/schema/dataInsight/custom/summaryCard.py +1 -1
  230. metadata/generated/schema/dataInsight/dataInsightChart.py +1 -1
  231. metadata/generated/schema/dataInsight/dataInsightChartResult.py +1 -1
  232. metadata/generated/schema/dataInsight/kpi/__init__.py +1 -1
  233. metadata/generated/schema/dataInsight/kpi/basic.py +1 -1
  234. metadata/generated/schema/dataInsight/kpi/kpi.py +1 -1
  235. metadata/generated/schema/dataInsight/type/__init__.py +1 -1
  236. metadata/generated/schema/dataInsight/type/aggregatedUnusedAssetsCount.py +1 -1
  237. metadata/generated/schema/dataInsight/type/aggregatedUnusedAssetsSize.py +1 -1
  238. metadata/generated/schema/dataInsight/type/aggregatedUsedVsUnusedAssetsCount.py +1 -1
  239. metadata/generated/schema/dataInsight/type/aggregatedUsedVsUnusedAssetsSize.py +1 -1
  240. metadata/generated/schema/dataInsight/type/dailyActiveUsers.py +1 -1
  241. metadata/generated/schema/dataInsight/type/mostActiveUsers.py +1 -1
  242. metadata/generated/schema/dataInsight/type/mostViewedEntities.py +1 -1
  243. metadata/generated/schema/dataInsight/type/pageViewsByEntities.py +1 -1
  244. metadata/generated/schema/dataInsight/type/unusedAssets.py +1 -1
  245. metadata/generated/schema/email/__init__.py +1 -1
  246. metadata/generated/schema/email/emailRequest.py +1 -1
  247. metadata/generated/schema/email/emailTemplate.py +1 -1
  248. metadata/generated/schema/email/emailTemplatePlaceholder.py +1 -1
  249. metadata/generated/schema/email/smtpSettings.py +1 -1
  250. metadata/generated/schema/email/templateValidationReponse.py +1 -1
  251. metadata/generated/schema/entity/__init__.py +1 -1
  252. metadata/generated/schema/entity/applications/__init__.py +1 -1
  253. metadata/generated/schema/entity/applications/app.py +1 -1
  254. metadata/generated/schema/entity/applications/appExtension.py +1 -1
  255. metadata/generated/schema/entity/applications/appRunRecord.py +1 -1
  256. metadata/generated/schema/entity/applications/configuration/__init__.py +1 -1
  257. metadata/generated/schema/entity/applications/configuration/applicationConfig.py +1 -1
  258. metadata/generated/schema/entity/applications/configuration/external/__init__.py +1 -1
  259. metadata/generated/schema/entity/applications/configuration/external/automator/__init__.py +1 -1
  260. metadata/generated/schema/entity/applications/configuration/external/automator/addCustomProperties.py +1 -1
  261. metadata/generated/schema/entity/applications/configuration/external/automator/addDataProductAction.py +1 -1
  262. metadata/generated/schema/entity/applications/configuration/external/automator/addDescriptionAction.py +1 -1
  263. metadata/generated/schema/entity/applications/configuration/external/automator/addDomainAction.py +1 -1
  264. metadata/generated/schema/entity/applications/configuration/external/automator/addOwnerAction.py +1 -1
  265. metadata/generated/schema/entity/applications/configuration/external/automator/addTagsAction.py +1 -1
  266. metadata/generated/schema/entity/applications/configuration/external/automator/addTermsAction.py +1 -1
  267. metadata/generated/schema/entity/applications/configuration/external/automator/addTestCaseAction.py +1 -1
  268. metadata/generated/schema/entity/applications/configuration/external/automator/addTierAction.py +1 -1
  269. metadata/generated/schema/entity/applications/configuration/external/automator/lineagePropagationAction.py +1 -1
  270. metadata/generated/schema/entity/applications/configuration/external/automator/mlTaggingAction.py +1 -1
  271. metadata/generated/schema/entity/applications/configuration/external/automator/propagationStopConfig.py +1 -1
  272. metadata/generated/schema/entity/applications/configuration/external/automator/removeCustomPropertiesAction.py +1 -1
  273. metadata/generated/schema/entity/applications/configuration/external/automator/removeDataProductAction.py +1 -1
  274. metadata/generated/schema/entity/applications/configuration/external/automator/removeDescriptionAction.py +1 -1
  275. metadata/generated/schema/entity/applications/configuration/external/automator/removeDomainAction.py +1 -1
  276. metadata/generated/schema/entity/applications/configuration/external/automator/removeOwnerAction.py +1 -1
  277. metadata/generated/schema/entity/applications/configuration/external/automator/removeTagsAction.py +1 -1
  278. metadata/generated/schema/entity/applications/configuration/external/automator/removeTermsAction.py +1 -1
  279. metadata/generated/schema/entity/applications/configuration/external/automator/removeTestCaseAction.py +1 -1
  280. metadata/generated/schema/entity/applications/configuration/external/automator/removeTierAction.py +1 -1
  281. metadata/generated/schema/entity/applications/configuration/external/automatorAppConfig.py +1 -1
  282. metadata/generated/schema/entity/applications/configuration/external/collateAIAppConfig.py +1 -1
  283. metadata/generated/schema/entity/applications/configuration/external/metadataExporterAppConfig.py +1 -1
  284. metadata/generated/schema/entity/applications/configuration/external/metadataExporterConnectors/__init__.py +1 -1
  285. metadata/generated/schema/entity/applications/configuration/external/metadataExporterConnectors/bigQueryConnection.py +1 -1
  286. metadata/generated/schema/entity/applications/configuration/external/metadataExporterConnectors/databricksConnection.py +18 -6
  287. metadata/generated/schema/entity/applications/configuration/external/metadataExporterConnectors/redshiftConnection.py +1 -1
  288. metadata/generated/schema/entity/applications/configuration/external/metadataExporterConnectors/snowflakeConnection.py +1 -1
  289. metadata/generated/schema/entity/applications/configuration/external/slackAppTokenConfiguration.py +1 -1
  290. metadata/generated/schema/entity/applications/configuration/internal/__init__.py +1 -1
  291. metadata/generated/schema/entity/applications/configuration/internal/autoPilotAppConfig.py +1 -1
  292. metadata/generated/schema/entity/applications/configuration/internal/collateAIQualityAgentAppConfig.py +1 -1
  293. metadata/generated/schema/entity/applications/configuration/internal/collateAITierAgentAppConfig.py +1 -1
  294. metadata/generated/schema/entity/applications/configuration/internal/dataInsightsAppConfig.py +1 -1
  295. metadata/generated/schema/entity/applications/configuration/internal/dataInsightsReportAppConfig.py +1 -1
  296. metadata/generated/schema/entity/applications/configuration/internal/dataRetentionConfiguration.py +1 -1
  297. metadata/generated/schema/entity/applications/configuration/internal/helloPipelinesConfiguration.py +1 -1
  298. metadata/generated/schema/entity/applications/configuration/internal/searchIndexingAppConfig.py +1 -1
  299. metadata/generated/schema/entity/applications/configuration/private/__init__.py +1 -1
  300. metadata/generated/schema/entity/applications/configuration/private/external/__init__.py +1 -1
  301. metadata/generated/schema/entity/applications/configuration/private/external/collateAIAppPrivateConfig.py +1 -1
  302. metadata/generated/schema/entity/applications/configuration/private/internal/__init__.py +1 -1
  303. metadata/generated/schema/entity/applications/configuration/private/internal/collateAITierAgentAppPrivateConfig.py +1 -1
  304. metadata/generated/schema/entity/applications/configuration/private/limits.py +1 -1
  305. metadata/generated/schema/entity/applications/createAppRequest.py +1 -1
  306. metadata/generated/schema/entity/applications/jobStatus.py +1 -1
  307. metadata/generated/schema/entity/applications/liveExecutionContext.py +1 -1
  308. metadata/generated/schema/entity/applications/marketplace/__init__.py +1 -1
  309. metadata/generated/schema/entity/applications/marketplace/appMarketPlaceDefinition.py +1 -1
  310. metadata/generated/schema/entity/applications/marketplace/createAppMarketPlaceDefinitionReq.py +1 -1
  311. metadata/generated/schema/entity/applications/scheduledExecutionContext.py +1 -1
  312. metadata/generated/schema/entity/automations/__init__.py +1 -1
  313. metadata/generated/schema/entity/automations/queryRunnerRequest.py +46 -0
  314. metadata/generated/schema/entity/automations/response/__init__.py +3 -0
  315. metadata/generated/schema/entity/automations/response/queryRunnerResponse.py +51 -0
  316. metadata/generated/schema/entity/automations/testServiceConnection.py +3 -1
  317. metadata/generated/schema/entity/automations/testSparkEngineConnection.py +31 -0
  318. metadata/generated/schema/entity/automations/workflow.py +8 -2
  319. metadata/generated/schema/entity/bot.py +1 -1
  320. metadata/generated/schema/entity/classification/__init__.py +1 -1
  321. metadata/generated/schema/entity/classification/classification.py +57 -2
  322. metadata/generated/schema/entity/classification/tag.py +41 -3
  323. metadata/generated/schema/entity/data/__init__.py +1 -1
  324. metadata/generated/schema/entity/data/apiCollection.py +8 -1
  325. metadata/generated/schema/entity/data/apiEndpoint.py +6 -1
  326. metadata/generated/schema/entity/data/chart.py +7 -1
  327. metadata/generated/schema/entity/data/container.py +6 -1
  328. metadata/generated/schema/entity/data/dashboard.py +6 -1
  329. metadata/generated/schema/entity/data/dashboardDataModel.py +13 -1
  330. metadata/generated/schema/entity/data/dataContract.py +238 -2
  331. metadata/generated/schema/entity/data/database.py +6 -1
  332. metadata/generated/schema/entity/data/databaseSchema.py +8 -1
  333. metadata/generated/schema/entity/data/directory.py +6 -1
  334. metadata/generated/schema/entity/data/file.py +6 -1
  335. metadata/generated/schema/entity/data/glossary.py +6 -1
  336. metadata/generated/schema/entity/data/glossaryTerm.py +8 -12
  337. metadata/generated/schema/entity/data/metric.py +18 -1
  338. metadata/generated/schema/entity/data/mlmodel.py +6 -1
  339. metadata/generated/schema/entity/data/pipeline.py +136 -2
  340. metadata/generated/schema/entity/data/query.py +6 -1
  341. metadata/generated/schema/entity/data/queryCostRecord.py +1 -1
  342. metadata/generated/schema/entity/data/queryCostSearchResult.py +1 -1
  343. metadata/generated/schema/entity/data/report.py +6 -1
  344. metadata/generated/schema/entity/data/searchIndex.py +6 -1
  345. metadata/generated/schema/entity/data/spreadsheet.py +8 -4
  346. metadata/generated/schema/entity/data/storedProcedure.py +8 -1
  347. metadata/generated/schema/entity/data/table.py +95 -1
  348. metadata/generated/schema/entity/data/topic.py +6 -1
  349. metadata/generated/schema/entity/data/worksheet.py +6 -1
  350. metadata/generated/schema/entity/datacontract/__init__.py +1 -1
  351. metadata/generated/schema/entity/datacontract/dataContractResult.py +1 -1
  352. metadata/generated/schema/entity/datacontract/qualityValidation.py +1 -1
  353. metadata/generated/schema/entity/datacontract/schemaValidation.py +1 -1
  354. metadata/generated/schema/entity/datacontract/semanticsValidation.py +1 -1
  355. metadata/generated/schema/entity/datacontract/slaValidation.py +1 -1
  356. metadata/generated/schema/entity/docStore/__init__.py +1 -1
  357. metadata/generated/schema/entity/docStore/document.py +1 -1
  358. metadata/generated/schema/entity/domains/__init__.py +1 -1
  359. metadata/generated/schema/entity/domains/dataProduct.py +153 -2
  360. metadata/generated/schema/entity/domains/domain.py +1 -1
  361. metadata/generated/schema/entity/events/__init__.py +1 -1
  362. metadata/generated/schema/entity/events/notificationTemplate.py +111 -0
  363. metadata/generated/schema/entity/events/webhook.py +1 -1
  364. metadata/generated/schema/entity/feed/__init__.py +1 -1
  365. metadata/generated/schema/entity/feed/assets.py +1 -1
  366. metadata/generated/schema/entity/feed/customProperty.py +1 -1
  367. metadata/generated/schema/entity/feed/description.py +1 -1
  368. metadata/generated/schema/entity/feed/domain.py +1 -1
  369. metadata/generated/schema/entity/feed/entityInfo.py +1 -1
  370. metadata/generated/schema/entity/feed/owner.py +1 -1
  371. metadata/generated/schema/entity/feed/suggestion.py +1 -1
  372. metadata/generated/schema/entity/feed/tag.py +1 -1
  373. metadata/generated/schema/entity/feed/testCaseResult.py +1 -1
  374. metadata/generated/schema/entity/feed/thread.py +1 -1
  375. metadata/generated/schema/entity/policies/__init__.py +1 -1
  376. metadata/generated/schema/entity/policies/accessControl/__init__.py +1 -1
  377. metadata/generated/schema/entity/policies/accessControl/resourceDescriptor.py +1 -1
  378. metadata/generated/schema/entity/policies/accessControl/resourcePermission.py +1 -1
  379. metadata/generated/schema/entity/policies/accessControl/rule.py +1 -1
  380. metadata/generated/schema/entity/policies/filters.py +1 -1
  381. metadata/generated/schema/entity/policies/policy.py +1 -1
  382. metadata/generated/schema/entity/services/__init__.py +1 -1
  383. metadata/generated/schema/entity/services/apiService.py +1 -1
  384. metadata/generated/schema/entity/services/connections/__init__.py +1 -1
  385. metadata/generated/schema/entity/services/connections/api/__init__.py +1 -1
  386. metadata/generated/schema/entity/services/connections/api/restConnection.py +1 -1
  387. metadata/generated/schema/entity/services/connections/common/__init__.py +1 -1
  388. metadata/generated/schema/entity/services/connections/common/sslCertPaths.py +1 -1
  389. metadata/generated/schema/entity/services/connections/common/sslCertValues.py +1 -1
  390. metadata/generated/schema/entity/services/connections/common/sslConfig.py +1 -1
  391. metadata/generated/schema/entity/services/connections/connectionBasicType.py +1 -1
  392. metadata/generated/schema/entity/services/connections/dashboard/__init__.py +1 -1
  393. metadata/generated/schema/entity/services/connections/dashboard/customDashboardConnection.py +1 -1
  394. metadata/generated/schema/entity/services/connections/dashboard/domoDashboardConnection.py +1 -1
  395. metadata/generated/schema/entity/services/connections/dashboard/grafanaConnection.py +1 -1
  396. metadata/generated/schema/entity/services/connections/dashboard/lightdashConnection.py +1 -1
  397. metadata/generated/schema/entity/services/connections/dashboard/lookerConnection.py +1 -1
  398. metadata/generated/schema/entity/services/connections/dashboard/metabaseConnection.py +17 -4
  399. metadata/generated/schema/entity/services/connections/dashboard/microStrategyConnection.py +1 -1
  400. metadata/generated/schema/entity/services/connections/dashboard/modeConnection.py +1 -1
  401. metadata/generated/schema/entity/services/connections/dashboard/powerBIConnection.py +1 -1
  402. metadata/generated/schema/entity/services/connections/dashboard/powerBIReportServerConnection.py +1 -1
  403. metadata/generated/schema/entity/services/connections/dashboard/powerbi/__init__.py +1 -1
  404. metadata/generated/schema/entity/services/connections/dashboard/powerbi/azureConfig.py +1 -1
  405. metadata/generated/schema/entity/services/connections/dashboard/powerbi/bucketDetails.py +1 -1
  406. metadata/generated/schema/entity/services/connections/dashboard/powerbi/gcsConfig.py +1 -1
  407. metadata/generated/schema/entity/services/connections/dashboard/powerbi/s3Config.py +1 -1
  408. metadata/generated/schema/entity/services/connections/dashboard/qlikCloudConnection.py +1 -1
  409. metadata/generated/schema/entity/services/connections/dashboard/qlikSenseConnection.py +1 -1
  410. metadata/generated/schema/entity/services/connections/dashboard/quickSightConnection.py +1 -1
  411. metadata/generated/schema/entity/services/connections/dashboard/redashConnection.py +1 -1
  412. metadata/generated/schema/entity/services/connections/dashboard/sigmaConnection.py +1 -1
  413. metadata/generated/schema/entity/services/connections/dashboard/supersetConnection.py +1 -1
  414. metadata/generated/schema/entity/services/connections/dashboard/tableauConnection.py +1 -1
  415. metadata/generated/schema/entity/services/connections/dashboard/thoughtSpotConnection.py +1 -1
  416. metadata/generated/schema/entity/services/connections/database/__init__.py +1 -1
  417. metadata/generated/schema/entity/services/connections/database/athenaConnection.py +1 -1
  418. metadata/generated/schema/entity/services/connections/database/azureSQLConnection.py +1 -1
  419. metadata/generated/schema/entity/services/connections/database/bigQueryConnection.py +9 -1
  420. metadata/generated/schema/entity/services/connections/database/bigTableConnection.py +1 -1
  421. metadata/generated/schema/entity/services/connections/database/cassandra/__init__.py +1 -1
  422. metadata/generated/schema/entity/services/connections/database/cassandra/cloudConfig.py +1 -1
  423. metadata/generated/schema/entity/services/connections/database/cassandraConnection.py +1 -1
  424. metadata/generated/schema/entity/services/connections/database/clickhouseConnection.py +1 -1
  425. metadata/generated/schema/entity/services/connections/database/cockroachConnection.py +1 -1
  426. metadata/generated/schema/entity/services/connections/database/common/__init__.py +1 -1
  427. metadata/generated/schema/entity/services/connections/database/common/azureConfig.py +1 -1
  428. metadata/generated/schema/entity/services/connections/database/common/basicAuth.py +1 -1
  429. metadata/generated/schema/entity/services/connections/database/common/iamAuthConfig.py +1 -1
  430. metadata/generated/schema/entity/services/connections/database/common/jwtAuth.py +1 -1
  431. metadata/generated/schema/entity/services/connections/database/common/noConfigAuthenticationTypes.py +1 -1
  432. metadata/generated/schema/entity/services/connections/database/couchbaseConnection.py +1 -1
  433. metadata/generated/schema/entity/services/connections/database/customDatabaseConnection.py +1 -1
  434. metadata/generated/schema/entity/services/connections/database/databricks/__init__.py +3 -0
  435. metadata/generated/schema/entity/services/connections/database/databricks/azureAdSetup.py +37 -0
  436. metadata/generated/schema/entity/services/connections/database/databricks/databricksOAuth.py +30 -0
  437. metadata/generated/schema/entity/services/connections/database/databricks/personalAccessToken.py +23 -0
  438. metadata/generated/schema/entity/services/connections/database/databricksConnection.py +14 -6
  439. metadata/generated/schema/entity/services/connections/database/datalake/__init__.py +1 -1
  440. metadata/generated/schema/entity/services/connections/database/datalake/azureConfig.py +1 -1
  441. metadata/generated/schema/entity/services/connections/database/datalake/gcsConfig.py +1 -1
  442. metadata/generated/schema/entity/services/connections/database/datalake/s3Config.py +1 -1
  443. metadata/generated/schema/entity/services/connections/database/datalakeConnection.py +1 -1
  444. metadata/generated/schema/entity/services/connections/database/db2Connection.py +1 -1
  445. metadata/generated/schema/entity/services/connections/database/deltaLakeConnection.py +1 -1
  446. metadata/generated/schema/entity/services/connections/database/deltalake/__init__.py +1 -1
  447. metadata/generated/schema/entity/services/connections/database/deltalake/metastoreConfig.py +1 -1
  448. metadata/generated/schema/entity/services/connections/database/deltalake/storageConfig.py +1 -1
  449. metadata/generated/schema/entity/services/connections/database/domoDatabaseConnection.py +1 -1
  450. metadata/generated/schema/entity/services/connections/database/dorisConnection.py +1 -1
  451. metadata/generated/schema/entity/services/connections/database/druidConnection.py +1 -1
  452. metadata/generated/schema/entity/services/connections/database/dynamoDBConnection.py +1 -1
  453. metadata/generated/schema/entity/services/connections/database/epicConnection.py +1 -1
  454. metadata/generated/schema/entity/services/connections/database/exasolConnection.py +1 -1
  455. metadata/generated/schema/entity/services/connections/database/glueConnection.py +1 -1
  456. metadata/generated/schema/entity/services/connections/database/greenplumConnection.py +1 -1
  457. metadata/generated/schema/entity/services/connections/database/hiveConnection.py +1 -1
  458. metadata/generated/schema/entity/services/connections/database/iceberg/__init__.py +1 -1
  459. metadata/generated/schema/entity/services/connections/database/iceberg/dynamoDbCatalogConnection.py +1 -1
  460. metadata/generated/schema/entity/services/connections/database/iceberg/glueCatalogConnection.py +1 -1
  461. metadata/generated/schema/entity/services/connections/database/iceberg/hiveCatalogConnection.py +1 -1
  462. metadata/generated/schema/entity/services/connections/database/iceberg/icebergCatalog.py +1 -1
  463. metadata/generated/schema/entity/services/connections/database/iceberg/icebergFileSystem.py +1 -1
  464. metadata/generated/schema/entity/services/connections/database/iceberg/restCatalogConnection.py +1 -1
  465. metadata/generated/schema/entity/services/connections/database/icebergConnection.py +1 -1
  466. metadata/generated/schema/entity/services/connections/database/impalaConnection.py +1 -1
  467. metadata/generated/schema/entity/services/connections/database/mariaDBConnection.py +1 -1
  468. metadata/generated/schema/entity/services/connections/database/mongoDBConnection.py +1 -1
  469. metadata/generated/schema/entity/services/connections/database/mssqlConnection.py +1 -1
  470. metadata/generated/schema/entity/services/connections/database/mysqlConnection.py +1 -1
  471. metadata/generated/schema/entity/services/connections/database/oracleConnection.py +1 -1
  472. metadata/generated/schema/entity/services/connections/database/pinotDBConnection.py +1 -1
  473. metadata/generated/schema/entity/services/connections/database/postgresConnection.py +1 -1
  474. metadata/generated/schema/entity/services/connections/database/prestoConnection.py +1 -1
  475. metadata/generated/schema/entity/services/connections/database/redshiftConnection.py +1 -1
  476. metadata/generated/schema/entity/services/connections/database/salesforceConnection.py +1 -1
  477. metadata/generated/schema/entity/services/connections/database/sapErpConnection.py +1 -1
  478. metadata/generated/schema/entity/services/connections/database/sapHana/__init__.py +1 -1
  479. metadata/generated/schema/entity/services/connections/database/sapHana/sapHanaHDBConnection.py +1 -1
  480. metadata/generated/schema/entity/services/connections/database/sapHana/sapHanaSQLConnection.py +1 -1
  481. metadata/generated/schema/entity/services/connections/database/sapHanaConnection.py +1 -1
  482. metadata/generated/schema/entity/services/connections/database/sasConnection.py +1 -1
  483. metadata/generated/schema/entity/services/connections/database/serviceNowConnection.py +1 -1
  484. metadata/generated/schema/entity/services/connections/database/singleStoreConnection.py +1 -1
  485. metadata/generated/schema/entity/services/connections/database/snowflakeConnection.py +1 -1
  486. metadata/generated/schema/entity/services/connections/database/sqliteConnection.py +1 -1
  487. metadata/generated/schema/entity/services/connections/database/ssasConnection.py +1 -1
  488. metadata/generated/schema/entity/services/connections/database/synapseConnection.py +1 -1
  489. metadata/generated/schema/entity/services/connections/database/teradataConnection.py +1 -1
  490. metadata/generated/schema/entity/services/connections/database/timescaleConnection.py +162 -0
  491. metadata/generated/schema/entity/services/connections/database/trinoConnection.py +1 -1
  492. metadata/generated/schema/entity/services/connections/database/unityCatalogConnection.py +14 -6
  493. metadata/generated/schema/entity/services/connections/database/verticaConnection.py +1 -1
  494. metadata/generated/schema/entity/services/connections/drive/__init__.py +1 -1
  495. metadata/generated/schema/entity/services/connections/drive/customDriveConnection.py +34 -1
  496. metadata/generated/schema/entity/services/connections/drive/googleDriveConnection.py +34 -1
  497. metadata/generated/schema/entity/services/connections/drive/sharePointConnection.py +34 -1
  498. metadata/generated/schema/entity/services/connections/messaging/__init__.py +1 -1
  499. metadata/generated/schema/entity/services/connections/messaging/customMessagingConnection.py +1 -1
  500. metadata/generated/schema/entity/services/connections/messaging/kafkaConnection.py +1 -1
  501. metadata/generated/schema/entity/services/connections/messaging/kinesisConnection.py +1 -1
  502. metadata/generated/schema/entity/services/connections/messaging/pulsarConnection.py +1 -1
  503. metadata/generated/schema/entity/services/connections/messaging/redpandaConnection.py +1 -1
  504. metadata/generated/schema/entity/services/connections/messaging/saslMechanismType.py +1 -1
  505. metadata/generated/schema/entity/services/connections/metadata/__init__.py +1 -1
  506. metadata/generated/schema/entity/services/connections/metadata/alationConnection.py +1 -1
  507. metadata/generated/schema/entity/services/connections/metadata/alationSinkConnection.py +1 -1
  508. metadata/generated/schema/entity/services/connections/metadata/amundsenConnection.py +1 -1
  509. metadata/generated/schema/entity/services/connections/metadata/atlasConnection.py +1 -1
  510. metadata/generated/schema/entity/services/connections/metadata/metadataESConnection.py +1 -1
  511. metadata/generated/schema/entity/services/connections/metadata/openMetadataConnection.py +1 -1
  512. metadata/generated/schema/entity/services/connections/mlmodel/__init__.py +1 -1
  513. metadata/generated/schema/entity/services/connections/mlmodel/customMlModelConnection.py +1 -1
  514. metadata/generated/schema/entity/services/connections/mlmodel/mlflowConnection.py +1 -1
  515. metadata/generated/schema/entity/services/connections/mlmodel/sageMakerConnection.py +1 -1
  516. metadata/generated/schema/entity/services/connections/mlmodel/sklearnConnection.py +1 -1
  517. metadata/generated/schema/entity/services/connections/mlmodel/vertexaiConnection.py +1 -1
  518. metadata/generated/schema/entity/services/connections/pipeline/__init__.py +1 -1
  519. metadata/generated/schema/entity/services/connections/pipeline/airbyteConnection.py +1 -1
  520. metadata/generated/schema/entity/services/connections/pipeline/airflowConnection.py +1 -1
  521. metadata/generated/schema/entity/services/connections/pipeline/backendConnection.py +1 -1
  522. metadata/generated/schema/entity/services/connections/pipeline/customPipelineConnection.py +1 -1
  523. metadata/generated/schema/entity/services/connections/pipeline/dagsterConnection.py +1 -1
  524. metadata/generated/schema/entity/services/connections/pipeline/databricksPipelineConnection.py +1 -1
  525. metadata/generated/schema/entity/services/connections/pipeline/datafactoryConnection.py +1 -1
  526. metadata/generated/schema/entity/services/connections/pipeline/dbtCloudConnection.py +1 -1
  527. metadata/generated/schema/entity/services/connections/pipeline/domoPipelineConnection.py +1 -1
  528. metadata/generated/schema/entity/services/connections/pipeline/fivetranConnection.py +1 -1
  529. metadata/generated/schema/entity/services/connections/pipeline/flinkConnection.py +1 -1
  530. metadata/generated/schema/entity/services/connections/pipeline/gluePipelineConnection.py +1 -1
  531. metadata/generated/schema/entity/services/connections/pipeline/kafkaConnectConnection.py +1 -1
  532. metadata/generated/schema/entity/services/connections/pipeline/matillion/__init__.py +1 -1
  533. metadata/generated/schema/entity/services/connections/pipeline/matillion/matillionETL.py +1 -1
  534. metadata/generated/schema/entity/services/connections/pipeline/matillionConnection.py +1 -1
  535. metadata/generated/schema/entity/services/connections/pipeline/nifi/__init__.py +1 -1
  536. metadata/generated/schema/entity/services/connections/pipeline/nifi/basicAuth.py +1 -1
  537. metadata/generated/schema/entity/services/connections/pipeline/nifi/clientCertificateAuth.py +1 -1
  538. metadata/generated/schema/entity/services/connections/pipeline/nifiConnection.py +1 -1
  539. metadata/generated/schema/entity/services/connections/pipeline/openLineageConnection.py +1 -1
  540. metadata/generated/schema/entity/services/connections/pipeline/snowplowConnection.py +93 -0
  541. metadata/generated/schema/entity/services/connections/pipeline/sparkConnection.py +1 -1
  542. metadata/generated/schema/entity/services/connections/pipeline/splineConnection.py +1 -1
  543. metadata/generated/schema/entity/services/connections/pipeline/ssisConnection.py +1 -1
  544. metadata/generated/schema/entity/services/connections/pipeline/stitchConnection.py +1 -1
  545. metadata/generated/schema/entity/services/connections/pipeline/wherescapeConnection.py +1 -1
  546. metadata/generated/schema/entity/services/connections/search/__init__.py +1 -1
  547. metadata/generated/schema/entity/services/connections/search/customSearchConnection.py +1 -1
  548. metadata/generated/schema/entity/services/connections/search/elasticSearch/__init__.py +1 -1
  549. metadata/generated/schema/entity/services/connections/search/elasticSearch/apiAuth.py +1 -1
  550. metadata/generated/schema/entity/services/connections/search/elasticSearch/basicAuth.py +1 -1
  551. metadata/generated/schema/entity/services/connections/search/elasticSearchConnection.py +1 -1
  552. metadata/generated/schema/entity/services/connections/search/openSearchConnection.py +1 -1
  553. metadata/generated/schema/entity/services/connections/security/__init__.py +1 -1
  554. metadata/generated/schema/entity/services/connections/security/ranger/__init__.py +1 -1
  555. metadata/generated/schema/entity/services/connections/security/ranger/basicAuth.py +1 -1
  556. metadata/generated/schema/entity/services/connections/security/rangerConnection.py +1 -1
  557. metadata/generated/schema/entity/services/connections/serviceConnection.py +1 -1
  558. metadata/generated/schema/entity/services/connections/storage/__init__.py +1 -1
  559. metadata/generated/schema/entity/services/connections/storage/adlsConnection.py +1 -1
  560. metadata/generated/schema/entity/services/connections/storage/customStorageConnection.py +1 -1
  561. metadata/generated/schema/entity/services/connections/storage/gcsConnection.py +1 -1
  562. metadata/generated/schema/entity/services/connections/storage/s3Connection.py +1 -1
  563. metadata/generated/schema/entity/services/connections/testConnectionDefinition.py +1 -1
  564. metadata/generated/schema/entity/services/connections/testConnectionResult.py +1 -1
  565. metadata/generated/schema/entity/services/dashboardService.py +1 -1
  566. metadata/generated/schema/entity/services/databaseService.py +4 -1
  567. metadata/generated/schema/entity/services/driveService.py +1 -1
  568. metadata/generated/schema/entity/services/ingestionPipelines/__init__.py +1 -1
  569. metadata/generated/schema/entity/services/ingestionPipelines/ingestionPipeline.py +8 -1
  570. metadata/generated/schema/entity/services/ingestionPipelines/pipelineServiceClientResponse.py +1 -1
  571. metadata/generated/schema/entity/services/ingestionPipelines/reverseIngestionResponse.py +1 -1
  572. metadata/generated/schema/entity/services/ingestionPipelines/status.py +1 -1
  573. metadata/generated/schema/entity/services/messagingService.py +1 -1
  574. metadata/generated/schema/entity/services/metadataService.py +1 -1
  575. metadata/generated/schema/entity/services/mlmodelService.py +1 -1
  576. metadata/generated/schema/entity/services/pipelineService.py +4 -1
  577. metadata/generated/schema/entity/services/searchService.py +1 -1
  578. metadata/generated/schema/entity/services/securityService.py +1 -1
  579. metadata/generated/schema/entity/services/serviceType.py +1 -1
  580. metadata/generated/schema/entity/services/storageService.py +1 -1
  581. metadata/generated/schema/entity/teams/__init__.py +1 -1
  582. metadata/generated/schema/entity/teams/persona.py +1 -1
  583. metadata/generated/schema/entity/teams/role.py +1 -1
  584. metadata/generated/schema/entity/teams/team.py +1 -1
  585. metadata/generated/schema/entity/teams/teamHierarchy.py +1 -1
  586. metadata/generated/schema/entity/teams/user.py +1 -1
  587. metadata/generated/schema/entity/type.py +1 -1
  588. metadata/generated/schema/entity/utils/__init__.py +1 -1
  589. metadata/generated/schema/entity/utils/entitiesCount.py +1 -1
  590. metadata/generated/schema/entity/utils/servicesCount.py +1 -1
  591. metadata/generated/schema/entity/utils/supersetApiConnection.py +1 -1
  592. metadata/generated/schema/events/__init__.py +1 -1
  593. metadata/generated/schema/events/alertMetrics.py +1 -1
  594. metadata/generated/schema/events/api/__init__.py +1 -1
  595. metadata/generated/schema/events/api/createEventSubscription.py +1 -1
  596. metadata/generated/schema/events/api/eventSubscriptionDiagnosticInfo.py +1 -1
  597. metadata/generated/schema/events/api/eventsRecord.py +1 -1
  598. metadata/generated/schema/events/api/testEventSubscriptionDestination.py +1 -1
  599. metadata/generated/schema/events/api/typedEvent.py +1 -1
  600. metadata/generated/schema/events/emailAlertConfig.py +1 -1
  601. metadata/generated/schema/events/eventFilterRule.py +1 -1
  602. metadata/generated/schema/events/eventSubscription.py +16 -1
  603. metadata/generated/schema/events/eventSubscriptionOffset.py +1 -1
  604. metadata/generated/schema/events/failedEvent.py +1 -1
  605. metadata/generated/schema/events/failedEventResponse.py +1 -1
  606. metadata/generated/schema/events/filterResourceDescriptor.py +1 -1
  607. metadata/generated/schema/events/statusContext.py +1 -1
  608. metadata/generated/schema/events/subscriptionResourceDescriptor.py +1 -1
  609. metadata/generated/schema/events/subscriptionStatus.py +1 -1
  610. metadata/generated/schema/events/testDestinationStatus.py +1 -1
  611. metadata/generated/schema/governance/workflows/__init__.py +1 -1
  612. metadata/generated/schema/governance/workflows/elements/__init__.py +1 -1
  613. metadata/generated/schema/governance/workflows/elements/edge.py +1 -1
  614. metadata/generated/schema/governance/workflows/elements/nodeSubType.py +1 -1
  615. metadata/generated/schema/governance/workflows/elements/nodeType.py +1 -1
  616. metadata/generated/schema/governance/workflows/elements/nodes/__init__.py +1 -1
  617. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/__init__.py +1 -1
  618. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/checkEntityAttributesTask.py +1 -1
  619. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/createAndRunIngestionPipelineTask.py +1 -1
  620. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/runAppTask.py +1 -1
  621. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/setEntityCertificationTask.py +1 -1
  622. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/setGlossaryTermStatusTask.py +11 -12
  623. metadata/generated/schema/governance/workflows/elements/nodes/endEvent/__init__.py +1 -1
  624. metadata/generated/schema/governance/workflows/elements/nodes/endEvent/endEvent.py +1 -1
  625. metadata/generated/schema/governance/workflows/elements/nodes/gateway/__init__.py +1 -1
  626. metadata/generated/schema/governance/workflows/elements/nodes/gateway/parallelGateway.py +1 -1
  627. metadata/generated/schema/governance/workflows/elements/nodes/startEvent/__init__.py +1 -1
  628. metadata/generated/schema/governance/workflows/elements/nodes/startEvent/startEvent.py +1 -1
  629. metadata/generated/schema/governance/workflows/elements/nodes/userTask/__init__.py +1 -1
  630. metadata/generated/schema/governance/workflows/elements/nodes/userTask/userApprovalTask.py +1 -1
  631. metadata/generated/schema/governance/workflows/elements/triggers/__init__.py +1 -1
  632. metadata/generated/schema/governance/workflows/elements/triggers/eventBasedEntityTrigger.py +1 -1
  633. metadata/generated/schema/governance/workflows/elements/triggers/noOpTrigger.py +1 -1
  634. metadata/generated/schema/governance/workflows/elements/triggers/periodicBatchEntityTrigger.py +1 -1
  635. metadata/generated/schema/governance/workflows/workflowDefinition.py +1 -1
  636. metadata/generated/schema/governance/workflows/workflowInstance.py +1 -1
  637. metadata/generated/schema/governance/workflows/workflowInstanceState.py +1 -1
  638. metadata/generated/schema/jobs/__init__.py +1 -1
  639. metadata/generated/schema/jobs/backgroundJob.py +1 -1
  640. metadata/generated/schema/jobs/enumCleanupArgs.py +1 -1
  641. metadata/generated/schema/metadataIngestion/__init__.py +1 -1
  642. metadata/generated/schema/metadataIngestion/apiServiceMetadataPipeline.py +1 -1
  643. metadata/generated/schema/metadataIngestion/application.py +8 -1
  644. metadata/generated/schema/metadataIngestion/applicationPipeline.py +1 -1
  645. metadata/generated/schema/metadataIngestion/dashboardServiceMetadataPipeline.py +1 -1
  646. metadata/generated/schema/metadataIngestion/dataInsightPipeline.py +1 -1
  647. metadata/generated/schema/metadataIngestion/databaseServiceAutoClassificationPipeline.py +1 -1
  648. metadata/generated/schema/metadataIngestion/databaseServiceMetadataPipeline.py +1 -1
  649. metadata/generated/schema/metadataIngestion/databaseServiceProfilerPipeline.py +1 -1
  650. metadata/generated/schema/metadataIngestion/databaseServiceQueryLineagePipeline.py +1 -1
  651. metadata/generated/schema/metadataIngestion/databaseServiceQueryUsagePipeline.py +1 -1
  652. metadata/generated/schema/metadataIngestion/dbtPipeline.py +1 -1
  653. metadata/generated/schema/metadataIngestion/dbtconfig/__init__.py +1 -1
  654. metadata/generated/schema/metadataIngestion/dbtconfig/dbtAzureConfig.py +1 -1
  655. metadata/generated/schema/metadataIngestion/dbtconfig/dbtBucketDetails.py +1 -1
  656. metadata/generated/schema/metadataIngestion/dbtconfig/dbtCloudConfig.py +1 -1
  657. metadata/generated/schema/metadataIngestion/dbtconfig/dbtGCSConfig.py +1 -1
  658. metadata/generated/schema/metadataIngestion/dbtconfig/dbtHttpConfig.py +1 -1
  659. metadata/generated/schema/metadataIngestion/dbtconfig/dbtLocalConfig.py +1 -1
  660. metadata/generated/schema/metadataIngestion/dbtconfig/dbtS3Config.py +1 -1
  661. metadata/generated/schema/metadataIngestion/driveServiceMetadataPipeline.py +1 -1
  662. metadata/generated/schema/metadataIngestion/engine/__init__.py +1 -1
  663. metadata/generated/schema/metadataIngestion/engine/nativeEngineConfig.py +1 -1
  664. metadata/generated/schema/metadataIngestion/engine/sparkEngineConfig.py +1 -1
  665. metadata/generated/schema/metadataIngestion/messagingServiceMetadataPipeline.py +1 -1
  666. metadata/generated/schema/metadataIngestion/metadataToElasticSearchPipeline.py +1 -1
  667. metadata/generated/schema/metadataIngestion/mlmodelServiceMetadataPipeline.py +29 -2
  668. metadata/generated/schema/metadataIngestion/pipelineServiceMetadataPipeline.py +1 -1
  669. metadata/generated/schema/metadataIngestion/reverseIngestionPipeline.py +1 -1
  670. metadata/generated/schema/metadataIngestion/reverseingestionconfig/__init__.py +1 -1
  671. metadata/generated/schema/metadataIngestion/reverseingestionconfig/descriptionConfig.py +1 -1
  672. metadata/generated/schema/metadataIngestion/reverseingestionconfig/ownerConfig.py +1 -1
  673. metadata/generated/schema/metadataIngestion/reverseingestionconfig/tagsConfig.py +1 -1
  674. metadata/generated/schema/metadataIngestion/searchServiceMetadataPipeline.py +1 -1
  675. metadata/generated/schema/metadataIngestion/securityServiceMetadataPipeline.py +1 -1
  676. metadata/generated/schema/metadataIngestion/storage/__init__.py +1 -1
  677. metadata/generated/schema/metadataIngestion/storage/containerMetadataConfig.py +1 -1
  678. metadata/generated/schema/metadataIngestion/storage/manifestMetadataConfig.py +1 -1
  679. metadata/generated/schema/metadataIngestion/storage/storageBucketDetails.py +1 -1
  680. metadata/generated/schema/metadataIngestion/storage/storageMetadataADLSConfig.py +1 -1
  681. metadata/generated/schema/metadataIngestion/storage/storageMetadataGCSConfig.py +1 -1
  682. metadata/generated/schema/metadataIngestion/storage/storageMetadataHttpConfig.py +1 -1
  683. metadata/generated/schema/metadataIngestion/storage/storageMetadataLocalConfig.py +1 -1
  684. metadata/generated/schema/metadataIngestion/storage/storageMetadataS3Config.py +1 -1
  685. metadata/generated/schema/metadataIngestion/storageServiceMetadataPipeline.py +1 -1
  686. metadata/generated/schema/metadataIngestion/testSuitePipeline.py +1 -1
  687. metadata/generated/schema/metadataIngestion/workflow.py +8 -1
  688. metadata/generated/schema/monitoring/__init__.py +1 -1
  689. metadata/generated/schema/monitoring/eventMonitorProvider.py +1 -1
  690. metadata/generated/schema/scim/__init__.py +1 -1
  691. metadata/generated/schema/scim/scimConfiguration.py +1 -1
  692. metadata/generated/schema/search/__init__.py +1 -1
  693. metadata/generated/schema/search/aggregationRequest.py +1 -1
  694. metadata/generated/schema/search/searchRequest.py +8 -1
  695. metadata/generated/schema/security/__init__.py +1 -1
  696. metadata/generated/schema/security/client/__init__.py +1 -1
  697. metadata/generated/schema/security/client/auth0SSOClientConfig.py +1 -1
  698. metadata/generated/schema/security/client/azureSSOClientConfig.py +1 -1
  699. metadata/generated/schema/security/client/customOidcSSOClientConfig.py +1 -1
  700. metadata/generated/schema/security/client/googleSSOClientConfig.py +1 -1
  701. metadata/generated/schema/security/client/oidcClientConfig.py +6 -10
  702. metadata/generated/schema/security/client/oktaSSOClientConfig.py +1 -1
  703. metadata/generated/schema/security/client/openMetadataJWTClientConfig.py +1 -1
  704. metadata/generated/schema/security/client/samlSSOClientConfig.py +6 -6
  705. metadata/generated/schema/security/credentials/__init__.py +1 -1
  706. metadata/generated/schema/security/credentials/accessTokenAuth.py +1 -1
  707. metadata/generated/schema/security/credentials/apiAccessTokenAuth.py +1 -1
  708. metadata/generated/schema/security/credentials/awsCredentials.py +1 -1
  709. metadata/generated/schema/security/credentials/azureCredentials.py +1 -1
  710. metadata/generated/schema/security/credentials/basicAuth.py +1 -1
  711. metadata/generated/schema/security/credentials/bitbucketCredentials.py +1 -1
  712. metadata/generated/schema/security/credentials/gcpCredentials.py +1 -1
  713. metadata/generated/schema/security/credentials/gcpExternalAccount.py +1 -1
  714. metadata/generated/schema/security/credentials/gcpValues.py +1 -1
  715. metadata/generated/schema/security/credentials/gitCredentials.py +1 -1
  716. metadata/generated/schema/security/credentials/githubCredentials.py +1 -1
  717. metadata/generated/schema/security/credentials/gitlabCredentials.py +1 -1
  718. metadata/generated/schema/security/credentials/kubernetesCredentials.py +1 -1
  719. metadata/generated/schema/security/sasl/__init__.py +1 -1
  720. metadata/generated/schema/security/sasl/saslClientConfig.py +1 -1
  721. metadata/generated/schema/security/secrets/__init__.py +1 -1
  722. metadata/generated/schema/security/secrets/secretsManagerClientLoader.py +1 -1
  723. metadata/generated/schema/security/secrets/secretsManagerConfiguration.py +1 -1
  724. metadata/generated/schema/security/secrets/secretsManagerProvider.py +1 -1
  725. metadata/generated/schema/security/securityConfiguration.py +1 -1
  726. metadata/generated/schema/security/ssl/__init__.py +1 -1
  727. metadata/generated/schema/security/ssl/validateSSLClientConfig.py +1 -1
  728. metadata/generated/schema/security/ssl/verifySSLConfig.py +1 -1
  729. metadata/generated/schema/settings/__init__.py +1 -1
  730. metadata/generated/schema/settings/settings.py +5 -2
  731. metadata/generated/schema/system/__init__.py +1 -1
  732. metadata/generated/schema/system/entityError.py +1 -1
  733. metadata/generated/schema/system/eventPublisherJob.py +1 -1
  734. metadata/generated/schema/system/indexingError.py +1 -1
  735. metadata/generated/schema/system/limitsResponse.py +1 -1
  736. metadata/generated/schema/system/securityValidationResponse.py +62 -0
  737. metadata/generated/schema/system/ui/__init__.py +1 -1
  738. metadata/generated/schema/system/ui/knowledgePanel.py +1 -1
  739. metadata/generated/schema/system/ui/navigationItem.py +1 -1
  740. metadata/generated/schema/system/ui/page.py +5 -1
  741. metadata/generated/schema/system/ui/tab.py +1 -1
  742. metadata/generated/schema/system/ui/uiCustomization.py +1 -1
  743. metadata/generated/schema/system/validationResponse.py +8 -1
  744. metadata/generated/schema/tests/__init__.py +1 -1
  745. metadata/generated/schema/tests/assigned.py +1 -1
  746. metadata/generated/schema/tests/basic.py +1 -1
  747. metadata/generated/schema/tests/customMetric.py +1 -1
  748. metadata/generated/schema/tests/dataQualityReport.py +1 -1
  749. metadata/generated/schema/tests/resolved.py +1 -1
  750. metadata/generated/schema/tests/testCase.py +26 -2
  751. metadata/generated/schema/tests/testCaseResolutionStatus.py +1 -1
  752. metadata/generated/schema/tests/testDefinition.py +1 -1
  753. metadata/generated/schema/tests/testSuite.py +5 -1
  754. metadata/generated/schema/type/__init__.py +1 -1
  755. metadata/generated/schema/type/apiSchema.py +1 -1
  756. metadata/generated/schema/type/assetCertification.py +1 -1
  757. metadata/generated/schema/type/auditLog.py +1 -1
  758. metadata/generated/schema/type/basic.py +9 -1
  759. metadata/generated/schema/type/bulkOperationResult.py +1 -1
  760. metadata/generated/schema/type/changeEvent.py +1 -1
  761. metadata/generated/schema/type/changeEventType.py +1 -1
  762. metadata/generated/schema/type/changeSummaryMap.py +1 -1
  763. metadata/generated/schema/type/collectionDescriptor.py +1 -1
  764. metadata/generated/schema/type/contextRecognizer.py +50 -0
  765. metadata/generated/schema/type/contractExecutionStatus.py +1 -1
  766. metadata/generated/schema/type/csvDocumentation.py +1 -1
  767. metadata/generated/schema/type/csvErrorType.py +1 -1
  768. metadata/generated/schema/type/csvFile.py +1 -1
  769. metadata/generated/schema/type/csvImportResult.py +1 -1
  770. metadata/generated/schema/type/customProperties/__init__.py +1 -1
  771. metadata/generated/schema/type/customProperties/complexTypes.py +1 -1
  772. metadata/generated/schema/type/customProperties/enumConfig.py +1 -1
  773. metadata/generated/schema/type/customProperties/tableConfig.py +1 -1
  774. metadata/generated/schema/type/customProperty.py +1 -1
  775. metadata/generated/schema/type/customRecognizer.py +39 -0
  776. metadata/generated/schema/type/dailyCount.py +1 -1
  777. metadata/generated/schema/type/databaseConnectionConfig.py +1 -1
  778. metadata/generated/schema/type/denyListRecognizer.py +37 -0
  779. metadata/generated/schema/type/entityHierarchy.py +1 -1
  780. metadata/generated/schema/type/entityHistory.py +1 -1
  781. metadata/generated/schema/type/entityLineage.py +1 -1
  782. metadata/generated/schema/type/entityProfile.py +1 -1
  783. metadata/generated/schema/type/entityReference.py +1 -1
  784. metadata/generated/schema/type/entityReferenceList.py +1 -1
  785. metadata/generated/schema/type/entityRelationship/__init__.py +1 -1
  786. metadata/generated/schema/type/entityRelationship/nodeInformation.py +1 -1
  787. metadata/generated/schema/type/entityUsage.py +1 -1
  788. metadata/generated/schema/type/filterPattern.py +1 -1
  789. metadata/generated/schema/type/function.py +1 -1
  790. metadata/generated/schema/type/include.py +1 -1
  791. metadata/generated/schema/type/jdbcConnection.py +1 -1
  792. metadata/generated/schema/type/layerPaging.py +1 -1
  793. metadata/generated/schema/type/lifeCycle.py +1 -1
  794. metadata/generated/schema/type/paging.py +1 -1
  795. metadata/generated/schema/type/patternRecognizer.py +39 -0
  796. metadata/generated/schema/type/personaPreferences.py +1 -1
  797. metadata/generated/schema/type/piiEntity.py +48 -0
  798. metadata/generated/schema/type/predefinedRecognizer.py +85 -0
  799. metadata/generated/schema/type/profile.py +1 -1
  800. metadata/generated/schema/type/queryParserData.py +1 -1
  801. metadata/generated/schema/type/reaction.py +1 -1
  802. metadata/generated/schema/type/recognizer.py +159 -0
  803. metadata/generated/schema/type/recognizerFeedback.py +120 -0
  804. metadata/generated/schema/type/recognizers/__init__.py +3 -0
  805. metadata/generated/schema/type/recognizers/patterns.py +29 -0
  806. metadata/generated/schema/type/recognizers/regexFlags.py +29 -0
  807. metadata/generated/schema/type/schedule.py +1 -1
  808. metadata/generated/schema/type/schema.py +1 -1
  809. metadata/generated/schema/type/status.py +16 -0
  810. metadata/generated/schema/type/tableQuery.py +1 -1
  811. metadata/generated/schema/type/tableUsageCount.py +1 -1
  812. metadata/generated/schema/type/tagLabel.py +8 -1
  813. metadata/generated/schema/type/usageDetails.py +1 -1
  814. metadata/generated/schema/type/usageRequest.py +1 -1
  815. metadata/generated/schema/type/votes.py +1 -1
  816. metadata/ingestion/models/patch_request.py +2 -0
  817. metadata/ingestion/ometa/client.py +2 -2
  818. metadata/ingestion/ometa/mixins/csv_mixin.py +180 -0
  819. metadata/ingestion/ometa/mixins/ingestion_pipeline_mixin.py +26 -0
  820. metadata/ingestion/ometa/mixins/logs_mixin.py +336 -0
  821. metadata/ingestion/ometa/mixins/patch_mixin.py +23 -9
  822. metadata/ingestion/ometa/ometa_api.py +20 -1
  823. metadata/ingestion/ometa/routes.py +3 -0
  824. metadata/ingestion/source/dashboard/domodashboard/metadata.py +19 -9
  825. metadata/ingestion/source/dashboard/looker/metadata.py +4 -0
  826. metadata/ingestion/source/dashboard/metabase/client.py +31 -9
  827. metadata/ingestion/source/dashboard/metabase/metadata.py +4 -0
  828. metadata/ingestion/source/dashboard/powerbi/metadata.py +27 -0
  829. metadata/ingestion/source/dashboard/redash/metadata.py +4 -0
  830. metadata/ingestion/source/dashboard/sigma/metadata.py +4 -0
  831. metadata/ingestion/source/dashboard/superset/api_source.py +2 -0
  832. metadata/ingestion/source/dashboard/superset/db_source.py +2 -0
  833. metadata/ingestion/source/dashboard/superset/mixin.py +2 -0
  834. metadata/ingestion/source/dashboard/tableau/client.py +21 -10
  835. metadata/ingestion/source/dashboard/tableau/metadata.py +7 -1
  836. metadata/ingestion/source/database/bigquery/connection.py +4 -0
  837. metadata/ingestion/source/database/bigquery/metadata.py +39 -26
  838. metadata/ingestion/source/database/column_type_parser.py +1 -1
  839. metadata/ingestion/source/database/common_pg_mappings.py +7 -0
  840. metadata/ingestion/source/database/databricks/auth.py +99 -0
  841. metadata/ingestion/source/database/databricks/client.py +7 -2
  842. metadata/ingestion/source/database/databricks/connection.py +63 -5
  843. metadata/ingestion/source/database/databricks/queries.py +61 -0
  844. metadata/ingestion/source/database/iceberg/metadata.py +44 -1
  845. metadata/ingestion/source/database/mariadb/metadata.py +86 -1
  846. metadata/ingestion/source/database/mariadb/models.py +36 -0
  847. metadata/ingestion/source/database/mariadb/queries.py +43 -0
  848. metadata/ingestion/source/database/oracle/connection.py +4 -0
  849. metadata/ingestion/source/database/oracle/queries.py +18 -0
  850. metadata/ingestion/source/database/postgres/connection.py +6 -0
  851. metadata/ingestion/source/database/postgres/queries.py +22 -0
  852. metadata/ingestion/source/database/sample_data.py +24 -8
  853. metadata/ingestion/source/database/snowflake/metadata.py +16 -6
  854. metadata/ingestion/source/database/sql_column_handler.py +11 -3
  855. metadata/ingestion/source/database/timescale/__init__.py +3 -0
  856. metadata/ingestion/source/database/timescale/connection.py +103 -0
  857. metadata/ingestion/source/database/timescale/lineage.py +124 -0
  858. metadata/ingestion/source/database/timescale/metadata.py +228 -0
  859. metadata/ingestion/source/database/timescale/models.py +60 -0
  860. metadata/ingestion/source/database/timescale/queries.py +96 -0
  861. metadata/ingestion/source/database/timescale/query_parser.py +106 -0
  862. metadata/ingestion/source/database/timescale/service_spec.py +12 -0
  863. metadata/ingestion/source/database/timescale/usage.py +43 -0
  864. metadata/ingestion/source/database/timescale/utils.py +545 -0
  865. metadata/ingestion/source/database/unitycatalog/client.py +34 -0
  866. metadata/ingestion/source/database/unitycatalog/connection.py +36 -4
  867. metadata/ingestion/source/messaging/kafka/connection.py +13 -4
  868. metadata/ingestion/source/metadata/amundsen/client.py +6 -6
  869. metadata/ingestion/source/mlmodel/mlmodel_service.py +75 -1
  870. metadata/ingestion/source/search/elasticsearch/connection.py +1 -1
  871. metadata/pii/algorithms/classifiers.py +63 -1
  872. metadata/pii/algorithms/presidio_recognizer_factory.py +302 -0
  873. metadata/pii/algorithms/presidio_utils.py +38 -10
  874. metadata/pii/algorithms/utils.py +4 -0
  875. metadata/pii/base_processor.py +2 -1
  876. metadata/pii/processor.py +10 -4
  877. metadata/pii/processor_factory.py +28 -0
  878. metadata/pii/scanners/custom_ner_scanner.py +290 -0
  879. metadata/pii/tag_analyzer.py +124 -0
  880. metadata/pii/tag_processor.py +100 -0
  881. metadata/profiler/metrics/hybrid/cardinality_distribution.py +232 -0
  882. metadata/profiler/metrics/hybrid/histogram.py +1 -1
  883. metadata/profiler/metrics/registry.py +4 -0
  884. metadata/profiler/orm/converter/converter_registry.py +2 -0
  885. metadata/profiler/orm/converter/trino/__init__.py +14 -0
  886. metadata/profiler/orm/converter/trino/converter.py +39 -0
  887. metadata/profiler/orm/functions/conn_test.py +5 -0
  888. metadata/profiler/orm/registry.py +6 -0
  889. metadata/profiler/orm/types/__init__.py +10 -0
  890. metadata/profiler/orm/types/trino.py +70 -0
  891. metadata/profiler/processor/default.py +1 -0
  892. metadata/sdk/__init__.py +188 -0
  893. metadata/sdk/api/__init__.py +7 -0
  894. metadata/sdk/api/lineage.py +421 -0
  895. metadata/sdk/api/search.py +382 -0
  896. metadata/sdk/client.py +91 -0
  897. metadata/sdk/config.py +121 -0
  898. metadata/sdk/entities/__init__.py +64 -0
  899. metadata/sdk/entities/apicollections.py +19 -0
  900. metadata/sdk/entities/apiendpoints.py +19 -0
  901. metadata/sdk/entities/base.py +487 -0
  902. metadata/sdk/entities/charts.py +17 -0
  903. metadata/sdk/entities/classifications.py +21 -0
  904. metadata/sdk/entities/containers.py +17 -0
  905. metadata/sdk/entities/custom_properties.py +144 -0
  906. metadata/sdk/entities/dashboard_services.py +18 -0
  907. metadata/sdk/entities/dashboarddatamodels.py +21 -0
  908. metadata/sdk/entities/dashboards.py +17 -0
  909. metadata/sdk/entities/database_services.py +18 -0
  910. metadata/sdk/entities/databases.py +17 -0
  911. metadata/sdk/entities/databaseschemas.py +19 -0
  912. metadata/sdk/entities/datacontracts.py +19 -0
  913. metadata/sdk/entities/dataproducts.py +19 -0
  914. metadata/sdk/entities/domains.py +17 -0
  915. metadata/sdk/entities/glossaries.py +17 -0
  916. metadata/sdk/entities/glossary_terms.py +18 -0
  917. metadata/sdk/entities/glossaryterms.py +19 -0
  918. metadata/sdk/entities/metrics.py +49 -0
  919. metadata/sdk/entities/mlmodels.py +17 -0
  920. metadata/sdk/entities/pipelines.py +17 -0
  921. metadata/sdk/entities/queries.py +17 -0
  922. metadata/sdk/entities/searchindexes.py +19 -0
  923. metadata/sdk/entities/storedprocedures.py +19 -0
  924. metadata/sdk/entities/tables.py +68 -0
  925. metadata/sdk/entities/tags.py +17 -0
  926. metadata/sdk/entities/teams.py +17 -0
  927. metadata/sdk/entities/testcases.py +17 -0
  928. metadata/sdk/entities/testdefinitions.py +19 -0
  929. metadata/sdk/entities/testsuites.py +17 -0
  930. metadata/sdk/entities/users.py +17 -0
  931. metadata/sdk/examples/builder_end_to_end.py +387 -0
  932. metadata/sdk/types.py +15 -0
  933. metadata/utils/datalake/datalake_utils.py +121 -0
  934. metadata/utils/elasticsearch.py +3 -0
  935. metadata/utils/fqn.py +18 -2
  936. metadata/utils/importer.py +3 -2
  937. metadata/utils/logger.py +10 -0
  938. metadata/utils/sqa_utils.py +3 -0
  939. metadata/utils/streamable_logger.py +525 -0
  940. metadata/workflow/base.py +41 -1
  941. metadata/workflow/classification.py +2 -2
  942. metadata/workflow/workflow_resource_metrics.py +111 -0
  943. metadata/workflow/workflow_status_mixin.py +1 -1
  944. {openmetadata_ingestion-1.9.12.0.dist-info → openmetadata_ingestion-1.10.0.0.dist-info}/METADATA +552 -552
  945. {openmetadata_ingestion-1.9.12.0.dist-info → openmetadata_ingestion-1.10.0.0.dist-info}/RECORD +949 -843
  946. {openmetadata_ingestion-1.9.12.0.dist-info → openmetadata_ingestion-1.10.0.0.dist-info}/LICENSE +0 -0
  947. {openmetadata_ingestion-1.9.12.0.dist-info → openmetadata_ingestion-1.10.0.0.dist-info}/WHEEL +0 -0
  948. {openmetadata_ingestion-1.9.12.0.dist-info → openmetadata_ingestion-1.10.0.0.dist-info}/entry_points.txt +0 -0
  949. {openmetadata_ingestion-1.9.12.0.dist-info → openmetadata_ingestion-1.10.0.0.dist-info}/top_level.txt +0 -0
@@ -20,6 +20,9 @@ from typing import Dict, List, Optional, Type, TypeVar, Union
20
20
 
21
21
  from pydantic import BaseModel
22
22
 
23
+ from metadata.generated.schema.entity.automations.response.queryRunnerResponse import (
24
+ QueryRunnerResponse,
25
+ )
23
26
  from metadata.generated.schema.entity.automations.workflow import (
24
27
  Workflow as AutomationWorkflow,
25
28
  )
@@ -128,6 +131,11 @@ class OMetaPatchMixin(OMetaPatchMixinBase):
128
131
  Given an Entity type and Source entity and Destination entity,
129
132
  generate a JSON Patch and apply it.
130
133
 
134
+ This method provides fine-grained control over entity updates and can
135
+ override fields that create_or_update() cannot due to server-side restrictions
136
+ across various entity types. Use override_metadata=True to force updates of
137
+ protected metadata fields.
138
+
131
139
  Args
132
140
  entity (T): Entity Type
133
141
  source: Source payload which is current state of the source in OpenMetadata
@@ -135,7 +143,8 @@ class OMetaPatchMixin(OMetaPatchMixinBase):
135
143
  allowed_fields: List of field names to filter from source and destination models
136
144
  restrict_update_fields: List of field names which will only support add operation
137
145
  array_entity_fields: List of array fields to sort for consistent patching
138
- override_metadata: Whether to override existing metadata fields
146
+ override_metadata: Whether to override existing metadata fields. Set to True
147
+ to force updates of protected fields across various entity types.
139
148
  skip_on_failure: Whether to skip the patch operation on failure (default: True)
140
149
 
141
150
  Returns
@@ -188,12 +197,16 @@ class OMetaPatchMixin(OMetaPatchMixinBase):
188
197
  """
189
198
  Given an Entity type and ID, JSON PATCH the description.
190
199
 
200
+ This method is useful when you need to update descriptions that cannot be
201
+ overridden through create_or_update() due to server-side business rules
202
+ across various entity types. Use force=True to override existing descriptions.
203
+
191
204
  Args
192
205
  entity (T): Entity Type
193
206
  source: source entity object
194
207
  description: new description to add
195
208
  force: if True, we will patch any existing description. Otherwise, we will maintain
196
- the existing data.
209
+ the existing data. Set to True to override existing descriptions across entity types.
197
210
  skip_on_failure: if True, return None on failure instead of raising exception
198
211
  Returns
199
212
  Updated Entity
@@ -547,7 +560,9 @@ class OMetaPatchMixin(OMetaPatchMixinBase):
547
560
  def patch_automation_workflow_response(
548
561
  self,
549
562
  automation_workflow: AutomationWorkflow,
550
- result: Union[TestConnectionResult, ReverseIngestionResponse],
563
+ result: Union[
564
+ TestConnectionResult, ReverseIngestionResponse, QueryRunnerResponse
565
+ ],
551
566
  workflow_status: WorkflowStatus,
552
567
  ) -> None:
553
568
  """
@@ -560,17 +575,16 @@ class OMetaPatchMixin(OMetaPatchMixinBase):
560
575
  }
561
576
 
562
577
  # for deserializing into json convert enum object to string
563
- if isinstance(result, TestConnectionResult):
564
- result_data[PatchField.VALUE]["status"] = result_data[PatchField.VALUE][
565
- "status"
566
- ].value
567
- else:
578
+ if isinstance(result, ReverseIngestionResponse):
568
579
  # Convert UUID in string
569
580
  data = result_data[PatchField.VALUE]
570
581
  data["serviceId"] = str(data["serviceId"])
571
582
  for operation_result in data["results"]:
572
583
  operation_result["id"] = str(operation_result["id"])
573
-
584
+ else:
585
+ result_data[PatchField.VALUE]["status"] = result_data[PatchField.VALUE][
586
+ "status"
587
+ ].value
574
588
  status_data: Dict = {
575
589
  PatchField.PATH: PatchPath.STATUS,
576
590
  PatchField.OPERATION: PatchOperation.ADD,
@@ -33,6 +33,7 @@ from metadata.generated.schema.type.entityReference import EntityReference
33
33
  from metadata.ingestion.models.custom_pydantic import BaseModel
34
34
  from metadata.ingestion.ometa.auth_provider import OpenMetadataAuthenticationProvider
35
35
  from metadata.ingestion.ometa.client import REST, APIError, ClientConfig
36
+ from metadata.ingestion.ometa.mixins.csv_mixin import CSVMixin
36
37
  from metadata.ingestion.ometa.mixins.custom_property_mixin import (
37
38
  OMetaCustomPropertyMixin,
38
39
  )
@@ -44,6 +45,7 @@ from metadata.ingestion.ometa.mixins.es_mixin import ESMixin
44
45
  from metadata.ingestion.ometa.mixins.ingestion_pipeline_mixin import (
45
46
  OMetaIngestionPipelineMixin,
46
47
  )
48
+ from metadata.ingestion.ometa.mixins.logs_mixin import OMetaLogsMixin
47
49
  from metadata.ingestion.ometa.mixins.mlmodel_mixin import OMetaMlModelMixin
48
50
  from metadata.ingestion.ometa.mixins.patch_mixin import OMetaPatchMixin
49
51
  from metadata.ingestion.ometa.mixins.pipeline_mixin import OMetaPipelineMixin
@@ -109,6 +111,7 @@ class OpenMetadataSettings(BaseSettings):
109
111
 
110
112
 
111
113
  class OpenMetadata(
114
+ CSVMixin,
112
115
  OMetaPipelineMixin,
113
116
  OMetaMlModelMixin,
114
117
  OMetaTableMixin,
@@ -123,6 +126,7 @@ class OpenMetadata(
123
126
  OMetaTestsMixin,
124
127
  DataInsightMixin,
125
128
  OMetaIngestionPipelineMixin,
129
+ OMetaLogsMixin,
126
130
  OMetaUserMixin,
127
131
  OMetaQueryMixin,
128
132
  OMetaRolePolicyMixin,
@@ -339,7 +343,22 @@ class OpenMetadata(
339
343
  return entity_class(**resp)
340
344
 
341
345
  def create_or_update(self, data: C) -> T:
342
- """Run a PUT requesting via create request C"""
346
+ """
347
+ Run a PUT request via create request C.
348
+
349
+ Note: This method uses PUT operations with server-side business rules that may prevent
350
+ certain field overwrites across various entity types for data integrity reasons. If you
351
+ need to override existing metadata fields, consider using patch methods instead:
352
+
353
+ - For descriptions: Use patch_description(force=True)
354
+ - For general metadata: Use patch(override_metadata=True)
355
+
356
+ Args:
357
+ data: Create request object
358
+
359
+ Returns:
360
+ Updated or created entity
361
+ """
343
362
  return self._create(data=data, method="put")
344
363
 
345
364
  def create(self, data: C) -> T:
@@ -328,5 +328,8 @@ ROUTES = {
328
328
  # Data Contracts
329
329
  DataContract.__name__: "/dataContracts",
330
330
  CreateDataContractRequest.__name__: "/dataContracts",
331
+ # Drives
332
+ DriveService.__name__: "/services/driveServices",
333
+ CreateDriveServiceRequest.__name__: "/services/driveServices",
331
334
  EntityProfile.__name__: "/entity/profiles",
332
335
  }
@@ -79,6 +79,8 @@ class DomodashboardSource(DashboardServiceSource):
79
79
  return cls(config, metadata)
80
80
 
81
81
  def get_dashboards_list(self) -> Optional[List[DomoDashboardDetails]]:
82
+ if not self.source_config.includeOwners:
83
+ logger.debug("Skipping owner information as includeOwners is False")
82
84
  dashboards = self.client.domo.page_list()
83
85
  dashboard_list = []
84
86
  for dashboard in dashboards:
@@ -104,15 +106,23 @@ class DomodashboardSource(DashboardServiceSource):
104
106
  def get_owner_ref(
105
107
  self, dashboard_details: DomoDashboardDetails
106
108
  ) -> Optional[EntityReferenceList]:
107
- for owner in dashboard_details.owners or []:
108
- try:
109
- owner_details = self.client.domo.users_get(owner.id)
110
- if owner_details.get("email"):
111
- return self.metadata.get_reference_by_email(owner_details["email"])
112
- except Exception as exc:
113
- logger.warning(
114
- f"Error while getting details of user {owner.displayName} - {exc}"
115
- )
109
+ try:
110
+ if not self.source_config.includeOwners:
111
+ return None
112
+ for owner in dashboard_details.owners or []:
113
+ try:
114
+ owner_details = self.client.domo.users_get(owner.id)
115
+ if owner_details.get("email"):
116
+ return self.metadata.get_reference_by_email(
117
+ owner_details["email"]
118
+ )
119
+ except Exception as exc:
120
+ logger.warning(
121
+ f"Error while getting details of user {owner.displayName} - {exc}"
122
+ )
123
+ except Exception as err:
124
+ logger.debug(traceback.format_exc())
125
+ logger.warning(f"Could not fetch owner data due to {err}")
116
126
  return None
117
127
 
118
128
  def yield_dashboard(
@@ -922,6 +922,8 @@ class LookerSource(DashboardServiceSource):
922
922
  """
923
923
  Get List of all dashboards
924
924
  """
925
+ if not self.source_config.includeOwners:
926
+ logger.debug("Skipping owner information as includeOwners is False")
925
927
  try:
926
928
  return list(
927
929
  self.client.all_dashboards(fields=",".join(LIST_DASHBOARD_FIELDS))
@@ -963,6 +965,8 @@ class LookerSource(DashboardServiceSource):
963
965
  Optional[EntityReference]
964
966
  """
965
967
  try:
968
+ if not self.source_config.includeOwners:
969
+ return None
966
970
  if dashboard_details.user_id is not None:
967
971
  dashboard_owner = self.client.user(dashboard_details.user_id)
968
972
  if dashboard_owner.email:
@@ -48,6 +48,7 @@ PASSWORD_HEADER = "password"
48
48
  SESSION_HEADERS = {"Content-Type": "application/json", "Accept": "*/*"}
49
49
  DEFAULT_TIMEOUT = 30
50
50
  METABASE_SESSION_HEADER = "X-Metabase-Session"
51
+ METABASE_API_HEADER = "X-API-KEY"
51
52
  API_VERSION = "api"
52
53
 
53
54
 
@@ -56,8 +57,13 @@ class MetabaseClient:
56
57
  Client Handling API communication with Metabase
57
58
  """
58
59
 
59
- def _get_metabase_session(self) -> str:
60
+ def _get_metabase_session(self) -> Optional[str]:
60
61
  try:
62
+ # If API token is provided, return None as we don't need a session
63
+ if self.config.apiKey:
64
+ return None
65
+
66
+ # Otherwise use username/password authentication
61
67
  params = {USERNAME_HEADER: self.config.username}
62
68
  if self.config.password:
63
69
  params[PASSWORD_HEADER] = self.config.password.get_secret_value()
@@ -82,14 +88,30 @@ class MetabaseClient:
82
88
  config: MetabaseConnection,
83
89
  ):
84
90
  self.config = config
85
- session_token = self._get_metabase_session()
86
- client_config: ClientConfig = ClientConfig(
87
- base_url=clean_uri(str(self.config.hostPort)),
88
- api_version=API_VERSION,
89
- auth_header=AUTHORIZATION_HEADER,
90
- auth_token=lambda: (NO_ACCESS_TOKEN, 0),
91
- extra_headers={METABASE_SESSION_HEADER: session_token},
92
- )
91
+
92
+ # Determine authentication method and set headers accordingly
93
+ if self.config.apiKey:
94
+ # Use API token authentication
95
+ client_config: ClientConfig = ClientConfig(
96
+ base_url=clean_uri(str(self.config.hostPort)),
97
+ api_version=API_VERSION,
98
+ auth_header=AUTHORIZATION_HEADER,
99
+ auth_token=lambda: (NO_ACCESS_TOKEN, 0),
100
+ extra_headers={
101
+ METABASE_API_HEADER: self.config.apiKey.get_secret_value()
102
+ },
103
+ )
104
+ else:
105
+ # Use session-based authentication
106
+ session_token = self._get_metabase_session()
107
+ client_config: ClientConfig = ClientConfig(
108
+ base_url=clean_uri(str(self.config.hostPort)),
109
+ api_version=API_VERSION,
110
+ auth_header=AUTHORIZATION_HEADER,
111
+ auth_token=lambda: (NO_ACCESS_TOKEN, 0),
112
+ extra_headers={METABASE_SESSION_HEADER: session_token},
113
+ )
114
+
93
115
  self.client = REST(client_config)
94
116
 
95
117
  def get_dashboards_list(
@@ -108,6 +108,8 @@ class MetabaseSource(DashboardServiceSource):
108
108
  """
109
109
  Get List of all dashboards
110
110
  """
111
+ if not self.source_config.includeOwners:
112
+ logger.debug("Skipping owner information as includeOwners is False")
111
113
  self.dashboards_list = self.client.get_dashboards_list(self.collections)
112
114
  return self.dashboards_list
113
115
 
@@ -180,6 +182,8 @@ class MetabaseSource(DashboardServiceSource):
180
182
  Get dashboard owner from email
181
183
  """
182
184
  try:
185
+ if not self.source_config.includeOwners:
186
+ return None
183
187
  if dashboard_details.creator_id:
184
188
  owner_details = self.client.get_user_details(
185
189
  dashboard_details.creator_id
@@ -302,6 +302,24 @@ class PowerbiSource(DashboardServiceSource):
302
302
  f"{workspace_id}/reports/{dashboard_id}/ReportSection?experience=power-bi"
303
303
  )
304
304
 
305
+ def _get_dataset_url(self, workspace_id: str, dataset_id: str) -> str:
306
+ """
307
+ Method to build the dataset url
308
+ """
309
+ return (
310
+ f"{clean_uri(self.service_connection.hostPort)}/groups/"
311
+ f"{workspace_id}/datasets/{dataset_id}?experience=power-bi"
312
+ )
313
+
314
+ def _get_dataflow_url(self, workspace_id: str, dataflow_id: str) -> str:
315
+ """
316
+ Method to build the dataset url
317
+ """
318
+ return (
319
+ f"{clean_uri(self.service_connection.hostPort)}/groups/"
320
+ f"{workspace_id}/dataflows/{dataflow_id}?experience=power-bi"
321
+ )
322
+
305
323
  def _get_chart_url(
306
324
  self, report_id: Optional[str], workspace_id: str, dashboard_id: str
307
325
  ) -> str:
@@ -545,9 +563,17 @@ class PowerbiSource(DashboardServiceSource):
545
563
  if isinstance(dataset, Dataset):
546
564
  data_model_type = DataModelType.PowerBIDataModel.value
547
565
  datamodel_columns = self._get_column_info(dataset)
566
+ source_url = self._get_dataset_url(
567
+ workspace_id=self.context.get().workspace.id,
568
+ dataset_id=dataset.id,
569
+ )
548
570
  elif isinstance(dataset, Dataflow):
549
571
  data_model_type = DataModelType.PowerBIDataFlow.value
550
572
  datamodel_columns = []
573
+ source_url = self._get_dataflow_url(
574
+ workspace_id=self.context.get().workspace.id,
575
+ dataflow_id=dataset.id,
576
+ )
551
577
  else:
552
578
  logger.warning(
553
579
  f"Unknown dataset type: {type(dataset)}, name: {dataset.name}"
@@ -569,6 +595,7 @@ class PowerbiSource(DashboardServiceSource):
569
595
  columns=datamodel_columns,
570
596
  project=self.get_project_name(dashboard_details=dataset),
571
597
  owners=self.get_owner_ref(dashboard_details=dataset),
598
+ sourceUrl=SourceUrl(source_url),
572
599
  )
573
600
  yield Either(right=data_model_request)
574
601
  self.register_record_datamodel(datamodel_request=data_model_request)
@@ -110,6 +110,8 @@ class RedashSource(DashboardServiceSource):
110
110
  )
111
111
 
112
112
  def get_dashboards_list(self) -> Optional[List[dict]]:
113
+ if not self.source_config.includeOwners:
114
+ logger.debug("Skipping owner information as includeOwners is False")
113
115
  return self.dashboard_list
114
116
 
115
117
  def get_dashboard_name(self, dashboard: dict) -> str:
@@ -123,6 +125,8 @@ class RedashSource(DashboardServiceSource):
123
125
  Get owner from email
124
126
  """
125
127
  try:
128
+ if not self.source_config.includeOwners:
129
+ return None
126
130
  if dashboard_details.get("user") and dashboard_details["user"].get("email"):
127
131
  return self.metadata.get_reference_by_email(
128
132
  dashboard_details["user"].get("email")
@@ -91,6 +91,8 @@ class SigmaSource(DashboardServiceSource):
91
91
  """
92
92
  get list of dashboard
93
93
  """
94
+ if not self.source_config.includeOwners:
95
+ logger.debug("Skipping owner information as includeOwners is False")
94
96
  return self.client.get_dashboards()
95
97
 
96
98
  def get_dashboard_name(self, dashboard: Workbook) -> Optional[str]:
@@ -367,6 +369,8 @@ class SigmaSource(DashboardServiceSource):
367
369
  Get owner from email
368
370
  """
369
371
  try:
372
+ if not self.source_config.includeOwners:
373
+ return None
370
374
  if dashboard_details.ownerId:
371
375
  owner = self.client.get_owner_detail(dashboard_details.ownerId)
372
376
  return self.metadata.get_reference_by_email(owner.email)
@@ -77,6 +77,8 @@ class SupersetAPISource(SupersetSourceMixin):
77
77
  """
78
78
  Get List of all dashboards
79
79
  """
80
+ if not self.source_config.includeOwners:
81
+ logger.debug("Skipping owner information as includeOwners is False")
80
82
  current_page = 0
81
83
  page_size = 25
82
84
  total_dashboards = self.client.fetch_total_dashboards()
@@ -111,6 +111,8 @@ class SupersetDBSource(SupersetSourceMixin):
111
111
  """
112
112
  Get List of all dashboards
113
113
  """
114
+ if not self.source_config.includeOwners:
115
+ logger.debug("Skipping owner information as includeOwners is False")
114
116
  query = (
115
117
  FETCH_DASHBOARDS
116
118
  if self.source_config.includeDraftDashboard
@@ -117,6 +117,8 @@ class SupersetSourceMixin(DashboardServiceSource):
117
117
  self, dashboard_details: Union[DashboardResult, FetchDashboard]
118
118
  ) -> Optional[EntityReferenceList]:
119
119
  try:
120
+ if not self.source_config.includeOwners:
121
+ return None
120
122
  if hasattr(dashboard_details, "owners"):
121
123
  for owner in dashboard_details.owners or []:
122
124
  if owner.email:
@@ -106,8 +106,15 @@ class TableauClient:
106
106
  def site_id(self) -> str:
107
107
  return self.tableau_server.site_id
108
108
 
109
- def get_tableau_owner(self, owner_id: str) -> Optional[TableauOwner]:
109
+ def get_tableau_owner(
110
+ self, owner_id: str, include_owners: bool = True
111
+ ) -> Optional[TableauOwner]:
112
+ """
113
+ Get tableau owner with optional include_owners flag
114
+ """
110
115
  try:
116
+ if not include_owners:
117
+ return None
111
118
  if owner_id in self.owner_cache:
112
119
  return self.owner_cache[owner_id]
113
120
  owner = self.tableau_server.users.get_by_id(owner_id) if owner_id else None
@@ -122,7 +129,7 @@ class TableauClient:
122
129
  return None
123
130
 
124
131
  def get_workbook_charts_and_user_count(
125
- self, views: List[ViewItem]
132
+ self, views: List[ViewItem], include_owners: bool = True
126
133
  ) -> Optional[Tuple[Optional[int], Optional[List[TableauChart]]]]:
127
134
  """
128
135
  Fetches workbook charts and dashboard user view count
@@ -136,7 +143,7 @@ class TableauClient:
136
143
  id=str(view.id),
137
144
  name=view.name,
138
145
  tags=view.tags,
139
- owner=self.get_tableau_owner(view.owner_id),
146
+ owner=self.get_tableau_owner(view.owner_id, include_owners),
140
147
  contentUrl=view.content_url,
141
148
  sheetType=view.sheet_type,
142
149
  )
@@ -202,7 +209,7 @@ class TableauClient:
202
209
  logger.debug(f"Failed to get project parents by id: {str(e)}")
203
210
  return None
204
211
 
205
- def get_workbooks(self) -> Iterable[TableauDashboard]:
212
+ def get_workbooks(self, include_owners: bool = True) -> Iterable[TableauDashboard]:
206
213
  """
207
214
  Fetch all tableau workbooks
208
215
  """
@@ -212,7 +219,7 @@ class TableauClient:
212
219
  try:
213
220
  self.tableau_server.workbooks.populate_views(workbook, usage=True)
214
221
  charts, user_views = self.get_workbook_charts_and_user_count(
215
- workbook.views
222
+ workbook.views, include_owners
216
223
  )
217
224
  workbook = TableauDashboard(
218
225
  id=str(workbook.id),
@@ -220,7 +227,7 @@ class TableauClient:
220
227
  project=TableauBaseModel(
221
228
  id=str(workbook.project_id), name=workbook.project_name
222
229
  ),
223
- owner=self.get_tableau_owner(workbook.owner_id),
230
+ owner=self.get_tableau_owner(workbook.owner_id, include_owners),
224
231
  description=workbook.description,
225
232
  tags=workbook.tags,
226
233
  webpageUrl=workbook.webpage_url,
@@ -248,9 +255,11 @@ class TableauClient:
248
255
  "Please check if the user has permissions to access the Dashboards information"
249
256
  )
250
257
 
251
- def test_get_workbook_views(self):
258
+ def test_get_workbook_views(self, include_owners: bool = True):
252
259
  workbook = self.test_get_workbooks()
253
- charts, _ = self.get_workbook_charts_and_user_count(workbook.views)
260
+ charts, _ = self.get_workbook_charts_and_user_count(
261
+ workbook.views, include_owners
262
+ )
254
263
  if charts:
255
264
  return True
256
265
  raise TableauChartsException(
@@ -258,9 +267,11 @@ class TableauClient:
258
267
  "Please check if the user has permissions to access the Charts information"
259
268
  )
260
269
 
261
- def test_get_owners(self) -> Optional[List[TableauOwner]]:
270
+ def test_get_owners(
271
+ self, include_owners: bool = True
272
+ ) -> Optional[List[TableauOwner]]:
262
273
  workbook = self.test_get_workbooks()
263
- owners = self.get_tableau_owner(workbook.owner_id)
274
+ owners = self.get_tableau_owner(workbook.owner_id, include_owners)
264
275
  if owners is not None:
265
276
  return owners
266
277
  raise TableauOwnersNotFound(
@@ -132,7 +132,11 @@ class TableauSource(DashboardServiceSource):
132
132
  return cls(config, metadata)
133
133
 
134
134
  def get_dashboards_list(self) -> Iterable[TableauDashboard]:
135
- yield from self.client.get_workbooks()
135
+ if not self.source_config.includeOwners:
136
+ logger.debug("Skipping owner information as includeOwners is False")
137
+ yield from self.client.get_workbooks(
138
+ include_owners=self.source_config.includeOwners
139
+ )
136
140
 
137
141
  def get_dashboard_name(self, dashboard: TableauDashboard) -> str:
138
142
  return dashboard.name
@@ -151,6 +155,8 @@ class TableauSource(DashboardServiceSource):
151
155
  Get dashboard owner from email
152
156
  """
153
157
  try:
158
+ if not self.source_config.includeOwners:
159
+ return None
154
160
  if dashboard_details.owner and dashboard_details.owner.email:
155
161
  return self.metadata.get_reference_by_email(
156
162
  dashboard_details.owner.email
@@ -153,6 +153,10 @@ def test_connection(
153
153
  return policy_tags
154
154
 
155
155
  def test_tags():
156
+ if not service_connection.includePolicyTags:
157
+ logger.info("'includePolicyTags' is set to false, so skipping this test.")
158
+ return None
159
+
156
160
  taxonomy_project_ids = []
157
161
  if engine.url.host:
158
162
  taxonomy_project_ids.append(engine.url.host)
@@ -187,34 +187,12 @@ def get_columns(bq_schema):
187
187
  "max_length": field.max_length,
188
188
  "system_data_type": get_system_data_type(col_type),
189
189
  "is_complex": is_complex_type(str(col_type)),
190
- "policy_tags": None,
190
+ "policy_tags": field.policy_tags,
191
191
  }
192
192
  if getattr(field, "fields", None):
193
193
  # Nested Columns available
194
194
  col_obj["children"] = get_columns(field.fields)
195
- try:
196
- if field.policy_tags:
197
- policy_tag_name = field.policy_tags.names[0]
198
- taxonomy_name = (
199
- policy_tag_name.split("/policyTags/")[0] if policy_tag_name else ""
200
- )
201
- if not taxonomy_name:
202
- raise NotImplementedError(
203
- f"Taxonomy Name not present for {field.name}"
204
- )
205
- col_obj["taxonomy"] = (
206
- PolicyTagManagerClient()
207
- .get_taxonomy(name=taxonomy_name)
208
- .display_name
209
- )
210
- col_obj["policy_tags"] = (
211
- PolicyTagManagerClient()
212
- .get_policy_tag(name=policy_tag_name)
213
- .display_name
214
- )
215
- except Exception as exc:
216
- logger.debug(traceback.format_exc())
217
- logger.warning(f"Skipping Policy Tag: {exc}")
195
+
218
196
  col_list.append(col_obj)
219
197
  return col_list
220
198
 
@@ -513,6 +491,13 @@ class BigquerySource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
513
491
  metadata=self.metadata,
514
492
  system_tags=True,
515
493
  )
494
+
495
+ if not self.service_connection.includePolicyTags:
496
+ logger.info(
497
+ "'includePolicyTags' is set to false so skipping policy tag ingestion"
498
+ )
499
+ return
500
+
516
501
  # Fetching policy tags on the column level
517
502
  list_project_ids = [self.context.get().database]
518
503
  if not self.service_connection.taxonomyProjectID:
@@ -712,6 +697,32 @@ class BigquerySource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
712
697
  table_tag_labels.append(tag_label)
713
698
  return table_tag_labels
714
699
 
700
+ def get_policy_tags_for_column(self, column: dict) -> dict:
701
+ try:
702
+ if column.get("policy_tags"):
703
+ policy_tag_name = column["policy_tags"].names[0]
704
+ taxonomy_name = (
705
+ policy_tag_name.split("/policyTags/")[0] if policy_tag_name else ""
706
+ )
707
+ if not taxonomy_name:
708
+ raise NotImplementedError(
709
+ f"Taxonomy Name not present for {column['name']}"
710
+ )
711
+ column["taxonomy"] = (
712
+ PolicyTagManagerClient()
713
+ .get_taxonomy(name=taxonomy_name)
714
+ .display_name
715
+ )
716
+ column["policy_tags"] = (
717
+ PolicyTagManagerClient()
718
+ .get_policy_tag(name=policy_tag_name)
719
+ .display_name
720
+ )
721
+ return column
722
+ except Exception as exc:
723
+ logger.debug(traceback.format_exc())
724
+ logger.warning(f"Skipping Policy Tag: {exc}")
725
+
715
726
  def get_column_tag_labels(
716
727
  self, table_name: str, column: dict
717
728
  ) -> Optional[List[TagLabel]]:
@@ -719,12 +730,14 @@ class BigquerySource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
719
730
  This will only get executed if the tags context
720
731
  is properly informed
721
732
  """
722
- if column.get("policy_tags"):
733
+ if self.service_connection.includePolicyTags and column.get("policy_tags"):
734
+ self.get_policy_tags_for_column(column)
723
735
  return fetch_tag_labels_om(
724
736
  metadata=self.metadata,
725
737
  tags=[column["policy_tags"]],
726
738
  classification_name=column["taxonomy"],
727
- include_tags=self.source_config.includeTags,
739
+ include_tags=self.source_config.includeTags
740
+ and self.service_connection.includePolicyTags,
728
741
  )
729
742
  return None
730
743
 
@@ -293,7 +293,7 @@ class ColumnTypeParser:
293
293
  "STRG": "STRING",
294
294
  "RSTR": "STRING",
295
295
  # azuresql
296
- "HIERARCHYID": "UNKNOWN",
296
+ "HIERARCHYID": "HIERARCHYID",
297
297
  }
298
298
 
299
299
  _COMPLEX_TYPE = re.compile("^(struct|map|array|uniontype)")
@@ -45,5 +45,12 @@ ischema_names.update(
45
45
  "txid_snapshot": create_sqlalchemy_type("TXID_SNAPSHOT"),
46
46
  "xid": SqlAlchemyString,
47
47
  "xml": create_sqlalchemy_type("XML"),
48
+ # PostgreSQL range types (used by TimescaleDB for chunk boundaries)
49
+ "int4range": create_sqlalchemy_type("INT4RANGE"),
50
+ "int8range": create_sqlalchemy_type("INT8RANGE"),
51
+ "numrange": create_sqlalchemy_type("NUMRANGE"),
52
+ "tsrange": create_sqlalchemy_type("TSRANGE"),
53
+ "tstzrange": create_sqlalchemy_type("TSTZRANGE"),
54
+ "daterange": create_sqlalchemy_type("DATERANGE"),
48
55
  }
49
56
  )