Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ require (
github.com/confluentinc/ccloud-sdk-go-v2/service-quota v0.2.0
github.com/confluentinc/ccloud-sdk-go-v2/srcm v0.7.3
github.com/confluentinc/ccloud-sdk-go-v2/sso v0.0.1
github.com/confluentinc/ccloud-sdk-go-v2/tableflow v0.5.0
github.com/confluentinc/ccloud-sdk-go-v2/tableflow v0.6.0
github.com/confluentinc/ccloud-sdk-go-v2/usm v0.1.0
github.com/confluentinc/cmf-sdk-go v0.0.5
github.com/confluentinc/confluent-kafka-go/v2 v2.14.1
Expand Down
4 changes: 2 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -258,8 +258,8 @@ github.com/confluentinc/ccloud-sdk-go-v2/srcm v0.7.3 h1:ozdDSJHruQIgtxS5hwz8Rp8p
github.com/confluentinc/ccloud-sdk-go-v2/srcm v0.7.3/go.mod h1:cD0AeCMBAWBesmWxWCMgVYNABYgHJ/ahCj7b4HP2R2I=
github.com/confluentinc/ccloud-sdk-go-v2/sso v0.0.1 h1:WZJYfgXJrvTIYQpCFps/qHF7T8ekgPlX/SFqx4EY2zQ=
github.com/confluentinc/ccloud-sdk-go-v2/sso v0.0.1/go.mod h1:kB+MXWYYg9ohrTCb27LlfpTbuexAzyYAmum105ow0ho=
github.com/confluentinc/ccloud-sdk-go-v2/tableflow v0.5.0 h1:Wh3+AsUCncoxRPfs0zCJwBY6/FiJfyN9Q/XO8e6sMRI=
github.com/confluentinc/ccloud-sdk-go-v2/tableflow v0.5.0/go.mod h1:unZupel8OU3/o8MRcL9YiJo+56MalsCtHHCc/ZNi0BI=
github.com/confluentinc/ccloud-sdk-go-v2/tableflow v0.6.0 h1:wrmpI4UJgWZ4rX1EYqUxUQrfsKMRDehQsIWjcMU/bzs=
github.com/confluentinc/ccloud-sdk-go-v2/tableflow v0.6.0/go.mod h1:myRmhUEWzpwGqWvdsNk79QH41pkre1G21vmySyGQiWA=
github.com/confluentinc/ccloud-sdk-go-v2/usm v0.1.0 h1:rF9cKecDCowq+oDWjf8rSpXXZHAnVXowIsT/OXF4MOI=
github.com/confluentinc/ccloud-sdk-go-v2/usm v0.1.0/go.mod h1:umhEDvQp/5h0ALKBpYTQOmFwaWrvilnbE8Rkzh6oJ4Q=
github.com/confluentinc/cmf-sdk-go v0.0.5 h1:TS6S3ClVsM1kanB00mlcmqXczozDTO2t4Du5blDSYvE=
Expand Down
6 changes: 6 additions & 0 deletions internal/tableflow/command_catalog_integration.go
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,9 @@ type catalogIntegrationOut struct {
WorkspaceEndpoint string `human:"Workspace Endpoint,omitempty" serialized:"workspace_endpoint,omitempty"`
CatalogName string `human:"Catalog Name,omitempty" serialized:"catalog_name,omitempty"`
ClientId string `human:"Client ID,omitempty" serialized:"client_id,omitempty"`
CustomDatabase string `human:"Custom Database,omitempty" serialized:"custom_database,omitempty"`
CustomNamespace string `human:"Custom Namespace,omitempty" serialized:"custom_namespace,omitempty"`
CustomSchema string `human:"Custom Schema,omitempty" serialized:"custom_schema,omitempty"`
Comment on lines +42 to +44
Copy link

Copilot AI Apr 22, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

catalogIntegrationOut now includes Custom Database/Namespace/Schema, and printCatalogIntegrationTable populates them, but the list command builds catalogIntegrationOut manually and doesn’t set these fields. This will cause tableflow catalog-integration list to show the new columns with blank values even when the API returns them. Consider centralizing the mapping from TableflowV1CatalogIntegration -> catalogIntegrationOut (or at least populating these three fields in the list path) so list/describe output stays consistent.

Copilot uses AI. Check for mistakes.
Suspended bool `human:"Suspended" serialized:"suspended"`
Phase string `human:"Phase" serialized:"phase"`
ErrorMessage string `human:"Error Message,omitempty" serialized:"error_message,omitempty"`
Expand Down Expand Up @@ -140,16 +143,19 @@ func printCatalogIntegrationTable(cmd *cobra.Command, catalogIntegration tablefl

if catalogIntegrationType == aws {
out.ProviderIntegrationId = catalogIntegration.Spec.GetConfig().TableflowV1CatalogIntegrationAwsGlueSpec.GetProviderIntegrationId()
out.CustomDatabase = catalogIntegration.Spec.GetConfig().TableflowV1CatalogIntegrationAwsGlueSpec.GetCustomDatabase()
}
if catalogIntegrationType == snowflake {
out.Endpoint = catalogIntegration.Spec.GetConfig().TableflowV1CatalogIntegrationSnowflakeSpec.GetEndpoint()
out.Warehouse = catalogIntegration.Spec.GetConfig().TableflowV1CatalogIntegrationSnowflakeSpec.GetWarehouse()
out.AllowedScope = catalogIntegration.Spec.GetConfig().TableflowV1CatalogIntegrationSnowflakeSpec.GetAllowedScope()
out.CustomNamespace = catalogIntegration.Spec.GetConfig().TableflowV1CatalogIntegrationSnowflakeSpec.GetCustomNamespace()
}
if catalogIntegrationType == unity {
out.WorkspaceEndpoint = catalogIntegration.Spec.GetConfig().TableflowV1CatalogIntegrationUnitySpec.GetWorkspaceEndpoint()
out.CatalogName = catalogIntegration.Spec.GetConfig().TableflowV1CatalogIntegrationUnitySpec.GetCatalogName()
out.ClientId = catalogIntegration.Spec.GetConfig().TableflowV1CatalogIntegrationUnitySpec.GetClientId()
out.CustomSchema = catalogIntegration.Spec.GetConfig().TableflowV1CatalogIntegrationUnitySpec.GetCustomSchema()
}

table := output.NewTable(cmd)
Expand Down
65 changes: 46 additions & 19 deletions internal/tableflow/command_catalog_integration_create.go
Original file line number Diff line number Diff line change
Expand Up @@ -37,15 +37,18 @@

addCatalogIntegrationTypeFlag(cmd)
cmd.Flags().String("provider-integration", "", "Specify the provider integration id.")
cmd.Flags().String("custom-database", "", "Specify the custom database name for AWS Glue.")

Check failure on line 40 in internal/tableflow/command_catalog_integration_create.go

View check run for this annotation

SonarQube-Confluent / SonarQube Code Analysis

Define a constant instead of duplicating this literal "custom-database" 3 times.

[S1192] String literals should not be duplicated See more on https://sonarqube.confluent.io/project/issues?id=cli&pullRequest=3330&issues=40cd8b09-ed87-4bd4-b56f-fe7bd7c7fd2a&open=40cd8b09-ed87-4bd4-b56f-fe7bd7c7fd2a
cmd.Flags().String("endpoint", "", "Specify the The catalog integration connection endpoint for Snowflake Open Catalog.")
cmd.Flags().String("warehouse", "", "Specify the warehouse name of the Snowflake Open Catalog.")
cmd.Flags().String("allowed-scope", "", "Specify the allowed scope of the Snowflake Open Catalog.")
cmd.Flags().String("client-id", "", "Specify the client id.")
cmd.Flags().String("client-secret", "", "Specify the client secret.")
cmd.Flags().String("custom-namespace", "", "Specify the custom namespace for Snowflake Open Catalog.")

Check failure on line 46 in internal/tableflow/command_catalog_integration_create.go

View check run for this annotation

SonarQube-Confluent / SonarQube Code Analysis

Define a constant instead of duplicating this literal "custom-namespace" 3 times.

[S1192] String literals should not be duplicated See more on https://sonarqube.confluent.io/project/issues?id=cli&pullRequest=3330&issues=43543cad-f8a0-405f-bc32-9ad688f44d38&open=43543cad-f8a0-405f-bc32-9ad688f44d38
cmd.Flags().String("workspace-endpoint", "", "Specify the Databricks workspace URL associated with the Unity Catalog.")
cmd.Flags().String("catalog-name", "", "Specify the name of the catalog.")
cmd.Flags().String("unity-client-id", "", "Specify the Unity client id.")
cmd.Flags().String("unity-client-secret", "", "Specify the Unity client secret.")
cmd.Flags().String("custom-schema", "", "Specify the custom schema name for Unity Catalog.")

Check failure on line 51 in internal/tableflow/command_catalog_integration_create.go

View check run for this annotation

SonarQube-Confluent / SonarQube Code Analysis

Define a constant instead of duplicating this literal "custom-schema" 3 times.

[S1192] String literals should not be duplicated See more on https://sonarqube.confluent.io/project/issues?id=cli&pullRequest=3330&issues=31f0c5bf-2b33-49cb-8baa-4f9ae9ba2997&open=31f0c5bf-2b33-49cb-8baa-4f9ae9ba2997

pcmd.AddClusterFlag(cmd, c.AuthenticatedCLICommand)
pcmd.AddEnvironmentFlag(cmd, c.AuthenticatedCLICommand)
Expand All @@ -59,7 +62,7 @@
return cmd
}

func (c *command) createCatalogIntegration(cmd *cobra.Command, args []string) error {

Check failure on line 65 in internal/tableflow/command_catalog_integration_create.go

View check run for this annotation

SonarQube-Confluent / SonarQube Code Analysis

Refactor this method to reduce its Cognitive Complexity from 48 to the 15 allowed.

[S3776] Cognitive Complexity of functions should not be too high See more on https://sonarqube.confluent.io/project/issues?id=cli&pullRequest=3330&issues=d49e6d4c-e0ff-4850-a90f-9eb655b008dd&open=d49e6d4c-e0ff-4850-a90f-9eb655b008dd
name := args[0]

environmentId, err := c.Context.EnvironmentId()
Expand Down Expand Up @@ -94,11 +97,19 @@
return err
}

awsGlueSpec := &tableflowv1.TableflowV1CatalogIntegrationAwsGlueSpec{
Kind: awsGlueKind,
ProviderIntegrationId: providerIntegration,
}
if cmd.Flags().Changed("custom-database") {
customDatabase, err := cmd.Flags().GetString("custom-database")
if err != nil {
return err
}
awsGlueSpec.SetCustomDatabase(customDatabase)
}
createCatalogIntegration.Spec.Config = &tableflowv1.TableflowV1CatalogIntegrationSpecConfigOneOf{
TableflowV1CatalogIntegrationAwsGlueSpec: &tableflowv1.TableflowV1CatalogIntegrationAwsGlueSpec{
Kind: awsGlueKind,
ProviderIntegrationId: providerIntegration,
},
TableflowV1CatalogIntegrationAwsGlueSpec: awsGlueSpec,
}
} else if strings.ToLower(catalogIntegrationType) == snowflake {
if !cmd.Flags().Changed("endpoint") { // we only need to check for one since this flag set is marked as required together
Expand All @@ -125,15 +136,23 @@
return err
}

snowflakeSpec := &tableflowv1.TableflowV1CatalogIntegrationSnowflakeSpec{
Kind: snowflakeKind,
Endpoint: endpoint,
Warehouse: warehouse,
AllowedScope: allowedScope,
ClientId: clientId,
ClientSecret: clientSecret,
}
if cmd.Flags().Changed("custom-namespace") {
customNamespace, err := cmd.Flags().GetString("custom-namespace")
if err != nil {
return err
}
snowflakeSpec.SetCustomNamespace(customNamespace)
}
createCatalogIntegration.Spec.Config = &tableflowv1.TableflowV1CatalogIntegrationSpecConfigOneOf{
TableflowV1CatalogIntegrationSnowflakeSpec: &tableflowv1.TableflowV1CatalogIntegrationSnowflakeSpec{
Kind: snowflakeKind,
Endpoint: endpoint,
Warehouse: warehouse,
AllowedScope: allowedScope,
ClientId: clientId,
ClientSecret: clientSecret,
},
TableflowV1CatalogIntegrationSnowflakeSpec: snowflakeSpec,
}
} else if strings.ToLower(catalogIntegrationType) == unity {
if !cmd.Flags().Changed("workspace-endpoint") { // we only need to check for one since this flag set is marked as required together
Expand All @@ -156,14 +175,22 @@
return err
}

unitySpec := &tableflowv1.TableflowV1CatalogIntegrationUnitySpec{
Kind: unityKind,
WorkspaceEndpoint: workspaceEndpoint,
CatalogName: catalogName,
ClientId: clientId,
ClientSecret: clientSecret,
}
if cmd.Flags().Changed("custom-schema") {
customSchema, err := cmd.Flags().GetString("custom-schema")
if err != nil {
return err
}
unitySpec.SetCustomSchema(customSchema)
}
createCatalogIntegration.Spec.Config = &tableflowv1.TableflowV1CatalogIntegrationSpecConfigOneOf{
TableflowV1CatalogIntegrationUnitySpec: &tableflowv1.TableflowV1CatalogIntegrationUnitySpec{
Kind: unityKind,
WorkspaceEndpoint: workspaceEndpoint,
CatalogName: catalogName,
ClientId: clientId,
ClientSecret: clientSecret,
},
TableflowV1CatalogIntegrationUnitySpec: unitySpec,
}
}

Expand Down
3 changes: 3 additions & 0 deletions internal/tableflow/command_catalog_integration_list.go
Original file line number Diff line number Diff line change
Expand Up @@ -67,16 +67,19 @@ func (c *command) listCatalogIntegration(cmd *cobra.Command, args []string) erro

if catalogIntegrationType == aws {
out.ProviderIntegrationId = catalogIntegration.Spec.GetConfig().TableflowV1CatalogIntegrationAwsGlueSpec.GetProviderIntegrationId()
out.CustomDatabase = catalogIntegration.Spec.GetConfig().TableflowV1CatalogIntegrationAwsGlueSpec.GetCustomDatabase()
}
if catalogIntegrationType == snowflake {
out.Endpoint = catalogIntegration.Spec.GetConfig().TableflowV1CatalogIntegrationSnowflakeSpec.GetEndpoint()
out.Warehouse = catalogIntegration.Spec.GetConfig().TableflowV1CatalogIntegrationSnowflakeSpec.GetWarehouse()
out.AllowedScope = catalogIntegration.Spec.GetConfig().TableflowV1CatalogIntegrationSnowflakeSpec.GetAllowedScope()
out.CustomNamespace = catalogIntegration.Spec.GetConfig().TableflowV1CatalogIntegrationSnowflakeSpec.GetCustomNamespace()
}
if catalogIntegrationType == unity {
out.WorkspaceEndpoint = catalogIntegration.Spec.GetConfig().TableflowV1CatalogIntegrationUnitySpec.GetWorkspaceEndpoint()
out.CatalogName = catalogIntegration.Spec.GetConfig().TableflowV1CatalogIntegrationUnitySpec.GetCatalogName()
out.ClientId = catalogIntegration.Spec.GetConfig().TableflowV1CatalogIntegrationUnitySpec.GetClientId()
out.CustomSchema = catalogIntegration.Spec.GetConfig().TableflowV1CatalogIntegrationUnitySpec.GetCustomSchema()
}

list.Add(out)
Expand Down
47 changes: 45 additions & 2 deletions internal/tableflow/command_catalog_integration_update.go
Original file line number Diff line number Diff line change
Expand Up @@ -32,21 +32,24 @@
cmd.Flags().String("name", "", "Name of the catalog integration.")
cmd.Flags().String("endpoint", "", "Specify the The catalog integration connection endpoint for Snowflake Open Catalog.")
cmd.Flags().String("warehouse", "", "Specify the warehouse name of the Snowflake Open Catalog.")
cmd.Flags().String("allowed-scope", "", "Specify the allowed scope of the Snowflake Open Catalog.")

Check failure on line 35 in internal/tableflow/command_catalog_integration_update.go

View check run for this annotation

SonarQube-Confluent / SonarQube Code Analysis

Define a constant instead of duplicating this literal "allowed-scope" 5 times.

[S1192] String literals should not be duplicated See more on https://sonarqube.confluent.io/project/issues?id=cli&pullRequest=3330&issues=3cefa7ed-550c-474b-a9ef-a2d4c1c60da2&open=3cefa7ed-550c-474b-a9ef-a2d4c1c60da2
cmd.Flags().String("client-id", "", "Specify the client id.")

Check failure on line 36 in internal/tableflow/command_catalog_integration_update.go

View check run for this annotation

SonarQube-Confluent / SonarQube Code Analysis

Define a constant instead of duplicating this literal "client-id" 5 times.

[S1192] String literals should not be duplicated See more on https://sonarqube.confluent.io/project/issues?id=cli&pullRequest=3330&issues=0b24cd5f-0966-4975-b3aa-dcfa697b143d&open=0b24cd5f-0966-4975-b3aa-dcfa697b143d
cmd.Flags().String("client-secret", "", "Specify the client secret.")

Check failure on line 37 in internal/tableflow/command_catalog_integration_update.go

View check run for this annotation

SonarQube-Confluent / SonarQube Code Analysis

Define a constant instead of duplicating this literal "client-secret" 5 times.

[S1192] String literals should not be duplicated See more on https://sonarqube.confluent.io/project/issues?id=cli&pullRequest=3330&issues=80c36ac7-35d4-4e7c-8c28-ded50c9c1c87&open=80c36ac7-35d4-4e7c-8c28-ded50c9c1c87
cmd.Flags().String("custom-database", "", "Specify the custom database name for AWS Glue.")

Check failure on line 38 in internal/tableflow/command_catalog_integration_update.go

View check run for this annotation

SonarQube-Confluent / SonarQube Code Analysis

Define a constant instead of duplicating this literal "custom-database" 4 times.

[S1192] String literals should not be duplicated See more on https://sonarqube.confluent.io/project/issues?id=cli&pullRequest=3330&issues=ea68b3f9-d809-49c2-8cb0-4a85095ed1e0&open=ea68b3f9-d809-49c2-8cb0-4a85095ed1e0
cmd.Flags().String("custom-namespace", "", "Specify the custom namespace for Snowflake Open Catalog.")

Check failure on line 39 in internal/tableflow/command_catalog_integration_update.go

View check run for this annotation

SonarQube-Confluent / SonarQube Code Analysis

Define a constant instead of duplicating this literal "custom-namespace" 5 times.

[S1192] String literals should not be duplicated See more on https://sonarqube.confluent.io/project/issues?id=cli&pullRequest=3330&issues=5cfc9713-7248-49f4-a18d-d1f28b6d990a&open=5cfc9713-7248-49f4-a18d-d1f28b6d990a
cmd.Flags().String("custom-schema", "", "Specify the custom schema name for Unity Catalog.")

Check failure on line 40 in internal/tableflow/command_catalog_integration_update.go

View check run for this annotation

SonarQube-Confluent / SonarQube Code Analysis

Define a constant instead of duplicating this literal "custom-schema" 4 times.

[S1192] String literals should not be duplicated See more on https://sonarqube.confluent.io/project/issues?id=cli&pullRequest=3330&issues=d5c3268c-38f2-46ff-98e1-267e45c7c1d9&open=d5c3268c-38f2-46ff-98e1-267e45c7c1d9

pcmd.AddClusterFlag(cmd, c.AuthenticatedCLICommand)
pcmd.AddEnvironmentFlag(cmd, c.AuthenticatedCLICommand)
pcmd.AddContextFlag(cmd, c.CLICommand)
pcmd.AddOutputFlag(cmd)

cmd.MarkFlagsOneRequired("name", "endpoint", "warehouse", "allowed-scope", "client-id", "client-secret")
cmd.MarkFlagsOneRequired("name", "endpoint", "warehouse", "allowed-scope", "client-id", "client-secret", "custom-database", "custom-namespace", "custom-schema")
Comment on lines +38 to +47
Copy link

Copilot AI Apr 22, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The update command accepts type-specific flags for multiple catalog integration types at once (e.g., --custom-database and --custom-schema) and will silently let the last SetConfig(...) win, producing an invalid/misleading request. Also, there’s no validation that a flag matches the actual integration type (e.g., --custom-database on a Snowflake integration will send an AwsGlue update spec). It would be safer to determine the integration type once (from the backend) and reject incompatible flag combinations, or otherwise enforce mutual exclusivity between aws/snowflake/unity-specific flag sets.

Copilot uses AI. Check for mistakes.

return cmd
}

func (c *command) updateCatalogIntegration(cmd *cobra.Command, args []string) error {

Check failure on line 52 in internal/tableflow/command_catalog_integration_update.go

View check run for this annotation

SonarQube-Confluent / SonarQube Code Analysis

Refactor this method to reduce its Cognitive Complexity from 54 to the 15 allowed.

[S3776] Cognitive Complexity of functions should not be too high See more on https://sonarqube.confluent.io/project/issues?id=cli&pullRequest=3330&issues=ca178657-249c-4672-978a-db6a38947987&open=ca178657-249c-4672-978a-db6a38947987
environmentId, err := c.Context.EnvironmentId()
if err != nil {
return err
Expand Down Expand Up @@ -95,9 +98,29 @@
},
})
}
if catalogIntegrationType == unity {
updateCatalogIntegration.Spec.SetConfig(tableflowv1.TableflowV1CatalogIntegrationUpdateSpecConfigOneOf{
TableflowV1CatalogIntegrationUnityUpdateSpec: &tableflowv1.TableflowV1CatalogIntegrationUnityUpdateSpec{
Kind: unityKind,
},
})
}
}

if cmd.Flags().Changed("custom-database") {
customDatabase, err := cmd.Flags().GetString("custom-database")
if err != nil {
return err
}
updateCatalogIntegration.Spec.SetConfig(tableflowv1.TableflowV1CatalogIntegrationUpdateSpecConfigOneOf{
TableflowV1CatalogIntegrationAwsGlueUpdateSpec: &tableflowv1.TableflowV1CatalogIntegrationAwsGlueUpdateSpec{
Kind: awsGlueKind,
},
})
updateCatalogIntegration.Spec.Config.TableflowV1CatalogIntegrationAwsGlueUpdateSpec.SetCustomDatabase(customDatabase)
}

if cmd.Flags().Changed("endpoint") || cmd.Flags().Changed("warehouse") || cmd.Flags().Changed("allowed-scope") || cmd.Flags().Changed("client-id") || cmd.Flags().Changed("client-secret") {
if cmd.Flags().Changed("endpoint") || cmd.Flags().Changed("warehouse") || cmd.Flags().Changed("allowed-scope") || cmd.Flags().Changed("client-id") || cmd.Flags().Changed("client-secret") || cmd.Flags().Changed("custom-namespace") {
updateCatalogIntegration.Spec.SetConfig(tableflowv1.TableflowV1CatalogIntegrationUpdateSpecConfigOneOf{
TableflowV1CatalogIntegrationSnowflakeUpdateSpec: &tableflowv1.TableflowV1CatalogIntegrationSnowflakeUpdateSpec{
Kind: snowflakeKind,
Expand Down Expand Up @@ -138,6 +161,26 @@
}
updateCatalogIntegration.Spec.Config.TableflowV1CatalogIntegrationSnowflakeUpdateSpec.SetClientSecret(clientSecret)
}
if cmd.Flags().Changed("custom-namespace") {
customNamespace, err := cmd.Flags().GetString("custom-namespace")
if err != nil {
return err
}
updateCatalogIntegration.Spec.Config.TableflowV1CatalogIntegrationSnowflakeUpdateSpec.SetCustomNamespace(customNamespace)
}
}

if cmd.Flags().Changed("custom-schema") {
customSchema, err := cmd.Flags().GetString("custom-schema")
if err != nil {
return err
}
updateCatalogIntegration.Spec.SetConfig(tableflowv1.TableflowV1CatalogIntegrationUpdateSpecConfigOneOf{
TableflowV1CatalogIntegrationUnityUpdateSpec: &tableflowv1.TableflowV1CatalogIntegrationUnityUpdateSpec{
Kind: unityKind,
},
})
updateCatalogIntegration.Spec.Config.TableflowV1CatalogIntegrationUnityUpdateSpec.SetCustomSchema(customSchema)
}

catalogIntegration, err := c.V2Client.UpdateCatalogIntegration(args[0], updateCatalogIntegration)
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
+-------------------------+----------------+
| ID | tci-abc123 |
| Name | my-aws-glue-ci |
| Environment | env-596 |
| Kafka Cluster | lkc-123456 |
| Type | aws |
| Provider Integration ID | cspi-stgce89r7 |
| Custom Database | my-custom-db |
| Suspended | false |
| Phase | PENDING |
+-------------------------+----------------+
Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,18 @@ Create a Unity catalog integration.
Flags:
--type string REQUIRED: Specify the catalog integration type as "aws", "snowflake", or "unity".
--provider-integration string Specify the provider integration id.
--custom-database string Specify the custom database name for AWS Glue.
--endpoint string Specify the The catalog integration connection endpoint for Snowflake Open Catalog.
--warehouse string Specify the warehouse name of the Snowflake Open Catalog.
--allowed-scope string Specify the allowed scope of the Snowflake Open Catalog.
--client-id string Specify the client id.
--client-secret string Specify the client secret.
--custom-namespace string Specify the custom namespace for Snowflake Open Catalog.
--workspace-endpoint string Specify the Databricks workspace URL associated with the Unity Catalog.
--catalog-name string Specify the name of the catalog.
--unity-client-id string Specify the Unity client id.
--unity-client-secret string Specify the Unity client secret.
--custom-schema string Specify the custom schema name for Unity Catalog.
--cluster string Kafka cluster ID.
--environment string Environment ID.
--context string CLI context name.
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
+------------------+------------------------------------------------+
| ID | tci-def456 |
| Name | my-snowflake-ci |
| Environment | env-596 |
| Kafka Cluster | lkc-123456 |
| Type | snowflake |
| Endpoint | https://vuser1_polaris.snowflakecomputing.com/ |
| Warehouse | warehouse |
| Allowed Scope | allowed-scope |
| Custom Namespace | my-custom-ns |
| Suspended | false |
| Phase | PENDING |
+------------------+------------------------------------------------+
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
+--------------------+------------------------------------+
| ID | tci-ghi789 |
| Name | my-catalog-integration |
| Environment | env-596 |
| Kafka Cluster | lkc-123456 |
| Type | unity |
| Workspace Endpoint | https://dbc-1.cloud.databricks.com |
| Catalog Name | tableflow-quickstart-catalog |
| Client ID | $CLIENT_ID |
| Custom Schema | my-custom-schema |
| Suspended | false |
| Phase | PENDING |
+--------------------+------------------------------------+
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
"kafka_cluster": "lkc-123456",
"type": "aws",
"provider_integration_id": "cspi-stgce89r7",
"custom_database": "my-custom-db",
"suspended": false,
"phase": "CONNECTED"
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
| Kafka Cluster | lkc-123456 |
| Type | aws |
| Provider Integration ID | cspi-stgce89r7 |
| Custom Database | my-custom-db |
| Suspended | false |
| Phase | CONNECTED |
+-------------------------+----------------+
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
+---------------+------------------------------------------------+
| ID | tci-def456 |
| Name | my-snowflake-ci |
| Environment | env-596 |
| Kafka Cluster | lkc-123456 |
| Type | snowflake |
| Endpoint | https://vuser1_polaris.snowflakecomputing.com/ |
| Warehouse | warehouse |
| Allowed Scope | allowed-scope |
| Suspended | false |
| Phase | CONNECTED |
+---------------+------------------------------------------------+
+------------------+------------------------------------------------+
| ID | tci-def456 |
| Name | my-snowflake-ci |
| Environment | env-596 |
| Kafka Cluster | lkc-123456 |
| Type | snowflake |
| Endpoint | https://vuser1_polaris.snowflakecomputing.com/ |
| Warehouse | warehouse |
| Allowed Scope | allowed-scope |
| Custom Namespace | my-custom-ns |
| Suspended | false |
| Phase | CONNECTED |
+------------------+------------------------------------------------+
Loading