feat(gooddata-sdk): [AUTO] Add AI Lake database instances, pipe tables, and StarRocks service management#1567
Open
yenkins-admin wants to merge 1 commit intomasterfrom
Open
Conversation
…s, and StarRocks service management
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #1567 +/- ##
===========================================
+ Coverage 0.00% 78.73% +78.73%
===========================================
Files 158 234 +76
Lines 11048 15539 +4491
===========================================
+ Hits 0 12234 +12234
+ Misses 11048 3305 -7743 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Added AI Lake database instance, pipe table, and StarRocks service management to the Python SDK. Created a new
catalog/ai_lake/domain with entity models (CatalogDatabaseInstance, CatalogPipeTable, CatalogPipeTableSummary, CatalogServiceInfo) and request models (CatalogProvisionDatabaseInstanceRequest, CatalogCreatePipeTableRequest), plus a CatalogAiLakeService. Added CatalogDataSourceAiLakehouse for the new AILAKEHOUSE data source type. Wired AILakeApi and AILakePipeTablesApi into GoodDataApiClient and registered CatalogAiLakeService as GoodDataSdk.catalog_ai_lake. All new classes exported from init.py. Unit tests cover all new models and serialization.Impact: new_feature | Services:
gooddata-metadata-clientFiles changed
packages/gooddata-sdk/src/gooddata_sdk/catalog/ai_lake/__init__.pypackages/gooddata-sdk/src/gooddata_sdk/catalog/ai_lake/entity_model/__init__.pypackages/gooddata-sdk/src/gooddata_sdk/catalog/ai_lake/entity_model/database_instance.pypackages/gooddata-sdk/src/gooddata_sdk/catalog/ai_lake/entity_model/pipe_table.pypackages/gooddata-sdk/src/gooddata_sdk/catalog/ai_lake/entity_model/service_info.pypackages/gooddata-sdk/src/gooddata_sdk/catalog/ai_lake/service.pypackages/gooddata-sdk/src/gooddata_sdk/catalog/data_source/entity_model/data_source.pypackages/gooddata-sdk/src/gooddata_sdk/client.pypackages/gooddata-sdk/src/gooddata_sdk/sdk.pypackages/gooddata-sdk/src/gooddata_sdk/__init__.pypackages/gooddata-sdk/tests/catalog/test_catalog_ai_lake.pyAgent decisions
Decisions (5)
New catalog domain vs extending data_source — Created separate catalog/ai_lake/ domain
Combined AILakeApi vs separate APIs — Use AILakeApi for database/service operations and AILakePipeTablesApi for pipe tables
Custom from_api() vs Base.from_api() — Custom from_api() on each entity class using dict access
CatalogDataSourceAiLakehouse credentials — Use _NoCredentials factory (same as CatalogDataSourceGdStorage)
PipeTable complex sub-models — Store columns and nested configs as list[dict[str, Any]]
Assumptions to verify (5)
Risks (3)
Layers touched (3)
packages/gooddata-sdk/src/gooddata_sdk/catalog/ai_lake/entity_model/database_instance.pypackages/gooddata-sdk/src/gooddata_sdk/catalog/ai_lake/entity_model/pipe_table.pypackages/gooddata-sdk/src/gooddata_sdk/catalog/ai_lake/entity_model/service_info.pypackages/gooddata-sdk/src/gooddata_sdk/catalog/data_source/entity_model/data_source.pypackages/gooddata-sdk/src/gooddata_sdk/catalog/ai_lake/service.pypackages/gooddata-sdk/src/gooddata_sdk/client.pypackages/gooddata-sdk/src/gooddata_sdk/sdk.pypackages/gooddata-sdk/src/gooddata_sdk/__init__.pypackages/gooddata-sdk/tests/catalog/test_catalog_ai_lake.pySource commits (gdc-nas)
ea9f6a2Merge pull request #21474 from gooddata/dho/cq-104-pipe81eb97aMerge pull request #21382 from gooddata/dho/cq-104-arrow-api-278be9c1Merge pull request #21285 from gooddata/dho/cq-104-arrow-apiafe2a10Merge pull request #21000 from gooddata/dho/cq-1970-iceberg-native88d3e56Merge pull request #21023 from gooddata/dho/cq-1970-servicesace834dMerge pull request #21012 from gooddata/dho/cq-1970-catalog56188cdMerge pull request #21019 from gooddata/dho/cq-1970-namespace9a28c06Merge pull request #21026 from gooddata/dho/cq-1970-task-cleanupf2dc57cMerge pull request #20972 from gooddata/dho/cq-1970-model6e5e782Merge pull request #20812 from gooddata/dho/cq-1887-database-instance-liste8261d6Merge pull request #20822 from gooddata/dho/cq-1887-pagingad00dc1Merge pull request #20896 from gooddata/dho/cq-1887-consistentd91dfafMerge pull request #20766 from gooddata/dho/cq-1967-providere36bf71Merge pull request #20778 from gooddata/dho/cq-1967-provider-aws8cb3047Merge pull request #20785 from gooddata/dho/cq-1967-spi1056335Merge pull request #20679 from gooddata/dho/cq-1967-service-rename0568730Merge pull request #20869 from gooddata/dho/cq-2050-ailakeb4e5b11Merge pull request #20276 from gooddata/dho/cq-1987-ai-lakehouse-dsOpenAPI diff
Workflow run
Generated by SDK OpenAPI Sync workflow