openmetadata-ingestion 1.7.4.2__py3-none-any.whl → 1.8.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 (790) hide show
  1. _openmetadata_testutils/helpers/login_user.py +22 -0
  2. metadata/__init__.py +31 -0
  3. metadata/automations/runner.py +24 -14
  4. metadata/data_quality/processor/test_case_runner.py +2 -11
  5. metadata/data_quality/source/test_suite.py +3 -1
  6. metadata/data_quality/validations/table/pandas/tableRowInsertedCountToBeBetween.py +17 -2
  7. metadata/examples/workflows/tableau.yaml +1 -0
  8. metadata/generated/schema/analytics/__init__.py +1 -1
  9. metadata/generated/schema/analytics/basic.py +1 -1
  10. metadata/generated/schema/analytics/reportData.py +1 -1
  11. metadata/generated/schema/analytics/reportDataType/__init__.py +1 -1
  12. metadata/generated/schema/analytics/reportDataType/aggregatedCostAnalysisReportData.py +1 -1
  13. metadata/generated/schema/analytics/reportDataType/entityReportData.py +1 -1
  14. metadata/generated/schema/analytics/reportDataType/rawCostAnalysisReportData.py +1 -1
  15. metadata/generated/schema/analytics/reportDataType/webAnalyticEntityViewReportData.py +1 -1
  16. metadata/generated/schema/analytics/reportDataType/webAnalyticUserActivityReportData.py +1 -1
  17. metadata/generated/schema/analytics/webAnalyticEvent.py +1 -1
  18. metadata/generated/schema/analytics/webAnalyticEventData.py +1 -1
  19. metadata/generated/schema/analytics/webAnalyticEventType/__init__.py +1 -1
  20. metadata/generated/schema/analytics/webAnalyticEventType/customEvent.py +1 -1
  21. metadata/generated/schema/analytics/webAnalyticEventType/pageViewEvent.py +1 -1
  22. metadata/generated/schema/api/__init__.py +1 -1
  23. metadata/generated/schema/api/addGlossaryToAssetsRequest.py +3 -16
  24. metadata/generated/schema/api/addTagToAssetsRequest.py +1 -10
  25. metadata/generated/schema/api/analytics/__init__.py +1 -1
  26. metadata/generated/schema/api/analytics/createWebAnalyticEvent.py +1 -1
  27. metadata/generated/schema/api/automations/__init__.py +1 -1
  28. metadata/generated/schema/api/automations/createWorkflow.py +1 -1
  29. metadata/generated/schema/api/bulkAssets.py +1 -1
  30. metadata/generated/schema/api/classification/__init__.py +1 -1
  31. metadata/generated/schema/api/classification/createClassification.py +6 -2
  32. metadata/generated/schema/api/classification/createTag.py +6 -2
  33. metadata/generated/schema/api/classification/loadTags.py +1 -1
  34. metadata/generated/schema/api/createBot.py +1 -1
  35. metadata/generated/schema/api/createEventPublisherJob.py +1 -1
  36. metadata/generated/schema/api/createType.py +1 -1
  37. metadata/generated/schema/api/data/__init__.py +1 -1
  38. metadata/generated/schema/api/data/createAPICollection.py +1 -1
  39. metadata/generated/schema/api/data/createAPIEndpoint.py +1 -1
  40. metadata/generated/schema/api/data/createChart.py +1 -1
  41. metadata/generated/schema/api/data/createContainer.py +1 -1
  42. metadata/generated/schema/api/data/createCustomProperty.py +1 -1
  43. metadata/generated/schema/api/data/createDashboard.py +1 -1
  44. metadata/generated/schema/api/data/createDashboardDataModel.py +1 -1
  45. metadata/generated/schema/api/data/createDataContract.py +66 -0
  46. metadata/generated/schema/api/data/createDatabase.py +1 -1
  47. metadata/generated/schema/api/data/createDatabaseSchema.py +1 -1
  48. metadata/generated/schema/api/data/createGlossary.py +1 -1
  49. metadata/generated/schema/api/data/createGlossaryTerm.py +1 -1
  50. metadata/generated/schema/api/data/createMetric.py +1 -1
  51. metadata/generated/schema/api/data/createMlModel.py +1 -1
  52. metadata/generated/schema/api/data/createPipeline.py +1 -1
  53. metadata/generated/schema/api/data/createQuery.py +1 -1
  54. metadata/generated/schema/api/data/createQueryCostRecord.py +1 -1
  55. metadata/generated/schema/api/data/createSearchIndex.py +1 -1
  56. metadata/generated/schema/api/data/createStoredProcedure.py +1 -1
  57. metadata/generated/schema/api/data/createTable.py +1 -1
  58. metadata/generated/schema/api/data/createTableProfile.py +1 -1
  59. metadata/generated/schema/api/data/createTopic.py +1 -1
  60. metadata/generated/schema/api/data/loadGlossary.py +1 -1
  61. metadata/generated/schema/api/data/restoreEntity.py +1 -1
  62. metadata/generated/schema/api/data/updateColumn.py +49 -0
  63. metadata/generated/schema/api/dataInsight/__init__.py +1 -1
  64. metadata/generated/schema/api/dataInsight/createDataInsightChart.py +1 -1
  65. metadata/generated/schema/api/dataInsight/custom/__init__.py +1 -1
  66. metadata/generated/schema/api/dataInsight/custom/createDataInsightCustomChart.py +1 -1
  67. metadata/generated/schema/api/dataInsight/kpi/__init__.py +1 -1
  68. metadata/generated/schema/api/dataInsight/kpi/createKpiRequest.py +1 -1
  69. metadata/generated/schema/api/docStore/__init__.py +1 -1
  70. metadata/generated/schema/api/docStore/createDocument.py +1 -1
  71. metadata/generated/schema/api/domains/__init__.py +1 -1
  72. metadata/generated/schema/api/domains/createDataProduct.py +1 -1
  73. metadata/generated/schema/api/domains/createDomain.py +1 -1
  74. metadata/generated/schema/api/feed/__init__.py +1 -1
  75. metadata/generated/schema/api/feed/closeTask.py +1 -1
  76. metadata/generated/schema/api/feed/createPost.py +1 -1
  77. metadata/generated/schema/api/feed/createSuggestion.py +1 -1
  78. metadata/generated/schema/api/feed/createThread.py +1 -1
  79. metadata/generated/schema/api/feed/resolveTask.py +1 -1
  80. metadata/generated/schema/api/feed/threadCount.py +1 -1
  81. metadata/generated/schema/api/governance/__init__.py +1 -1
  82. metadata/generated/schema/api/governance/createWorkflowDefinition.py +1 -1
  83. metadata/generated/schema/api/governance/createWorkflowInstanceState.py +1 -1
  84. metadata/generated/schema/api/lineage/__init__.py +1 -1
  85. metadata/generated/schema/api/lineage/addLineage.py +1 -1
  86. metadata/generated/schema/api/lineage/esLineageData.py +1 -1
  87. metadata/generated/schema/api/lineage/lineageDirection.py +1 -1
  88. metadata/generated/schema/api/lineage/nodeInformation.py +1 -1
  89. metadata/generated/schema/api/lineage/searchLineageRequest.py +1 -1
  90. metadata/generated/schema/api/lineage/searchLineageResult.py +1 -1
  91. metadata/generated/schema/api/mcp/__init__.py +3 -0
  92. metadata/generated/schema/api/mcp/mcpToolDefinition.py +54 -0
  93. metadata/generated/schema/api/openMetadataServerVersion.py +1 -1
  94. metadata/generated/schema/api/policies/__init__.py +1 -1
  95. metadata/generated/schema/api/policies/createPolicy.py +1 -1
  96. metadata/generated/schema/api/scim/__init__.py +3 -0
  97. metadata/generated/schema/api/scim/scimGroup.py +52 -0
  98. metadata/generated/schema/api/scim/scimPatchOp.py +32 -0
  99. metadata/generated/schema/api/scim/scimUser.py +83 -0
  100. metadata/generated/schema/api/search/__init__.py +1 -1
  101. metadata/generated/schema/api/search/previewSearchRequest.py +1 -1
  102. metadata/generated/schema/api/services/__init__.py +1 -1
  103. metadata/generated/schema/api/services/createApiService.py +1 -1
  104. metadata/generated/schema/api/services/createDashboardService.py +1 -1
  105. metadata/generated/schema/api/services/createDatabaseService.py +1 -1
  106. metadata/generated/schema/api/services/createMessagingService.py +1 -1
  107. metadata/generated/schema/api/services/createMetadataService.py +1 -1
  108. metadata/generated/schema/api/services/createMlModelService.py +1 -1
  109. metadata/generated/schema/api/services/createPipelineService.py +1 -1
  110. metadata/generated/schema/api/services/createSearchService.py +1 -1
  111. metadata/generated/schema/api/services/createStorageService.py +1 -1
  112. metadata/generated/schema/api/services/ingestionPipelines/__init__.py +1 -1
  113. metadata/generated/schema/api/services/ingestionPipelines/createIngestionPipeline.py +1 -1
  114. metadata/generated/schema/api/setOwner.py +1 -1
  115. metadata/generated/schema/api/teams/__init__.py +1 -1
  116. metadata/generated/schema/api/teams/createPersona.py +1 -1
  117. metadata/generated/schema/api/teams/createRole.py +1 -1
  118. metadata/generated/schema/api/teams/createTeam.py +8 -1
  119. metadata/generated/schema/api/teams/createUser.py +11 -1
  120. metadata/generated/schema/api/tests/__init__.py +1 -1
  121. metadata/generated/schema/api/tests/createCustomMetric.py +1 -1
  122. metadata/generated/schema/api/tests/createLogicalTestCases.py +1 -1
  123. metadata/generated/schema/api/tests/createTestCase.py +9 -6
  124. metadata/generated/schema/api/tests/createTestCaseResolutionStatus.py +1 -1
  125. metadata/generated/schema/api/tests/createTestCaseResult.py +1 -1
  126. metadata/generated/schema/api/tests/createTestDefinition.py +1 -1
  127. metadata/generated/schema/api/tests/createTestSuite.py +1 -1
  128. metadata/generated/schema/api/validateGlossaryTagsRequest.py +31 -0
  129. metadata/generated/schema/api/voteRequest.py +1 -1
  130. metadata/generated/schema/auth/__init__.py +1 -1
  131. metadata/generated/schema/auth/basicAuth.py +1 -1
  132. metadata/generated/schema/auth/basicLoginRequest.py +1 -1
  133. metadata/generated/schema/auth/changePasswordRequest.py +1 -1
  134. metadata/generated/schema/auth/createPersonalToken.py +1 -1
  135. metadata/generated/schema/auth/emailRequest.py +1 -1
  136. metadata/generated/schema/auth/emailVerificationToken.py +2 -1
  137. metadata/generated/schema/auth/generateToken.py +1 -1
  138. metadata/generated/schema/auth/jwtAuth.py +1 -1
  139. metadata/generated/schema/auth/loginRequest.py +1 -1
  140. metadata/generated/schema/auth/logoutRequest.py +1 -1
  141. metadata/generated/schema/auth/passwordResetRequest.py +1 -1
  142. metadata/generated/schema/auth/passwordResetToken.py +1 -1
  143. metadata/generated/schema/auth/personalAccessToken.py +1 -1
  144. metadata/generated/schema/auth/refreshToken.py +1 -1
  145. metadata/generated/schema/auth/registrationRequest.py +1 -1
  146. metadata/generated/schema/auth/revokePersonalToken.py +1 -1
  147. metadata/generated/schema/auth/revokeToken.py +1 -1
  148. metadata/generated/schema/auth/serviceTokenEnum.py +1 -1
  149. metadata/generated/schema/auth/ssoAuth.py +1 -1
  150. metadata/generated/schema/auth/supportToken.py +35 -0
  151. metadata/generated/schema/auth/tokenRefreshRequest.py +1 -1
  152. metadata/generated/schema/configuration/__init__.py +1 -1
  153. metadata/generated/schema/configuration/appsPrivateConfiguration.py +1 -1
  154. metadata/generated/schema/configuration/assetCertificationSettings.py +1 -1
  155. metadata/generated/schema/configuration/authConfig.py +1 -1
  156. metadata/generated/schema/configuration/authenticationConfiguration.py +1 -1
  157. metadata/generated/schema/configuration/authorizerConfiguration.py +1 -1
  158. metadata/generated/schema/configuration/changeEventConfiguration.py +1 -1
  159. metadata/generated/schema/configuration/dataQualityConfiguration.py +1 -1
  160. metadata/generated/schema/configuration/elasticSearchConfiguration.py +1 -1
  161. metadata/generated/schema/configuration/eventHandlerConfiguration.py +1 -1
  162. metadata/generated/schema/configuration/fernetConfiguration.py +1 -1
  163. metadata/generated/schema/configuration/jwtTokenConfiguration.py +1 -1
  164. metadata/generated/schema/configuration/kafkaEventConfiguration.py +1 -1
  165. metadata/generated/schema/configuration/ldapConfiguration.py +1 -1
  166. metadata/generated/schema/configuration/ldapTrustStoreConfig/__init__.py +1 -1
  167. metadata/generated/schema/configuration/ldapTrustStoreConfig/customTrustManagerConfig.py +1 -1
  168. metadata/generated/schema/configuration/ldapTrustStoreConfig/hostNameConfig.py +1 -1
  169. metadata/generated/schema/configuration/ldapTrustStoreConfig/jvmDefaultConfig.py +1 -1
  170. metadata/generated/schema/configuration/ldapTrustStoreConfig/trustAllConfig.py +1 -1
  171. metadata/generated/schema/configuration/ldapTrustStoreConfig/truststoreConfig.py +1 -1
  172. metadata/generated/schema/configuration/limitsConfiguration.py +1 -1
  173. metadata/generated/schema/configuration/lineageSettings.py +1 -1
  174. metadata/generated/schema/configuration/loginConfiguration.py +1 -1
  175. metadata/generated/schema/configuration/logoConfiguration.py +1 -1
  176. metadata/generated/schema/configuration/openMetadataBaseUrlConfiguration.py +1 -1
  177. metadata/generated/schema/configuration/opertionalConfiguration.py +1 -1
  178. metadata/generated/schema/configuration/opsConfig.py +1 -1
  179. metadata/generated/schema/configuration/pipelineServiceClientConfiguration.py +1 -1
  180. metadata/generated/schema/configuration/profilerConfiguration.py +1 -1
  181. metadata/generated/schema/configuration/searchSettings.py +1 -1
  182. metadata/generated/schema/configuration/slackAppConfiguration.py +1 -1
  183. metadata/generated/schema/configuration/taskNotificationConfiguration.py +1 -1
  184. metadata/generated/schema/configuration/testResultNotificationConfiguration.py +1 -1
  185. metadata/generated/schema/configuration/themeConfiguration.py +1 -1
  186. metadata/generated/schema/configuration/uiThemePreference.py +1 -1
  187. metadata/generated/schema/configuration/workflowSettings.py +1 -1
  188. metadata/generated/schema/dataInsight/__init__.py +1 -1
  189. metadata/generated/schema/dataInsight/custom/__init__.py +1 -1
  190. metadata/generated/schema/dataInsight/custom/dataInsightCustomChart.py +1 -1
  191. metadata/generated/schema/dataInsight/custom/dataInsightCustomChartResult.py +1 -1
  192. metadata/generated/schema/dataInsight/custom/dataInsightCustomChartResultList.py +1 -1
  193. metadata/generated/schema/dataInsight/custom/formulaHolder.py +1 -1
  194. metadata/generated/schema/dataInsight/custom/lineChart.py +1 -1
  195. metadata/generated/schema/dataInsight/custom/summaryCard.py +1 -1
  196. metadata/generated/schema/dataInsight/dataInsightChart.py +1 -1
  197. metadata/generated/schema/dataInsight/dataInsightChartResult.py +1 -1
  198. metadata/generated/schema/dataInsight/kpi/__init__.py +1 -1
  199. metadata/generated/schema/dataInsight/kpi/basic.py +1 -1
  200. metadata/generated/schema/dataInsight/kpi/kpi.py +1 -1
  201. metadata/generated/schema/dataInsight/type/__init__.py +1 -1
  202. metadata/generated/schema/dataInsight/type/aggregatedUnusedAssetsCount.py +1 -1
  203. metadata/generated/schema/dataInsight/type/aggregatedUnusedAssetsSize.py +1 -1
  204. metadata/generated/schema/dataInsight/type/aggregatedUsedVsUnusedAssetsCount.py +1 -1
  205. metadata/generated/schema/dataInsight/type/aggregatedUsedVsUnusedAssetsSize.py +1 -1
  206. metadata/generated/schema/dataInsight/type/dailyActiveUsers.py +1 -1
  207. metadata/generated/schema/dataInsight/type/mostActiveUsers.py +1 -1
  208. metadata/generated/schema/dataInsight/type/mostViewedEntities.py +1 -1
  209. metadata/generated/schema/dataInsight/type/pageViewsByEntities.py +1 -1
  210. metadata/generated/schema/dataInsight/type/unusedAssets.py +1 -1
  211. metadata/generated/schema/email/__init__.py +1 -1
  212. metadata/generated/schema/email/emailRequest.py +1 -1
  213. metadata/generated/schema/email/emailTemplate.py +1 -1
  214. metadata/generated/schema/email/emailTemplatePlaceholder.py +1 -1
  215. metadata/generated/schema/email/smtpSettings.py +1 -1
  216. metadata/generated/schema/email/templateValidationReponse.py +1 -1
  217. metadata/generated/schema/entity/__init__.py +1 -1
  218. metadata/generated/schema/entity/applications/__init__.py +1 -1
  219. metadata/generated/schema/entity/applications/app.py +3 -2
  220. metadata/generated/schema/entity/applications/appExtension.py +1 -1
  221. metadata/generated/schema/entity/applications/appRunRecord.py +1 -1
  222. metadata/generated/schema/entity/applications/configuration/__init__.py +1 -1
  223. metadata/generated/schema/entity/applications/configuration/applicationConfig.py +1 -1
  224. metadata/generated/schema/entity/applications/configuration/external/__init__.py +1 -1
  225. metadata/generated/schema/entity/applications/configuration/external/automator/__init__.py +1 -1
  226. metadata/generated/schema/entity/applications/configuration/external/automator/addCustomProperties.py +1 -1
  227. metadata/generated/schema/entity/applications/configuration/external/automator/addDataProductAction.py +1 -1
  228. metadata/generated/schema/entity/applications/configuration/external/automator/addDescriptionAction.py +1 -1
  229. metadata/generated/schema/entity/applications/configuration/external/automator/addDomainAction.py +1 -1
  230. metadata/generated/schema/entity/applications/configuration/external/automator/addOwnerAction.py +1 -1
  231. metadata/generated/schema/entity/applications/configuration/external/automator/addTagsAction.py +1 -1
  232. metadata/generated/schema/entity/applications/configuration/external/automator/addTestCaseAction.py +1 -1
  233. metadata/generated/schema/entity/applications/configuration/external/automator/addTierAction.py +1 -1
  234. metadata/generated/schema/entity/applications/configuration/external/automator/lineagePropagationAction.py +1 -1
  235. metadata/generated/schema/entity/applications/configuration/external/automator/mlTaggingAction.py +1 -1
  236. metadata/generated/schema/entity/applications/configuration/external/automator/removeCustomPropertiesAction.py +1 -1
  237. metadata/generated/schema/entity/applications/configuration/external/automator/removeDataProductAction.py +1 -1
  238. metadata/generated/schema/entity/applications/configuration/external/automator/removeDescriptionAction.py +1 -1
  239. metadata/generated/schema/entity/applications/configuration/external/automator/removeDomainAction.py +1 -1
  240. metadata/generated/schema/entity/applications/configuration/external/automator/removeOwnerAction.py +1 -1
  241. metadata/generated/schema/entity/applications/configuration/external/automator/removeTagsAction.py +1 -1
  242. metadata/generated/schema/entity/applications/configuration/external/automator/removeTestCaseAction.py +1 -1
  243. metadata/generated/schema/entity/applications/configuration/external/automator/removeTierAction.py +1 -1
  244. metadata/generated/schema/entity/applications/configuration/external/automatorAppConfig.py +1 -1
  245. metadata/generated/schema/entity/applications/configuration/external/collateAIAppConfig.py +1 -1
  246. metadata/generated/schema/entity/applications/configuration/external/slackAppTokenConfiguration.py +1 -1
  247. metadata/generated/schema/entity/applications/configuration/internal/__init__.py +1 -1
  248. metadata/generated/schema/entity/applications/configuration/internal/autoPilotAppConfig.py +1 -1
  249. metadata/generated/schema/entity/applications/configuration/internal/collateAIQualityAgentAppConfig.py +1 -1
  250. metadata/generated/schema/entity/applications/configuration/internal/collateAITierAgentAppConfig.py +1 -1
  251. metadata/generated/schema/entity/applications/configuration/internal/dataInsightsAppConfig.py +1 -1
  252. metadata/generated/schema/entity/applications/configuration/internal/dataInsightsReportAppConfig.py +1 -1
  253. metadata/generated/schema/entity/applications/configuration/internal/dataRetentionConfiguration.py +9 -1
  254. metadata/generated/schema/entity/applications/configuration/internal/helloPipelinesConfiguration.py +1 -1
  255. metadata/generated/schema/entity/applications/configuration/internal/searchIndexingAppConfig.py +9 -1
  256. metadata/generated/schema/entity/applications/configuration/private/__init__.py +1 -1
  257. metadata/generated/schema/entity/applications/configuration/private/external/__init__.py +1 -1
  258. metadata/generated/schema/entity/applications/configuration/private/external/collateAIAppPrivateConfig.py +1 -1
  259. metadata/generated/schema/entity/applications/configuration/private/internal/__init__.py +1 -1
  260. metadata/generated/schema/entity/applications/configuration/private/internal/collateAITierAgentAppPrivateConfig.py +1 -1
  261. metadata/generated/schema/entity/applications/configuration/private/limits.py +1 -1
  262. metadata/generated/schema/entity/applications/createAppRequest.py +1 -1
  263. metadata/generated/schema/entity/applications/jobStatus.py +1 -1
  264. metadata/generated/schema/entity/applications/liveExecutionContext.py +1 -1
  265. metadata/generated/schema/entity/applications/marketplace/__init__.py +1 -1
  266. metadata/generated/schema/entity/applications/marketplace/appMarketPlaceDefinition.py +1 -1
  267. metadata/generated/schema/entity/applications/marketplace/createAppMarketPlaceDefinitionReq.py +1 -1
  268. metadata/generated/schema/entity/applications/scheduledExecutionContext.py +1 -1
  269. metadata/generated/schema/entity/automations/__init__.py +1 -1
  270. metadata/generated/schema/entity/automations/testServiceConnection.py +1 -1
  271. metadata/generated/schema/entity/automations/workflow.py +1 -1
  272. metadata/generated/schema/entity/bot.py +1 -1
  273. metadata/generated/schema/entity/classification/__init__.py +1 -1
  274. metadata/generated/schema/entity/classification/classification.py +7 -4
  275. metadata/generated/schema/entity/classification/tag.py +6 -3
  276. metadata/generated/schema/entity/data/__init__.py +1 -1
  277. metadata/generated/schema/entity/data/apiCollection.py +1 -1
  278. metadata/generated/schema/entity/data/apiEndpoint.py +1 -1
  279. metadata/generated/schema/entity/data/chart.py +1 -1
  280. metadata/generated/schema/entity/data/container.py +1 -1
  281. metadata/generated/schema/entity/data/dashboard.py +1 -1
  282. metadata/generated/schema/entity/data/dashboardDataModel.py +1 -1
  283. metadata/generated/schema/entity/data/dataContract.py +180 -0
  284. metadata/generated/schema/entity/data/database.py +1 -1
  285. metadata/generated/schema/entity/data/databaseSchema.py +1 -1
  286. metadata/generated/schema/entity/data/glossary.py +1 -1
  287. metadata/generated/schema/entity/data/glossaryTerm.py +1 -1
  288. metadata/generated/schema/entity/data/metric.py +1 -1
  289. metadata/generated/schema/entity/data/mlmodel.py +1 -1
  290. metadata/generated/schema/entity/data/pipeline.py +1 -1
  291. metadata/generated/schema/entity/data/query.py +1 -1
  292. metadata/generated/schema/entity/data/queryCostRecord.py +1 -1
  293. metadata/generated/schema/entity/data/queryCostSearchResult.py +1 -1
  294. metadata/generated/schema/entity/data/report.py +1 -1
  295. metadata/generated/schema/entity/data/searchIndex.py +1 -1
  296. metadata/generated/schema/entity/data/storedProcedure.py +1 -1
  297. metadata/generated/schema/entity/data/table.py +5 -1
  298. metadata/generated/schema/entity/data/topic.py +1 -1
  299. metadata/generated/schema/entity/docStore/__init__.py +1 -1
  300. metadata/generated/schema/entity/docStore/document.py +1 -1
  301. metadata/generated/schema/entity/domains/__init__.py +1 -1
  302. metadata/generated/schema/entity/domains/dataProduct.py +5 -1
  303. metadata/generated/schema/entity/domains/domain.py +5 -1
  304. metadata/generated/schema/entity/events/__init__.py +1 -1
  305. metadata/generated/schema/entity/events/webhook.py +7 -1
  306. metadata/generated/schema/entity/feed/__init__.py +1 -1
  307. metadata/generated/schema/entity/feed/assets.py +1 -1
  308. metadata/generated/schema/entity/feed/customProperty.py +1 -1
  309. metadata/generated/schema/entity/feed/description.py +1 -1
  310. metadata/generated/schema/entity/feed/domain.py +1 -1
  311. metadata/generated/schema/entity/feed/entityInfo.py +1 -1
  312. metadata/generated/schema/entity/feed/owner.py +1 -1
  313. metadata/generated/schema/entity/feed/suggestion.py +1 -1
  314. metadata/generated/schema/entity/feed/tag.py +1 -1
  315. metadata/generated/schema/entity/feed/testCaseResult.py +1 -1
  316. metadata/generated/schema/entity/feed/thread.py +1 -1
  317. metadata/generated/schema/entity/policies/__init__.py +1 -1
  318. metadata/generated/schema/entity/policies/accessControl/__init__.py +1 -1
  319. metadata/generated/schema/entity/policies/accessControl/resourceDescriptor.py +6 -1
  320. metadata/generated/schema/entity/policies/accessControl/resourcePermission.py +1 -1
  321. metadata/generated/schema/entity/policies/accessControl/rule.py +1 -1
  322. metadata/generated/schema/entity/policies/filters.py +1 -1
  323. metadata/generated/schema/entity/policies/policy.py +1 -1
  324. metadata/generated/schema/entity/services/__init__.py +1 -1
  325. metadata/generated/schema/entity/services/apiService.py +1 -1
  326. metadata/generated/schema/entity/services/connections/__init__.py +1 -1
  327. metadata/generated/schema/entity/services/connections/api/__init__.py +1 -1
  328. metadata/generated/schema/entity/services/connections/api/restConnection.py +1 -1
  329. metadata/generated/schema/entity/services/connections/common/__init__.py +1 -1
  330. metadata/generated/schema/entity/services/connections/common/sslCertPaths.py +1 -1
  331. metadata/generated/schema/entity/services/connections/common/sslCertValues.py +1 -1
  332. metadata/generated/schema/entity/services/connections/common/sslConfig.py +1 -1
  333. metadata/generated/schema/entity/services/connections/connectionBasicType.py +1 -1
  334. metadata/generated/schema/entity/services/connections/dashboard/__init__.py +1 -1
  335. metadata/generated/schema/entity/services/connections/dashboard/customDashboardConnection.py +1 -1
  336. metadata/generated/schema/entity/services/connections/dashboard/domoDashboardConnection.py +1 -1
  337. metadata/generated/schema/entity/services/connections/dashboard/lightdashConnection.py +1 -1
  338. metadata/generated/schema/entity/services/connections/dashboard/lookerConnection.py +1 -1
  339. metadata/generated/schema/entity/services/connections/dashboard/metabaseConnection.py +1 -1
  340. metadata/generated/schema/entity/services/connections/dashboard/microStrategyConnection.py +1 -1
  341. metadata/generated/schema/entity/services/connections/dashboard/modeConnection.py +1 -1
  342. metadata/generated/schema/entity/services/connections/dashboard/powerBIConnection.py +1 -1
  343. metadata/generated/schema/entity/services/connections/dashboard/powerBIReportServerConnection.py +1 -1
  344. metadata/generated/schema/entity/services/connections/dashboard/powerbi/__init__.py +1 -1
  345. metadata/generated/schema/entity/services/connections/dashboard/powerbi/azureConfig.py +1 -1
  346. metadata/generated/schema/entity/services/connections/dashboard/powerbi/bucketDetails.py +1 -1
  347. metadata/generated/schema/entity/services/connections/dashboard/powerbi/gcsConfig.py +1 -1
  348. metadata/generated/schema/entity/services/connections/dashboard/powerbi/s3Config.py +1 -1
  349. metadata/generated/schema/entity/services/connections/dashboard/qlikCloudConnection.py +1 -1
  350. metadata/generated/schema/entity/services/connections/dashboard/qlikSenseConnection.py +1 -1
  351. metadata/generated/schema/entity/services/connections/dashboard/quickSightConnection.py +1 -1
  352. metadata/generated/schema/entity/services/connections/dashboard/redashConnection.py +1 -1
  353. metadata/generated/schema/entity/services/connections/dashboard/sigmaConnection.py +1 -1
  354. metadata/generated/schema/entity/services/connections/dashboard/supersetConnection.py +1 -1
  355. metadata/generated/schema/entity/services/connections/dashboard/tableauConnection.py +9 -1
  356. metadata/generated/schema/entity/services/connections/database/__init__.py +1 -1
  357. metadata/generated/schema/entity/services/connections/database/athenaConnection.py +1 -1
  358. metadata/generated/schema/entity/services/connections/database/azureSQLConnection.py +1 -1
  359. metadata/generated/schema/entity/services/connections/database/bigQueryConnection.py +5 -1
  360. metadata/generated/schema/entity/services/connections/database/bigTableConnection.py +1 -1
  361. metadata/generated/schema/entity/services/connections/database/cassandra/__init__.py +1 -1
  362. metadata/generated/schema/entity/services/connections/database/cassandra/cloudConfig.py +1 -1
  363. metadata/generated/schema/entity/services/connections/database/cassandraConnection.py +1 -1
  364. metadata/generated/schema/entity/services/connections/database/clickhouseConnection.py +1 -1
  365. metadata/generated/schema/entity/services/connections/database/cockroachConnection.py +1 -1
  366. metadata/generated/schema/entity/services/connections/database/common/__init__.py +1 -1
  367. metadata/generated/schema/entity/services/connections/database/common/azureConfig.py +1 -1
  368. metadata/generated/schema/entity/services/connections/database/common/basicAuth.py +1 -1
  369. metadata/generated/schema/entity/services/connections/database/common/iamAuthConfig.py +1 -1
  370. metadata/generated/schema/entity/services/connections/database/common/jwtAuth.py +1 -1
  371. metadata/generated/schema/entity/services/connections/database/common/noConfigAuthenticationTypes.py +1 -1
  372. metadata/generated/schema/entity/services/connections/database/couchbaseConnection.py +1 -1
  373. metadata/generated/schema/entity/services/connections/database/customDatabaseConnection.py +1 -1
  374. metadata/generated/schema/entity/services/connections/database/databricksConnection.py +1 -1
  375. metadata/generated/schema/entity/services/connections/database/datalake/__init__.py +1 -1
  376. metadata/generated/schema/entity/services/connections/database/datalake/azureConfig.py +1 -1
  377. metadata/generated/schema/entity/services/connections/database/datalake/gcsConfig.py +1 -1
  378. metadata/generated/schema/entity/services/connections/database/datalake/s3Config.py +1 -1
  379. metadata/generated/schema/entity/services/connections/database/datalakeConnection.py +1 -1
  380. metadata/generated/schema/entity/services/connections/database/db2Connection.py +1 -1
  381. metadata/generated/schema/entity/services/connections/database/deltaLakeConnection.py +1 -1
  382. metadata/generated/schema/entity/services/connections/database/deltalake/__init__.py +1 -1
  383. metadata/generated/schema/entity/services/connections/database/deltalake/metastoreConfig.py +1 -1
  384. metadata/generated/schema/entity/services/connections/database/deltalake/storageConfig.py +1 -1
  385. metadata/generated/schema/entity/services/connections/database/domoDatabaseConnection.py +1 -1
  386. metadata/generated/schema/entity/services/connections/database/dorisConnection.py +1 -1
  387. metadata/generated/schema/entity/services/connections/database/druidConnection.py +1 -1
  388. metadata/generated/schema/entity/services/connections/database/dynamoDBConnection.py +1 -1
  389. metadata/generated/schema/entity/services/connections/database/exasolConnection.py +1 -1
  390. metadata/generated/schema/entity/services/connections/database/glueConnection.py +1 -1
  391. metadata/generated/schema/entity/services/connections/database/greenplumConnection.py +1 -1
  392. metadata/generated/schema/entity/services/connections/database/hiveConnection.py +1 -1
  393. metadata/generated/schema/entity/services/connections/database/iceberg/__init__.py +1 -1
  394. metadata/generated/schema/entity/services/connections/database/iceberg/dynamoDbCatalogConnection.py +1 -1
  395. metadata/generated/schema/entity/services/connections/database/iceberg/glueCatalogConnection.py +1 -1
  396. metadata/generated/schema/entity/services/connections/database/iceberg/hiveCatalogConnection.py +1 -1
  397. metadata/generated/schema/entity/services/connections/database/iceberg/icebergCatalog.py +1 -1
  398. metadata/generated/schema/entity/services/connections/database/iceberg/icebergFileSystem.py +1 -1
  399. metadata/generated/schema/entity/services/connections/database/iceberg/restCatalogConnection.py +1 -1
  400. metadata/generated/schema/entity/services/connections/database/icebergConnection.py +1 -1
  401. metadata/generated/schema/entity/services/connections/database/impalaConnection.py +1 -1
  402. metadata/generated/schema/entity/services/connections/database/mariaDBConnection.py +1 -1
  403. metadata/generated/schema/entity/services/connections/database/mongoDBConnection.py +1 -1
  404. metadata/generated/schema/entity/services/connections/database/mssqlConnection.py +1 -1
  405. metadata/generated/schema/entity/services/connections/database/mysqlConnection.py +1 -1
  406. metadata/generated/schema/entity/services/connections/database/oracleConnection.py +1 -1
  407. metadata/generated/schema/entity/services/connections/database/pinotDBConnection.py +1 -1
  408. metadata/generated/schema/entity/services/connections/database/postgresConnection.py +1 -1
  409. metadata/generated/schema/entity/services/connections/database/prestoConnection.py +1 -1
  410. metadata/generated/schema/entity/services/connections/database/redshiftConnection.py +1 -1
  411. metadata/generated/schema/entity/services/connections/database/salesforceConnection.py +1 -1
  412. metadata/generated/schema/entity/services/connections/database/sapErpConnection.py +1 -1
  413. metadata/generated/schema/entity/services/connections/database/sapHana/__init__.py +1 -1
  414. metadata/generated/schema/entity/services/connections/database/sapHana/sapHanaHDBConnection.py +1 -1
  415. metadata/generated/schema/entity/services/connections/database/sapHana/sapHanaSQLConnection.py +1 -1
  416. metadata/generated/schema/entity/services/connections/database/sapHanaConnection.py +1 -1
  417. metadata/generated/schema/entity/services/connections/database/sasConnection.py +1 -1
  418. metadata/generated/schema/entity/services/connections/database/singleStoreConnection.py +1 -1
  419. metadata/generated/schema/entity/services/connections/database/snowflakeConnection.py +1 -1
  420. metadata/generated/schema/entity/services/connections/database/sqliteConnection.py +1 -1
  421. metadata/generated/schema/entity/services/connections/database/synapseConnection.py +1 -1
  422. metadata/generated/schema/entity/services/connections/database/teradataConnection.py +1 -1
  423. metadata/generated/schema/entity/services/connections/database/trinoConnection.py +1 -1
  424. metadata/generated/schema/entity/services/connections/database/unityCatalogConnection.py +1 -1
  425. metadata/generated/schema/entity/services/connections/database/verticaConnection.py +1 -1
  426. metadata/generated/schema/entity/services/connections/messaging/__init__.py +1 -1
  427. metadata/generated/schema/entity/services/connections/messaging/customMessagingConnection.py +1 -1
  428. metadata/generated/schema/entity/services/connections/messaging/kafkaConnection.py +1 -1
  429. metadata/generated/schema/entity/services/connections/messaging/kinesisConnection.py +1 -1
  430. metadata/generated/schema/entity/services/connections/messaging/pulsarConnection.py +1 -1
  431. metadata/generated/schema/entity/services/connections/messaging/redpandaConnection.py +9 -1
  432. metadata/generated/schema/entity/services/connections/messaging/saslMechanismType.py +1 -1
  433. metadata/generated/schema/entity/services/connections/metadata/__init__.py +1 -1
  434. metadata/generated/schema/entity/services/connections/metadata/alationConnection.py +1 -1
  435. metadata/generated/schema/entity/services/connections/metadata/alationSinkConnection.py +1 -1
  436. metadata/generated/schema/entity/services/connections/metadata/amundsenConnection.py +1 -1
  437. metadata/generated/schema/entity/services/connections/metadata/atlasConnection.py +1 -1
  438. metadata/generated/schema/entity/services/connections/metadata/metadataESConnection.py +1 -1
  439. metadata/generated/schema/entity/services/connections/metadata/openMetadataConnection.py +1 -1
  440. metadata/generated/schema/entity/services/connections/mlmodel/__init__.py +1 -1
  441. metadata/generated/schema/entity/services/connections/mlmodel/customMlModelConnection.py +1 -1
  442. metadata/generated/schema/entity/services/connections/mlmodel/mlflowConnection.py +1 -1
  443. metadata/generated/schema/entity/services/connections/mlmodel/sageMakerConnection.py +1 -1
  444. metadata/generated/schema/entity/services/connections/mlmodel/sklearnConnection.py +1 -1
  445. metadata/generated/schema/entity/services/connections/mlmodel/vertexaiConnection.py +1 -1
  446. metadata/generated/schema/entity/services/connections/pipeline/__init__.py +1 -1
  447. metadata/generated/schema/entity/services/connections/pipeline/airbyteConnection.py +1 -1
  448. metadata/generated/schema/entity/services/connections/pipeline/airflowConnection.py +1 -1
  449. metadata/generated/schema/entity/services/connections/pipeline/backendConnection.py +1 -1
  450. metadata/generated/schema/entity/services/connections/pipeline/customPipelineConnection.py +1 -1
  451. metadata/generated/schema/entity/services/connections/pipeline/dagsterConnection.py +1 -1
  452. metadata/generated/schema/entity/services/connections/pipeline/databricksPipelineConnection.py +1 -1
  453. metadata/generated/schema/entity/services/connections/pipeline/datafactoryConnection.py +1 -1
  454. metadata/generated/schema/entity/services/connections/pipeline/dbtCloudConnection.py +1 -1
  455. metadata/generated/schema/entity/services/connections/pipeline/domoPipelineConnection.py +1 -1
  456. metadata/generated/schema/entity/services/connections/pipeline/fivetranConnection.py +1 -1
  457. metadata/generated/schema/entity/services/connections/pipeline/flinkConnection.py +1 -1
  458. metadata/generated/schema/entity/services/connections/pipeline/gluePipelineConnection.py +1 -1
  459. metadata/generated/schema/entity/services/connections/pipeline/kafkaConnectConnection.py +1 -1
  460. metadata/generated/schema/entity/services/connections/pipeline/matillion/__init__.py +1 -1
  461. metadata/generated/schema/entity/services/connections/pipeline/matillion/matillionETL.py +1 -1
  462. metadata/generated/schema/entity/services/connections/pipeline/matillionConnection.py +1 -1
  463. metadata/generated/schema/entity/services/connections/pipeline/nifi/__init__.py +1 -1
  464. metadata/generated/schema/entity/services/connections/pipeline/nifi/basicAuth.py +1 -1
  465. metadata/generated/schema/entity/services/connections/pipeline/nifi/clientCertificateAuth.py +1 -1
  466. metadata/generated/schema/entity/services/connections/pipeline/nifiConnection.py +1 -1
  467. metadata/generated/schema/entity/services/connections/pipeline/openLineageConnection.py +1 -1
  468. metadata/generated/schema/entity/services/connections/pipeline/sparkConnection.py +1 -1
  469. metadata/generated/schema/entity/services/connections/pipeline/splineConnection.py +1 -1
  470. metadata/generated/schema/entity/services/connections/pipeline/ssisConnection.py +1 -1
  471. metadata/generated/schema/entity/services/connections/pipeline/stitchConnection.py +1 -1
  472. metadata/generated/schema/entity/services/connections/pipeline/wherescapeConnection.py +1 -1
  473. metadata/generated/schema/entity/services/connections/search/__init__.py +1 -1
  474. metadata/generated/schema/entity/services/connections/search/customSearchConnection.py +1 -1
  475. metadata/generated/schema/entity/services/connections/search/elasticSearch/__init__.py +1 -1
  476. metadata/generated/schema/entity/services/connections/search/elasticSearch/apiAuth.py +1 -1
  477. metadata/generated/schema/entity/services/connections/search/elasticSearch/basicAuth.py +1 -1
  478. metadata/generated/schema/entity/services/connections/search/elasticSearchConnection.py +1 -1
  479. metadata/generated/schema/entity/services/connections/search/openSearchConnection.py +1 -1
  480. metadata/generated/schema/entity/services/connections/serviceConnection.py +1 -1
  481. metadata/generated/schema/entity/services/connections/storage/__init__.py +1 -1
  482. metadata/generated/schema/entity/services/connections/storage/adlsConnection.py +1 -1
  483. metadata/generated/schema/entity/services/connections/storage/customStorageConnection.py +1 -1
  484. metadata/generated/schema/entity/services/connections/storage/gcsConnection.py +1 -1
  485. metadata/generated/schema/entity/services/connections/storage/s3Connection.py +1 -1
  486. metadata/generated/schema/entity/services/connections/testConnectionDefinition.py +1 -1
  487. metadata/generated/schema/entity/services/connections/testConnectionResult.py +1 -1
  488. metadata/generated/schema/entity/services/dashboardService.py +1 -1
  489. metadata/generated/schema/entity/services/databaseService.py +1 -1
  490. metadata/generated/schema/entity/services/ingestionPipelines/__init__.py +1 -1
  491. metadata/generated/schema/entity/services/ingestionPipelines/ingestionPipeline.py +1 -1
  492. metadata/generated/schema/entity/services/ingestionPipelines/pipelineServiceClientResponse.py +1 -1
  493. metadata/generated/schema/entity/services/ingestionPipelines/reverseIngestionResponse.py +1 -1
  494. metadata/generated/schema/entity/services/ingestionPipelines/status.py +1 -1
  495. metadata/generated/schema/entity/services/messagingService.py +1 -1
  496. metadata/generated/schema/entity/services/metadataService.py +1 -1
  497. metadata/generated/schema/entity/services/mlmodelService.py +1 -1
  498. metadata/generated/schema/entity/services/pipelineService.py +1 -1
  499. metadata/generated/schema/entity/services/searchService.py +1 -1
  500. metadata/generated/schema/entity/services/serviceType.py +1 -1
  501. metadata/generated/schema/entity/services/storageService.py +1 -1
  502. metadata/generated/schema/entity/teams/__init__.py +1 -1
  503. metadata/generated/schema/entity/teams/persona.py +1 -1
  504. metadata/generated/schema/entity/teams/role.py +1 -1
  505. metadata/generated/schema/entity/teams/team.py +8 -1
  506. metadata/generated/schema/entity/teams/teamHierarchy.py +1 -1
  507. metadata/generated/schema/entity/teams/user.py +11 -1
  508. metadata/generated/schema/entity/type.py +1 -1
  509. metadata/generated/schema/entity/utils/__init__.py +1 -1
  510. metadata/generated/schema/entity/utils/entitiesCount.py +1 -1
  511. metadata/generated/schema/entity/utils/servicesCount.py +1 -1
  512. metadata/generated/schema/entity/utils/supersetApiConnection.py +1 -1
  513. metadata/generated/schema/events/__init__.py +1 -1
  514. metadata/generated/schema/events/alertMetrics.py +1 -1
  515. metadata/generated/schema/events/api/__init__.py +1 -1
  516. metadata/generated/schema/events/api/createEventSubscription.py +1 -1
  517. metadata/generated/schema/events/api/eventSubscriptionDiagnosticInfo.py +1 -1
  518. metadata/generated/schema/events/api/eventsRecord.py +1 -1
  519. metadata/generated/schema/events/api/testEventSubscriptionDestination.py +1 -1
  520. metadata/generated/schema/events/api/typedEvent.py +1 -1
  521. metadata/generated/schema/events/emailAlertConfig.py +1 -1
  522. metadata/generated/schema/events/eventFilterRule.py +1 -1
  523. metadata/generated/schema/events/eventSubscription.py +1 -1
  524. metadata/generated/schema/events/eventSubscriptionOffset.py +1 -1
  525. metadata/generated/schema/events/failedEvent.py +1 -1
  526. metadata/generated/schema/events/failedEventResponse.py +1 -1
  527. metadata/generated/schema/events/filterResourceDescriptor.py +1 -1
  528. metadata/generated/schema/events/statusContext.py +1 -1
  529. metadata/generated/schema/events/subscriptionResourceDescriptor.py +1 -1
  530. metadata/generated/schema/events/subscriptionStatus.py +1 -1
  531. metadata/generated/schema/events/testDestinationStatus.py +1 -1
  532. metadata/generated/schema/governance/workflows/__init__.py +1 -1
  533. metadata/generated/schema/governance/workflows/elements/__init__.py +1 -1
  534. metadata/generated/schema/governance/workflows/elements/edge.py +1 -1
  535. metadata/generated/schema/governance/workflows/elements/nodeSubType.py +1 -1
  536. metadata/generated/schema/governance/workflows/elements/nodeType.py +1 -1
  537. metadata/generated/schema/governance/workflows/elements/nodes/__init__.py +1 -1
  538. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/__init__.py +1 -1
  539. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/checkEntityAttributesTask.py +1 -1
  540. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/createAndRunIngestionPipelineTask.py +1 -1
  541. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/runAppTask.py +1 -1
  542. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/setEntityCertificationTask.py +1 -1
  543. metadata/generated/schema/governance/workflows/elements/nodes/automatedTask/setGlossaryTermStatusTask.py +1 -1
  544. metadata/generated/schema/governance/workflows/elements/nodes/endEvent/__init__.py +1 -1
  545. metadata/generated/schema/governance/workflows/elements/nodes/endEvent/endEvent.py +1 -1
  546. metadata/generated/schema/governance/workflows/elements/nodes/gateway/__init__.py +1 -1
  547. metadata/generated/schema/governance/workflows/elements/nodes/gateway/parallelGateway.py +1 -1
  548. metadata/generated/schema/governance/workflows/elements/nodes/startEvent/__init__.py +1 -1
  549. metadata/generated/schema/governance/workflows/elements/nodes/startEvent/startEvent.py +1 -1
  550. metadata/generated/schema/governance/workflows/elements/nodes/userTask/__init__.py +1 -1
  551. metadata/generated/schema/governance/workflows/elements/nodes/userTask/userApprovalTask.py +1 -1
  552. metadata/generated/schema/governance/workflows/elements/triggers/__init__.py +1 -1
  553. metadata/generated/schema/governance/workflows/elements/triggers/eventBasedEntityTrigger.py +1 -1
  554. metadata/generated/schema/governance/workflows/elements/triggers/noOpTrigger.py +1 -1
  555. metadata/generated/schema/governance/workflows/elements/triggers/periodicBatchEntityTrigger.py +1 -1
  556. metadata/generated/schema/governance/workflows/workflowDefinition.py +1 -1
  557. metadata/generated/schema/governance/workflows/workflowInstance.py +1 -1
  558. metadata/generated/schema/governance/workflows/workflowInstanceState.py +1 -1
  559. metadata/generated/schema/jobs/__init__.py +1 -1
  560. metadata/generated/schema/jobs/backgroundJob.py +12 -3
  561. metadata/generated/schema/jobs/enumCleanupArgs.py +1 -1
  562. metadata/generated/schema/metadataIngestion/__init__.py +1 -1
  563. metadata/generated/schema/metadataIngestion/apiServiceMetadataPipeline.py +1 -1
  564. metadata/generated/schema/metadataIngestion/application.py +1 -1
  565. metadata/generated/schema/metadataIngestion/applicationPipeline.py +1 -1
  566. metadata/generated/schema/metadataIngestion/dashboardServiceMetadataPipeline.py +1 -1
  567. metadata/generated/schema/metadataIngestion/dataInsightPipeline.py +1 -1
  568. metadata/generated/schema/metadataIngestion/databaseServiceAutoClassificationPipeline.py +1 -1
  569. metadata/generated/schema/metadataIngestion/databaseServiceMetadataPipeline.py +1 -1
  570. metadata/generated/schema/metadataIngestion/databaseServiceProfilerPipeline.py +1 -1
  571. metadata/generated/schema/metadataIngestion/databaseServiceQueryLineagePipeline.py +1 -1
  572. metadata/generated/schema/metadataIngestion/databaseServiceQueryUsagePipeline.py +1 -1
  573. metadata/generated/schema/metadataIngestion/dbtPipeline.py +1 -1
  574. metadata/generated/schema/metadataIngestion/dbtconfig/__init__.py +1 -1
  575. metadata/generated/schema/metadataIngestion/dbtconfig/dbtAzureConfig.py +1 -1
  576. metadata/generated/schema/metadataIngestion/dbtconfig/dbtBucketDetails.py +1 -1
  577. metadata/generated/schema/metadataIngestion/dbtconfig/dbtCloudConfig.py +1 -1
  578. metadata/generated/schema/metadataIngestion/dbtconfig/dbtGCSConfig.py +1 -1
  579. metadata/generated/schema/metadataIngestion/dbtconfig/dbtHttpConfig.py +1 -1
  580. metadata/generated/schema/metadataIngestion/dbtconfig/dbtLocalConfig.py +1 -1
  581. metadata/generated/schema/metadataIngestion/dbtconfig/dbtS3Config.py +1 -1
  582. metadata/generated/schema/metadataIngestion/messagingServiceMetadataPipeline.py +1 -1
  583. metadata/generated/schema/metadataIngestion/metadataToElasticSearchPipeline.py +1 -1
  584. metadata/generated/schema/metadataIngestion/mlmodelServiceMetadataPipeline.py +1 -1
  585. metadata/generated/schema/metadataIngestion/pipelineServiceMetadataPipeline.py +1 -1
  586. metadata/generated/schema/metadataIngestion/reverseIngestionPipeline.py +1 -1
  587. metadata/generated/schema/metadataIngestion/reverseingestionconfig/__init__.py +1 -1
  588. metadata/generated/schema/metadataIngestion/reverseingestionconfig/descriptionConfig.py +1 -1
  589. metadata/generated/schema/metadataIngestion/reverseingestionconfig/ownerConfig.py +1 -1
  590. metadata/generated/schema/metadataIngestion/reverseingestionconfig/tagsConfig.py +1 -1
  591. metadata/generated/schema/metadataIngestion/searchServiceMetadataPipeline.py +1 -1
  592. metadata/generated/schema/metadataIngestion/storage/__init__.py +1 -1
  593. metadata/generated/schema/metadataIngestion/storage/containerMetadataConfig.py +1 -1
  594. metadata/generated/schema/metadataIngestion/storage/manifestMetadataConfig.py +1 -1
  595. metadata/generated/schema/metadataIngestion/storage/storageBucketDetails.py +1 -1
  596. metadata/generated/schema/metadataIngestion/storage/storageMetadataADLSConfig.py +1 -1
  597. metadata/generated/schema/metadataIngestion/storage/storageMetadataGCSConfig.py +1 -1
  598. metadata/generated/schema/metadataIngestion/storage/storageMetadataHttpConfig.py +1 -1
  599. metadata/generated/schema/metadataIngestion/storage/storageMetadataLocalConfig.py +1 -1
  600. metadata/generated/schema/metadataIngestion/storage/storageMetadataS3Config.py +1 -1
  601. metadata/generated/schema/metadataIngestion/storageServiceMetadataPipeline.py +1 -1
  602. metadata/generated/schema/metadataIngestion/testSuitePipeline.py +1 -1
  603. metadata/generated/schema/metadataIngestion/workflow.py +1 -1
  604. metadata/generated/schema/monitoring/__init__.py +1 -1
  605. metadata/generated/schema/monitoring/eventMonitorProvider.py +1 -1
  606. metadata/generated/schema/scim/__init__.py +3 -0
  607. metadata/generated/schema/scim/scimConfiguration.py +32 -0
  608. metadata/generated/schema/search/__init__.py +1 -1
  609. metadata/generated/schema/search/aggregationRequest.py +1 -1
  610. metadata/generated/schema/search/searchRequest.py +8 -1
  611. metadata/generated/schema/security/__init__.py +1 -1
  612. metadata/generated/schema/security/client/__init__.py +1 -1
  613. metadata/generated/schema/security/client/auth0SSOClientConfig.py +1 -1
  614. metadata/generated/schema/security/client/azureSSOClientConfig.py +1 -1
  615. metadata/generated/schema/security/client/customOidcSSOClientConfig.py +1 -1
  616. metadata/generated/schema/security/client/googleSSOClientConfig.py +1 -1
  617. metadata/generated/schema/security/client/oidcClientConfig.py +1 -1
  618. metadata/generated/schema/security/client/oktaSSOClientConfig.py +1 -1
  619. metadata/generated/schema/security/client/openMetadataJWTClientConfig.py +1 -1
  620. metadata/generated/schema/security/client/samlSSOClientConfig.py +1 -1
  621. metadata/generated/schema/security/credentials/__init__.py +1 -1
  622. metadata/generated/schema/security/credentials/accessTokenAuth.py +1 -1
  623. metadata/generated/schema/security/credentials/apiAccessTokenAuth.py +1 -1
  624. metadata/generated/schema/security/credentials/awsCredentials.py +1 -1
  625. metadata/generated/schema/security/credentials/azureCredentials.py +1 -1
  626. metadata/generated/schema/security/credentials/basicAuth.py +1 -1
  627. metadata/generated/schema/security/credentials/bitbucketCredentials.py +1 -1
  628. metadata/generated/schema/security/credentials/gcpCredentials.py +1 -1
  629. metadata/generated/schema/security/credentials/gcpExternalAccount.py +1 -1
  630. metadata/generated/schema/security/credentials/gcpValues.py +1 -1
  631. metadata/generated/schema/security/credentials/gitCredentials.py +1 -1
  632. metadata/generated/schema/security/credentials/githubCredentials.py +1 -1
  633. metadata/generated/schema/security/credentials/gitlabCredentials.py +1 -1
  634. metadata/generated/schema/security/sasl/__init__.py +1 -1
  635. metadata/generated/schema/security/sasl/saslClientConfig.py +1 -1
  636. metadata/generated/schema/security/secrets/__init__.py +1 -1
  637. metadata/generated/schema/security/secrets/secretsManagerClientLoader.py +1 -1
  638. metadata/generated/schema/security/secrets/secretsManagerConfiguration.py +1 -1
  639. metadata/generated/schema/security/secrets/secretsManagerProvider.py +1 -1
  640. metadata/generated/schema/security/securityConfiguration.py +1 -1
  641. metadata/generated/schema/security/ssl/__init__.py +1 -1
  642. metadata/generated/schema/security/ssl/validateSSLClientConfig.py +1 -1
  643. metadata/generated/schema/security/ssl/verifySSLConfig.py +1 -1
  644. metadata/generated/schema/settings/__init__.py +1 -1
  645. metadata/generated/schema/settings/settings.py +2 -1
  646. metadata/generated/schema/system/__init__.py +1 -1
  647. metadata/generated/schema/system/entityError.py +1 -1
  648. metadata/generated/schema/system/eventPublisherJob.py +8 -1
  649. metadata/generated/schema/system/indexingError.py +1 -1
  650. metadata/generated/schema/system/limitsResponse.py +1 -1
  651. metadata/generated/schema/system/ui/__init__.py +1 -1
  652. metadata/generated/schema/system/ui/knowledgePanel.py +1 -1
  653. metadata/generated/schema/system/ui/navigationItem.py +1 -1
  654. metadata/generated/schema/system/ui/page.py +1 -1
  655. metadata/generated/schema/system/ui/tab.py +1 -1
  656. metadata/generated/schema/system/ui/uiCustomization.py +1 -1
  657. metadata/generated/schema/system/validationResponse.py +1 -1
  658. metadata/generated/schema/tests/__init__.py +1 -1
  659. metadata/generated/schema/tests/assigned.py +1 -1
  660. metadata/generated/schema/tests/basic.py +1 -1
  661. metadata/generated/schema/tests/customMetric.py +1 -1
  662. metadata/generated/schema/tests/dataQualityReport.py +1 -1
  663. metadata/generated/schema/tests/resolved.py +1 -1
  664. metadata/generated/schema/tests/testCase.py +1 -1
  665. metadata/generated/schema/tests/testCaseResolutionStatus.py +1 -1
  666. metadata/generated/schema/tests/testDefinition.py +1 -1
  667. metadata/generated/schema/tests/testSuite.py +1 -1
  668. metadata/generated/schema/type/__init__.py +1 -1
  669. metadata/generated/schema/type/apiSchema.py +1 -1
  670. metadata/generated/schema/type/assetCertification.py +1 -1
  671. metadata/generated/schema/type/auditLog.py +1 -1
  672. metadata/generated/schema/type/basic.py +1 -1
  673. metadata/generated/schema/type/bulkOperationResult.py +1 -1
  674. metadata/generated/schema/type/changeEvent.py +1 -1
  675. metadata/generated/schema/type/changeEventType.py +1 -1
  676. metadata/generated/schema/type/changeSummaryMap.py +1 -1
  677. metadata/generated/schema/type/collectionDescriptor.py +1 -1
  678. metadata/generated/schema/type/csvDocumentation.py +1 -1
  679. metadata/generated/schema/type/csvErrorType.py +1 -1
  680. metadata/generated/schema/type/csvFile.py +1 -1
  681. metadata/generated/schema/type/csvImportResult.py +1 -1
  682. metadata/generated/schema/type/customProperties/__init__.py +1 -1
  683. metadata/generated/schema/type/customProperties/complexTypes.py +1 -1
  684. metadata/generated/schema/type/customProperties/enumConfig.py +1 -1
  685. metadata/generated/schema/type/customProperties/tableConfig.py +1 -1
  686. metadata/generated/schema/type/customProperty.py +1 -1
  687. metadata/generated/schema/type/dailyCount.py +1 -1
  688. metadata/generated/schema/type/databaseConnectionConfig.py +1 -1
  689. metadata/generated/schema/type/entityHierarchy.py +1 -1
  690. metadata/generated/schema/type/entityHistory.py +1 -1
  691. metadata/generated/schema/type/entityLineage.py +1 -1
  692. metadata/generated/schema/type/entityReference.py +1 -1
  693. metadata/generated/schema/type/entityReferenceList.py +1 -1
  694. metadata/generated/schema/type/entityRelationship.py +1 -1
  695. metadata/generated/schema/type/entityUsage.py +1 -1
  696. metadata/generated/schema/type/filterPattern.py +1 -1
  697. metadata/generated/schema/type/function.py +1 -1
  698. metadata/generated/schema/type/include.py +1 -1
  699. metadata/generated/schema/type/jdbcConnection.py +1 -1
  700. metadata/generated/schema/type/lifeCycle.py +1 -1
  701. metadata/generated/schema/type/paging.py +1 -1
  702. metadata/generated/schema/type/profile.py +1 -1
  703. metadata/generated/schema/type/queryParserData.py +1 -1
  704. metadata/generated/schema/type/reaction.py +1 -1
  705. metadata/generated/schema/type/schedule.py +1 -1
  706. metadata/generated/schema/type/schema.py +1 -1
  707. metadata/generated/schema/type/tableQuery.py +1 -1
  708. metadata/generated/schema/type/tableUsageCount.py +1 -1
  709. metadata/generated/schema/type/tagLabel.py +1 -1
  710. metadata/generated/schema/type/usageDetails.py +1 -1
  711. metadata/generated/schema/type/usageRequest.py +1 -1
  712. metadata/generated/schema/type/votes.py +1 -1
  713. metadata/great_expectations/action.py +4 -8
  714. metadata/great_expectations/action1xx.py +395 -0
  715. metadata/ingestion/connections/builders.py +14 -4
  716. metadata/ingestion/connections/connection.py +63 -0
  717. metadata/ingestion/connections/query_logger.py +115 -0
  718. metadata/ingestion/connections/test_connections.py +1 -1
  719. metadata/ingestion/ometa/mixins/tests_mixin.py +3 -5
  720. metadata/ingestion/ometa/routes.py +2 -0
  721. metadata/ingestion/sink/metadata_rest.py +54 -11
  722. metadata/ingestion/source/api/api_service.py +2 -7
  723. metadata/ingestion/source/connections.py +80 -14
  724. metadata/ingestion/source/connections_utils.py +32 -0
  725. metadata/ingestion/source/dashboard/dashboard_service.py +26 -15
  726. metadata/ingestion/source/dashboard/powerbi/metadata.py +32 -20
  727. metadata/ingestion/source/dashboard/superset/connection.py +8 -8
  728. metadata/ingestion/source/dashboard/superset/queries.py +1 -1
  729. metadata/ingestion/source/dashboard/tableau/metadata.py +12 -2
  730. metadata/ingestion/source/dashboard/tableau/models.py +12 -2
  731. metadata/ingestion/source/database/bigquery/connection.py +13 -9
  732. metadata/ingestion/source/database/bigquery/helper.py +11 -9
  733. metadata/ingestion/source/database/bigquery/metadata.py +102 -13
  734. metadata/ingestion/source/database/bigquery/queries.py +15 -3
  735. metadata/ingestion/source/database/common_db_source.py +2 -4
  736. metadata/ingestion/source/database/database_service.py +2 -7
  737. metadata/ingestion/source/database/datalake/metadata.py +1 -1
  738. metadata/ingestion/source/database/dbt/metadata.py +0 -5
  739. metadata/ingestion/source/database/mysql/connection.py +52 -45
  740. metadata/ingestion/source/database/mysql/service_spec.py +2 -0
  741. metadata/ingestion/source/database/query_parser_source.py +2 -7
  742. metadata/ingestion/source/database/redshift/connection.py +1 -1
  743. metadata/ingestion/source/database/sample_data.py +1 -1
  744. metadata/ingestion/source/database/saphana/lineage.py +2 -7
  745. metadata/ingestion/source/database/sas/metadata.py +2 -7
  746. metadata/ingestion/source/database/snowflake/metadata.py +1 -2
  747. metadata/ingestion/source/database/snowflake/utils.py +0 -4
  748. metadata/ingestion/source/database/trino/profiler/system_tables_profiler.py +26 -17
  749. metadata/ingestion/source/database/unitycatalog/connection.py +33 -0
  750. metadata/ingestion/source/database/unitycatalog/lineage.py +2 -7
  751. metadata/ingestion/source/database/unitycatalog/metadata.py +126 -13
  752. metadata/ingestion/source/database/unitycatalog/queries.py +19 -0
  753. metadata/ingestion/source/messaging/messaging_service.py +2 -7
  754. metadata/ingestion/source/metadata/alationsink/metadata.py +2 -7
  755. metadata/ingestion/source/metadata/amundsen/metadata.py +2 -7
  756. metadata/ingestion/source/metadata/atlas/metadata.py +2 -7
  757. metadata/ingestion/source/mlmodel/mlmodel_service.py +2 -7
  758. metadata/ingestion/source/pipeline/airflow/connection.py +4 -6
  759. metadata/ingestion/source/pipeline/nifi/metadata.py +133 -3
  760. metadata/ingestion/source/pipeline/pipeline_service.py +20 -7
  761. metadata/ingestion/source/search/search_service.py +2 -7
  762. metadata/ingestion/source/storage/storage_service.py +2 -7
  763. metadata/profiler/interface/sqlalchemy/bigquery/profiler_interface.py +3 -3
  764. metadata/profiler/metrics/static/not_regexp_match_count.py +4 -3
  765. metadata/profiler/metrics/static/regexp_match_count.py +3 -2
  766. metadata/profiler/orm/functions/length.py +1 -0
  767. metadata/profiler/orm/functions/md5.py +9 -0
  768. metadata/profiler/orm/functions/modulo.py +1 -0
  769. metadata/profiler/orm/functions/random_num.py +4 -0
  770. metadata/profiler/orm/functions/regexp.py +40 -0
  771. metadata/profiler/orm/functions/table_metric_computer.py +34 -8
  772. metadata/profiler/orm/registry.py +1 -0
  773. metadata/profiler/processor/core.py +2 -2
  774. metadata/profiler/processor/default.py +29 -28
  775. metadata/profiler/processor/metric_filter.py +16 -3
  776. metadata/profiler/processor/models.py +14 -4
  777. metadata/profiler/source/database/base/profiler_resolver.py +35 -0
  778. metadata/profiler/source/database/base/profiler_source.py +45 -30
  779. metadata/profiler/source/profiler_source_interface.py +8 -13
  780. metadata/sampler/sampler_interface.py +15 -10
  781. metadata/sampler/sqlalchemy/bigquery/sampler.py +7 -0
  782. metadata/utils/dependency_injector/dependency_injector.py +403 -0
  783. metadata/utils/service_spec/service_spec.py +66 -10
  784. metadata/workflow/profiler.py +2 -7
  785. {openmetadata_ingestion-1.7.4.2.dist-info → openmetadata_ingestion-1.8.0.0.dist-info}/METADATA +516 -505
  786. {openmetadata_ingestion-1.7.4.2.dist-info → openmetadata_ingestion-1.8.0.0.dist-info}/RECORD +790 -767
  787. {openmetadata_ingestion-1.7.4.2.dist-info → openmetadata_ingestion-1.8.0.0.dist-info}/LICENSE +0 -0
  788. {openmetadata_ingestion-1.7.4.2.dist-info → openmetadata_ingestion-1.8.0.0.dist-info}/WHEEL +0 -0
  789. {openmetadata_ingestion-1.7.4.2.dist-info → openmetadata_ingestion-1.8.0.0.dist-info}/entry_points.txt +0 -0
  790. {openmetadata_ingestion-1.7.4.2.dist-info → openmetadata_ingestion-1.8.0.0.dist-info}/top_level.txt +0 -0
@@ -72,7 +72,9 @@ def get_inspector_details(
72
72
  "lifetime"
73
73
  ] = new_service_connection.credentials.gcpImpersonateServiceAccount.lifetime
74
74
 
75
- client = get_bigquery_client(project_id=database_name, **kwargs)
75
+ client = get_bigquery_client(
76
+ project_id=new_service_connection.billingProjectId or database_name, **kwargs
77
+ )
76
78
  engine = get_connection(new_service_connection)
77
79
  inspector = inspect(engine)
78
80
 
@@ -86,15 +88,15 @@ def get_pk_constraint(
86
88
  This function overrides to get primary key constraint
87
89
  """
88
90
  try:
89
- constraints = PK_CACHE.get(f"{connection.engine.url.host}.{schema}")
91
+ project, schema = schema.split(".")
92
+ constraints = PK_CACHE.get(f"{project}.{schema}")
90
93
  if constraints is None:
91
94
  constraints = connection.engine.execute(
92
95
  BIGQUERY_TABLE_CONSTRAINTS.format(
93
- project_id=connection.engine.url.host,
94
- schema_name=schema,
96
+ project_id=project, schema_name=schema
95
97
  )
96
98
  )
97
- PK_CACHE[f"{connection.engine.url.host}.{schema}"] = constraints.fetchall()
99
+ PK_CACHE[f"{project}.{schema}"] = constraints.fetchall()
98
100
 
99
101
  col_name = []
100
102
  table_constraints = [row for row in constraints if row.table_name == table_name]
@@ -116,15 +118,15 @@ def get_foreign_keys(
116
118
  This function overrides to get foreign key constraint
117
119
  """
118
120
  try:
119
- constraints = FK_CACHE.get(f"{connection.engine.url.host}.{schema}")
121
+ project, schema = schema.split(".")
122
+ constraints = FK_CACHE.get(f"{project}.{schema}")
120
123
  if constraints is None:
121
124
  constraints = connection.engine.execute(
122
125
  BIGQUERY_FOREIGN_CONSTRAINTS.format(
123
- project_id=connection.engine.url.host,
124
- schema_name=schema,
126
+ project_id=project, schema_name=schema
125
127
  )
126
128
  )
127
- FK_CACHE[f"{connection.engine.url.host}.{schema}"] = constraints.fetchall()
129
+ FK_CACHE[f"{project}.{schema}"] = constraints.fetchall()
128
130
 
129
131
  col_name = []
130
132
  table_constraints = [row for row in constraints if row.table_name == table_name]
@@ -83,7 +83,10 @@ from metadata.ingestion.source.database.bigquery.models import (
83
83
  BigQueryStoredProcedure,
84
84
  )
85
85
  from metadata.ingestion.source.database.bigquery.queries import (
86
+ BIGQUERY_GET_MATERIALIZED_VIEW_NAMES,
87
+ BIGQUERY_GET_SCHEMA_NAMES,
86
88
  BIGQUERY_GET_STORED_PROCEDURES,
89
+ BIGQUERY_GET_VIEW_NAMES,
87
90
  BIGQUERY_LIFE_CYCLE_QUERY,
88
91
  BIGQUERY_SCHEMA_DESCRIPTION,
89
92
  BIGQUERY_TABLE_AND_TYPE,
@@ -238,6 +241,7 @@ Inspector.get_all_table_ddls = get_all_table_ddls
238
241
  Inspector.get_table_ddl = get_table_ddl
239
242
 
240
243
 
244
+ # pylint: disable=too-many-public-methods
241
245
  class BigquerySource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
242
246
  """
243
247
  Implements the necessary methods to extract
@@ -347,6 +351,33 @@ class BigquerySource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
347
351
  logger.debug(traceback.format_exc())
348
352
  raise InvalidSourceException(f"Error setting BigQuery project IDs: {exc}")
349
353
 
354
+ # pylint: disable=arguments-differ
355
+ def _get_columns_with_constraints(
356
+ self, schema_name: str, table_name: str, inspector: Inspector
357
+ ) -> Tuple[List, List, List]:
358
+ database_name = self.context.get().database
359
+ schema_name = f"{database_name}.{schema_name}"
360
+ return super()._get_columns_with_constraints(schema_name, table_name, inspector)
361
+
362
+ def _get_columns_internal(
363
+ self,
364
+ schema_name: str,
365
+ table_name: str,
366
+ db_name: str,
367
+ inspector: Inspector,
368
+ table_type: TableType = None,
369
+ ):
370
+ """
371
+ Get columns list
372
+ """
373
+
374
+ return inspector.get_columns(
375
+ table_name,
376
+ f"{db_name}.{schema_name}",
377
+ table_type=table_type,
378
+ db_name=db_name,
379
+ )
380
+
350
381
  def _test_connection(self) -> None:
351
382
  for project_id in self.project_ids:
352
383
  inspector_details = get_inspector_details(
@@ -375,7 +406,7 @@ class BigquerySource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
375
406
  table_names_and_types = (
376
407
  self.engine.execute(
377
408
  BIGQUERY_TABLE_AND_TYPE.format(
378
- project_id=self.client.project, schema_name=schema_name
409
+ project_id=self.context.get().database, schema_name=schema_name
379
410
  )
380
411
  )
381
412
  or []
@@ -409,8 +440,6 @@ class BigquerySource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
409
440
  logic on how to handle table types, e.g., material views,...
410
441
  """
411
442
 
412
- view_names = self.inspector.get_view_names(schema_name) or []
413
-
414
443
  if self.incremental.enabled:
415
444
  view_names = [
416
445
  view_name
@@ -419,10 +448,50 @@ class BigquerySource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
419
448
  in self.incremental_table_processor.get_not_deleted(schema_name)
420
449
  ]
421
450
 
422
- return [
423
- TableNameAndType(name=view_name, type_=TableType.View)
424
- for view_name in view_names
425
- ]
451
+ table_name_and_types = []
452
+ for table_type, query in {
453
+ TableType.View: BIGQUERY_GET_VIEW_NAMES,
454
+ TableType.MaterializedView: BIGQUERY_GET_MATERIALIZED_VIEW_NAMES,
455
+ }.items():
456
+ view_names = list(
457
+ map(
458
+ lambda x: x[0],
459
+ (
460
+ self.engine.execute(
461
+ query.format(
462
+ project=self.context.get().database, dataset=schema_name
463
+ )
464
+ )
465
+ or []
466
+ ),
467
+ )
468
+ )
469
+ if self.incremental.enabled:
470
+ view_names = [
471
+ view_name
472
+ for view_name in view_names
473
+ if view_name
474
+ in self.incremental_table_processor.get_not_deleted(schema_name)
475
+ ]
476
+
477
+ table_name_and_types.extend(
478
+ [
479
+ TableNameAndType(name=view_name, type_=table_type)
480
+ for view_name in view_names
481
+ ]
482
+ )
483
+
484
+ return table_name_and_types
485
+
486
+ # pylint: disable=arguments-differ
487
+ @calculate_execution_time()
488
+ def get_table_description(
489
+ self, schema_name: str, table_name: str, inspector: Inspector
490
+ ) -> str:
491
+ schema_name = f"{self.context.get().database}.{schema_name}"
492
+ return super().get_table_description(
493
+ schema_name=schema_name, table_name=table_name, inspector=inspector
494
+ )
426
495
 
427
496
  def yield_tag(
428
497
  self, schema_name: str
@@ -430,7 +499,9 @@ class BigquerySource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
430
499
  """Build tag context"""
431
500
  try:
432
501
  # Fetching labels on the databaseSchema ( dataset ) level
433
- dataset_obj = self.client.get_dataset(schema_name)
502
+ dataset_obj = self.client.get_dataset(
503
+ f"{self.context.get().database}.{schema_name}"
504
+ )
434
505
  if dataset_obj.labels:
435
506
  for key, value in dataset_obj.labels.items():
436
507
  yield from get_ometa_tag_and_classification(
@@ -477,7 +548,7 @@ class BigquerySource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
477
548
  try:
478
549
  query_resp = self.client.query(
479
550
  BIGQUERY_SCHEMA_DESCRIPTION.format(
480
- project_id=self.client.project,
551
+ project_id=self.context.get().database,
481
552
  region=self.service_connection.usageLocation,
482
553
  schema_name=schema_name,
483
554
  )
@@ -505,7 +576,7 @@ class BigquerySource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
505
576
  3. Adds the Deleted Tables to the context
506
577
  """
507
578
  self.incremental_table_processor.set_changed_tables_map(
508
- project=self.client.project,
579
+ project=self.context.get().database,
509
580
  dataset=schema_name,
510
581
  start_date=self.incremental.start_datetime_utc,
511
582
  )
@@ -526,6 +597,18 @@ class BigquerySource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
526
597
  ]
527
598
  )
528
599
 
600
+ def get_raw_database_schema_names(self) -> Iterable[str]:
601
+ if self.service_connection.__dict__.get("databaseSchema"):
602
+ yield self.service_connection.databaseSchema
603
+ else:
604
+ for schema in self.engine.execute(
605
+ BIGQUERY_GET_SCHEMA_NAMES.format(
606
+ project=self.context.get().database,
607
+ region=self.service_connection.usageLocation,
608
+ )
609
+ ):
610
+ yield schema[0]
611
+
529
612
  def _get_filtered_schema_names(
530
613
  self, return_fqn: bool = False, add_to_status: bool = True
531
614
  ) -> Iterable[str]:
@@ -575,7 +658,9 @@ class BigquerySource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
575
658
  ),
576
659
  )
577
660
  if self.source_config.includeTags:
578
- dataset_obj = self.client.get_dataset(schema_name)
661
+ dataset_obj = self.client.get_dataset(
662
+ f"{self.context.get().database}.{schema_name}"
663
+ )
579
664
  if dataset_obj.labels:
580
665
  database_schema_request_obj.tags = []
581
666
  for label_classification, label_tag_name in dataset_obj.labels.items():
@@ -707,7 +792,9 @@ class BigquerySource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
707
792
 
708
793
  if self.source_config.includeDDL:
709
794
  schema_definition = inspector.get_table_ddl(
710
- self.connection, table_name, schema_name
795
+ self.connection,
796
+ table_name,
797
+ f"{self.context.get().database}.{schema_name}",
711
798
  )
712
799
  schema_definition = (
713
800
  str(schema_definition).strip()
@@ -784,7 +871,9 @@ class BigquerySource(LifeCycleQueryMixin, CommonDbSourceService, MultiDBSource):
784
871
  try:
785
872
  database = self.context.get().database
786
873
  table = self.client.get_table(fqn._build(database, schema_name, table_name))
787
- columns = inspector.get_columns(table_name, schema_name, db_name=database)
874
+ columns = inspector.get_columns(
875
+ table_name, f"{database}.{schema_name}", db_name=database
876
+ )
788
877
  if (
789
878
  hasattr(table, "external_data_configuration")
790
879
  and hasattr(table.external_data_configuration, "hive_partitioning")
@@ -63,7 +63,7 @@ BIGQUERY_SCHEMA_DESCRIPTION = textwrap.dedent(
63
63
 
64
64
  BIGQUERY_TABLE_AND_TYPE = textwrap.dedent(
65
65
  """
66
- select table_name, table_type from `{project_id}`.{schema_name}.INFORMATION_SCHEMA.TABLES where table_type != 'VIEW'
66
+ select table_name, table_type from `{project_id}`.{schema_name}.INFORMATION_SCHEMA.TABLES where table_type NOT IN ('VIEW', 'MATERIALIZED VIEW')
67
67
  """
68
68
  )
69
69
 
@@ -96,7 +96,7 @@ SELECT
96
96
  routine_name as name,
97
97
  routine_definition as definition,
98
98
  external_language as language
99
- FROM `{schema_name}`.INFORMATION_SCHEMA.ROUTINES
99
+ FROM `{database_name}`.`{schema_name}`.INFORMATION_SCHEMA.ROUTINES
100
100
  WHERE routine_type in ('PROCEDURE', 'TABLE FUNCTION')
101
101
  AND routine_catalog = '{database_name}'
102
102
  AND routine_schema = '{schema_name}'
@@ -164,7 +164,7 @@ BIGQUERY_LIFE_CYCLE_QUERY = textwrap.dedent(
164
164
  select
165
165
  table_name as table_name,
166
166
  creation_time as created_at
167
- from `{schema_name}`.INFORMATION_SCHEMA.TABLES
167
+ from `{database_name}`.`{schema_name}`.INFORMATION_SCHEMA.TABLES
168
168
  where table_schema = '{schema_name}'
169
169
  and table_catalog = '{database_name}'
170
170
  """
@@ -182,6 +182,18 @@ AND resource.labels.dataset_id = "{dataset}"
182
182
  AND timestamp >= "{start_date}"
183
183
  """
184
184
 
185
+ BIGQUERY_GET_SCHEMA_NAMES = """
186
+ SELECT schema_name FROM `{project}`.`region-{region}`.INFORMATION_SCHEMA.SCHEMATA;
187
+ """
188
+
189
+ BIGQUERY_GET_VIEW_NAMES = """
190
+ SELECT table_name FROM `{project}`.`{dataset}`.INFORMATION_SCHEMA.VIEWS;
191
+ """
192
+
193
+ BIGQUERY_GET_MATERIALIZED_VIEW_NAMES = """
194
+ SELECT table_name FROM `{project}`.`{dataset}`.INFORMATION_SCHEMA.MATERIALIZED_VIEWS;
195
+ """
196
+
185
197
 
186
198
  class BigQueryQueryResult(BaseModel):
187
199
  project_id: str
@@ -61,10 +61,8 @@ from metadata.ingestion.connections.session import create_and_bind_thread_safe_s
61
61
  from metadata.ingestion.models.ometa_classification import OMetaTagAndClassification
62
62
  from metadata.ingestion.models.patch_request import PatchedEntity, PatchRequest
63
63
  from metadata.ingestion.ometa.ometa_api import OpenMetadata
64
- from metadata.ingestion.source.connections import (
65
- get_connection,
66
- kill_active_connections,
67
- )
64
+ from metadata.ingestion.source.connections import get_connection
65
+ from metadata.ingestion.source.connections_utils import kill_active_connections
68
66
  from metadata.ingestion.source.database.database_service import DatabaseServiceSource
69
67
  from metadata.ingestion.source.database.sql_column_handler import SqlColumnHandlerMixin
70
68
  from metadata.ingestion.source.database.sqlalchemy_source import SqlAlchemySource
@@ -57,9 +57,6 @@ from metadata.ingestion.api.delete import delete_entity_from_source
57
57
  from metadata.ingestion.api.models import Either
58
58
  from metadata.ingestion.api.steps import Source
59
59
  from metadata.ingestion.api.topology_runner import TopologyRunnerMixin
60
- from metadata.ingestion.connections.test_connections import (
61
- raise_test_connection_exception,
62
- )
63
60
  from metadata.ingestion.models.life_cycle import OMetaLifeCycleData
64
61
  from metadata.ingestion.models.ometa_classification import OMetaTagAndClassification
65
62
  from metadata.ingestion.models.topology import (
@@ -68,7 +65,7 @@ from metadata.ingestion.models.topology import (
68
65
  TopologyContextManager,
69
66
  TopologyNode,
70
67
  )
71
- from metadata.ingestion.source.connections import get_test_connection_fn
68
+ from metadata.ingestion.source.connections import test_connection_common
72
69
  from metadata.utils import fqn
73
70
  from metadata.utils.execution_time_tracker import calculate_execution_time
74
71
  from metadata.utils.filters import filter_by_schema
@@ -604,8 +601,6 @@ class DatabaseServiceSource(
604
601
  """
605
602
 
606
603
  def test_connection(self) -> None:
607
- test_connection_fn = get_test_connection_fn(self.service_connection)
608
- result = test_connection_fn(
604
+ test_connection_common(
609
605
  self.metadata, self.connection_obj, self.service_connection
610
606
  )
611
- raise_test_connection_exception(result)
@@ -248,7 +248,7 @@ class DatalakeSource(DatabaseServiceSource):
248
248
  if self.source_config.includeTables:
249
249
  for key_name in self.client.get_table_names(bucket_name, prefix):
250
250
  table_name = self.standardize_table_name(bucket_name, key_name)
251
-
251
+ logger.info(f"Processing table: {table_name}")
252
252
  if self.filter_dl_table(table_name):
253
253
  continue
254
254
 
@@ -83,7 +83,6 @@ from metadata.ingestion.source.database.dbt.dbt_service import (
83
83
  )
84
84
  from metadata.ingestion.source.database.dbt.dbt_utils import (
85
85
  check_ephemeral_node,
86
- check_or_create_test_suite,
87
86
  create_test_case_parameter_definitions,
88
87
  create_test_case_parameter_values,
89
88
  generate_entity_link,
@@ -1024,9 +1023,6 @@ class DbtSource(DbtServiceSource):
1024
1023
  logger.debug(f"Processing DBT Test Case for node: {manifest_node.name}")
1025
1024
  entity_link_list = generate_entity_link(dbt_test)
1026
1025
  for entity_link_str in entity_link_list:
1027
- test_suite = check_or_create_test_suite(
1028
- self.metadata, entity_link_str
1029
- )
1030
1026
  table_fqn = get_table_fqn(entity_link_str)
1031
1027
  logger.debug(f"Table fqn found: {table_fqn}")
1032
1028
  source_elements = table_fqn.split(fqn.FQN_SEPARATOR)
@@ -1056,7 +1052,6 @@ class DbtSource(DbtServiceSource):
1056
1052
  manifest_node.name
1057
1053
  ),
1058
1054
  entityLink=entity_link_str,
1059
- testSuite=test_suite.fullyQualifiedName,
1060
1055
  parameterValues=create_test_case_parameter_values(
1061
1056
  dbt_test
1062
1057
  ),
@@ -20,6 +20,9 @@ from metadata.clients.azure_client import AzureClient
20
20
  from metadata.generated.schema.entity.automations.workflow import (
21
21
  Workflow as AutomationWorkflow,
22
22
  )
23
+ from metadata.generated.schema.entity.services.connections.database.common.azureConfig import (
24
+ AzureConfigurationSource,
25
+ )
23
26
  from metadata.generated.schema.entity.services.connections.database.common.basicAuth import (
24
27
  BasicAuth,
25
28
  )
@@ -34,6 +37,7 @@ from metadata.ingestion.connections.builders import (
34
37
  get_connection_args_common,
35
38
  get_connection_url_common,
36
39
  )
40
+ from metadata.ingestion.connections.connection import BaseConnection
37
41
  from metadata.ingestion.connections.test_connections import (
38
42
  test_connection_db_schema_sources,
39
43
  )
@@ -45,51 +49,54 @@ from metadata.ingestion.source.database.mysql.queries import (
45
49
  from metadata.utils.constants import THREE_MIN
46
50
 
47
51
 
48
- def get_connection(connection: MysqlConnection) -> Engine:
49
- """
50
- Create connection
51
- """
52
- if hasattr(connection.authType, "azureConfig"):
53
- azure_client = AzureClient(connection.authType.azureConfig).create_client()
54
- if not connection.authType.azureConfig.scopes:
55
- raise ValueError(
56
- "Azure Scopes are missing, please refer https://learn.microsoft.com/"
57
- "en-gb/azure/mysql/flexible-server/how-to-azure-ad#2---retrieve-micr"
58
- "osoft-entra-access-token and fetch the resource associated with it,"
59
- " for e.g. https://ossrdbms-aad.database.windows.net/.default"
52
+ class MySQLConnection(BaseConnection[MysqlConnection, Engine]):
53
+ def get_client(self) -> Engine:
54
+ """
55
+ Return the SQLAlchemy Engine for MySQL.
56
+ """
57
+ connection = self.service_connection
58
+
59
+ if isinstance(connection.authType, AzureConfigurationSource):
60
+ if not connection.authType.azureConfig:
61
+ raise ValueError("Azure Config is missing")
62
+ azure_client = AzureClient(connection.authType.azureConfig).create_client()
63
+ if not connection.authType.azureConfig.scopes:
64
+ raise ValueError(
65
+ "Azure Scopes are missing, please refer https://learn.microsoft.com/"
66
+ "en-gb/azure/mysql/flexible-server/how-to-azure-ad#2---retrieve-micr"
67
+ "osoft-entra-access-token and fetch the resource associated with it,"
68
+ " for e.g. https://ossrdbms-aad.database.windows.net/.default"
69
+ )
70
+ access_token_obj = azure_client.get_token(
71
+ *connection.authType.azureConfig.scopes.split(",")
60
72
  )
61
- access_token_obj = azure_client.get_token(
62
- *connection.authType.azureConfig.scopes.split(",")
73
+ connection.authType = BasicAuth(password=access_token_obj.token) # type: ignore
74
+ return create_generic_db_connection(
75
+ connection=connection,
76
+ get_connection_url_fn=get_connection_url_common,
77
+ get_connection_args_fn=get_connection_args_common,
63
78
  )
64
- connection.authType = BasicAuth(password=access_token_obj.token)
65
- return create_generic_db_connection(
66
- connection=connection,
67
- get_connection_url_fn=get_connection_url_common,
68
- get_connection_args_fn=get_connection_args_common,
69
- )
70
79
 
71
-
72
- def test_connection(
73
- metadata: OpenMetadata,
74
- engine: Engine,
75
- service_connection: MysqlConnection,
76
- automation_workflow: Optional[AutomationWorkflow] = None,
77
- timeout_seconds: Optional[int] = THREE_MIN,
78
- ) -> TestConnectionResult:
79
- """
80
- Test connection. This can be executed either as part
81
- of a metadata workflow or during an Automation Workflow
82
- """
83
- queries = {
84
- "GetQueries": MYSQL_TEST_GET_QUERIES
85
- if not service_connection.useSlowLogs
86
- else MYSQL_TEST_GET_QUERIES_SLOW_LOGS,
87
- }
88
- return test_connection_db_schema_sources(
89
- metadata=metadata,
90
- engine=engine,
91
- service_connection=service_connection,
92
- automation_workflow=automation_workflow,
93
- timeout_seconds=timeout_seconds,
94
- queries=queries,
95
- )
80
+ def test_connection(
81
+ self,
82
+ metadata: OpenMetadata,
83
+ automation_workflow: Optional[AutomationWorkflow] = None,
84
+ timeout_seconds: Optional[int] = THREE_MIN,
85
+ ) -> TestConnectionResult:
86
+ """
87
+ Test connection. This can be executed either as part
88
+ of a metadata workflow or during an Automation Workflow
89
+ """
90
+ queries = {
91
+ "GetQueries": MYSQL_TEST_GET_QUERIES
92
+ if not self.service_connection.useSlowLogs
93
+ else MYSQL_TEST_GET_QUERIES_SLOW_LOGS,
94
+ }
95
+ return test_connection_db_schema_sources(
96
+ metadata=metadata,
97
+ engine=self.get_client(),
98
+ service_connection=self.service_connection,
99
+ automation_workflow=automation_workflow,
100
+ timeout_seconds=timeout_seconds,
101
+ queries=queries,
102
+ )
@@ -1,3 +1,4 @@
1
+ from metadata.ingestion.source.database.mysql.connection import MySQLConnection
1
2
  from metadata.ingestion.source.database.mysql.lineage import MysqlLineageSource
2
3
  from metadata.ingestion.source.database.mysql.metadata import MysqlSource
3
4
  from metadata.ingestion.source.database.mysql.usage import MysqlUsageSource
@@ -7,4 +8,5 @@ ServiceSpec = DefaultDatabaseSpec(
7
8
  metadata_source_class=MysqlSource,
8
9
  lineage_source_class=MysqlLineageSource,
9
10
  usage_source_class=MysqlUsageSource,
11
+ connection_class=MySQLConnection,
10
12
  )
@@ -20,13 +20,10 @@ from metadata.generated.schema.metadataIngestion.workflow import (
20
20
  )
21
21
  from metadata.generated.schema.type.tableQuery import TableQuery
22
22
  from metadata.ingestion.api.steps import Source
23
- from metadata.ingestion.connections.test_connections import (
24
- raise_test_connection_exception,
25
- )
26
23
  from metadata.ingestion.lineage.masker import masked_query_cache
27
24
  from metadata.ingestion.lineage.models import ConnectionTypeDialectMapper
28
25
  from metadata.ingestion.ometa.ometa_api import OpenMetadata
29
- from metadata.ingestion.source.connections import get_test_connection_fn
26
+ from metadata.ingestion.source.connections import test_connection_common
30
27
  from metadata.utils.helpers import get_start_and_end, retry_with_docker_host
31
28
  from metadata.utils.logger import ingestion_logger
32
29
  from metadata.utils.ssl_manager import get_ssl_connection
@@ -134,6 +131,4 @@ class QueryParserSource(Source, ABC):
134
131
  masked_query_cache.clear()
135
132
 
136
133
  def test_connection(self) -> None:
137
- test_connection_fn = get_test_connection_fn(self.service_connection)
138
- result = test_connection_fn(self.metadata, self.engine, self.service_connection)
139
- raise_test_connection_exception(result)
134
+ test_connection_common(self.metadata, self.engine, self.service_connection)
@@ -40,7 +40,7 @@ from metadata.ingestion.connections.test_connections import (
40
40
  test_query,
41
41
  )
42
42
  from metadata.ingestion.ometa.ometa_api import OpenMetadata
43
- from metadata.ingestion.source.connections import kill_active_connections
43
+ from metadata.ingestion.source.connections_utils import kill_active_connections
44
44
  from metadata.ingestion.source.database.redshift.queries import (
45
45
  REDSHIFT_GET_ALL_RELATIONS,
46
46
  REDSHIFT_GET_DATABASE_NAMES,
@@ -890,6 +890,7 @@ class SampleDataSource(
890
890
  tags=table["tags"],
891
891
  schemaDefinition=table.get("schemaDefinition"),
892
892
  sourceUrl=table.get("sourceUrl"),
893
+ tablePartition=table.get("tablePartition"),
893
894
  )
894
895
 
895
896
  yield Either(right=table_and_db)
@@ -1602,7 +1603,6 @@ class SampleDataSource(
1602
1603
  description=test_case["description"],
1603
1604
  testDefinition=test_case["testDefinitionName"],
1604
1605
  entityLink=test_case["entityLink"],
1605
- testSuite=suite.fullyQualifiedName.root,
1606
1606
  parameterValues=[
1607
1607
  TestCaseParameterValue(**param_values)
1608
1608
  for param_values in test_case["parameterValues"]
@@ -29,11 +29,8 @@ from metadata.generated.schema.metadataIngestion.workflow import (
29
29
  )
30
30
  from metadata.ingestion.api.models import Either
31
31
  from metadata.ingestion.api.steps import InvalidSourceException, Source
32
- from metadata.ingestion.connections.test_connections import (
33
- raise_test_connection_exception,
34
- )
35
32
  from metadata.ingestion.ometa.ometa_api import OpenMetadata
36
- from metadata.ingestion.source.connections import get_test_connection_fn
33
+ from metadata.ingestion.source.connections import test_connection_common
37
34
  from metadata.ingestion.source.database.saphana.cdata_parser import (
38
35
  ParsedLineage,
39
36
  parse_registry,
@@ -158,6 +155,4 @@ class SaphanaLineageSource(Source):
158
155
  )
159
156
 
160
157
  def test_connection(self) -> None:
161
- test_connection_fn = get_test_connection_fn(self.service_connection)
162
- result = test_connection_fn(self.metadata, self.engine, self.service_connection)
163
- raise_test_connection_exception(result)
158
+ test_connection_common(self.metadata, self.engine, self.service_connection)
@@ -70,12 +70,9 @@ from metadata.generated.schema.type.entityReference import EntityReference
70
70
  from metadata.ingestion.api.common import Entity
71
71
  from metadata.ingestion.api.models import Either, StackTraceError
72
72
  from metadata.ingestion.api.steps import InvalidSourceException
73
- from metadata.ingestion.connections.test_connections import (
74
- raise_test_connection_exception,
75
- )
76
73
  from metadata.ingestion.models.ometa_classification import OMetaTagAndClassification
77
74
  from metadata.ingestion.ometa.ometa_api import OpenMetadata
78
- from metadata.ingestion.source.connections import get_connection, get_test_connection_fn
75
+ from metadata.ingestion.source.connections import get_connection, test_connection_common
79
76
  from metadata.ingestion.source.database.column_type_parser import ColumnTypeParser
80
77
  from metadata.ingestion.source.database.database_service import DatabaseServiceSource
81
78
  from metadata.ingestion.source.database.sas.client import SASClient
@@ -900,8 +897,6 @@ class SasSource(
900
897
  pass
901
898
 
902
899
  def test_connection(self) -> None:
903
- test_connection_fn = get_test_connection_fn(self.service_connection)
904
- result = test_connection_fn(
900
+ test_connection_common(
905
901
  self.metadata, self.connection_obj, self.service_connection
906
902
  )
907
- raise_test_connection_exception(result)
@@ -561,11 +561,10 @@ class SnowflakeSource(
561
561
  table_list.extend(
562
562
  self._get_table_names_and_types(schema_name, table_type=TableType.External)
563
563
  )
564
- logger.debug(f"Starting dynamic tables processing")
564
+
565
565
  table_list.extend(
566
566
  self._get_table_names_and_types(schema_name, table_type=TableType.Dynamic)
567
567
  )
568
- logger.debug(f"Dynamic tables processing completed")
569
568
 
570
569
  if self.service_connection.includeTransientTables:
571
570
  table_list.extend(
@@ -54,14 +54,12 @@ from metadata.ingestion.source.database.snowflake.queries import (
54
54
  SNOWFLAKE_INCREMENTAL_GET_WITHOUT_TRANSIENT_TABLE_NAMES,
55
55
  )
56
56
  from metadata.utils import fqn
57
- from metadata.utils.logger import ingestion_logger
58
57
  from metadata.utils.sqlalchemy_utils import (
59
58
  get_display_datatype,
60
59
  get_table_comment_wrapper,
61
60
  get_view_definition_wrapper,
62
61
  )
63
62
 
64
- logger = ingestion_logger()
65
63
  dialect = SnowflakeDialect()
66
64
  Query = str
67
65
  QueryMap = Dict[str, Query]
@@ -240,8 +238,6 @@ def get_table_names(self, connection, schema: str, **kw):
240
238
  for row in cursor
241
239
  ]
242
240
  )
243
- if kw.get("dynamic_tables"):
244
- logger.debug(f"Dynamic tables: {result}")
245
241
  return result
246
242
 
247
243