published on Friday, Sep 11, 2026 by Pulumi
published on Friday, Sep 11, 2026 by Pulumi
Caution: Preview Feature This feature is considered a preview feature in the provider, regardless of the state of the resource in Snowflake. We do not guarantee its stability. It will be reworked and marked as a stable feature in future releases. Breaking changes are expected, even without bumping the major version. To use this feature, add the relevant feature name to
previewFeaturesEnabledfield in the provider configuration. Please always refer to the Getting Help section in our Github repo to best determine how to get help for your questions.
Note Every mutating statement is asynchronous and the provider waits for the connector to settle before returning, so applies take minutes rather than seconds. If you encounter timeout errors, use a
timeoutsblock to set higher limits for your environment.
Note
fromis create-only and is not read back. Snowflake resolves a connector definition whichever source the connector was created from, so a value read fromSHOWcould not be told apart from a configured one;show_output.connector_definitionreports what Snowflake resolved. External changes to the block are therefore not detected, and afterpulumi importthe block is absent from state, so the first plan asks to replace the connector.
Note Starting, stopping and version management are operational actions rather than desired state, so they are not exposed here. The connector’s current status is reported in
showOutput.
Resource used to manage Openflow connectors, which run inside an Openflow runtime. Every mutating statement is asynchronous, so create and update return once the connector settles. Starting, stopping and version management are operational actions and are not exposed here; the connector’s state is reported in showOutput. For more information, check Openflow connector documentation.
Example Usage
Note Instead of using fully_qualified_name, you can reference objects managed outside Terraform by constructing a correct ID, consult identifiers guide.
import * as pulumi from "@pulumi/pulumi";
import * as snowflake from "@pulumi/snowflake";
// from a Snowflake-managed connector definition; the connector carries no configuration yet, so it cannot be
// started until one is supplied
const fromDefinition = new snowflake.OpenflowConnector("from_definition", {
database: "my_database",
schema: "my_schema",
name: "my_connector",
runtime: example.fullyQualifiedName,
from: {
definition: "OPENFLOW_POSTGRES_CDC",
},
});
// from a connector bundle on a stage; the connector arrives already configured. A git repository is a stage,
// so `stage` takes one of those too
const fromStage = new snowflake.OpenflowConnector("from_stage", {
database: "my_database",
schema: "my_schema",
name: "my_configured_connector",
runtime: example.fullyQualifiedName,
from: {
stage: exampleSnowflakeStage.fullyQualifiedName,
path: "connectors/postgres",
},
});
// uploading the bundle yourself, then creating the connector from it. Snowflake reads config.json from the
// location and checks that the connector definition it names matches, so that file has to be there; the same
// PUT pattern uploads anything else the bundle needs, such as a driver jar.
//
// PUT runs from the machine executing Terraform, so the local file has to exist there. That rules it out for
// runners that do not have your bundle checked out, where a git repository stage is the better route.
const bundles = new snowflake.Stage("bundles", {
database: "my_database",
schema: "my_schema",
name: "my_connector_bundles",
});
const uploadConfig = new snowflake.Execute("upload_config", {
execute: pulumi.interpolate`PUT file:///path/to/bundle/config.json @"${bundles.database}"."${bundles.schema}"."${bundles.name}"/orders/ AUTO_COMPRESS = FALSE OVERWRITE = TRUE`,
revert: pulumi.interpolate`REMOVE @"${bundles.database}"."${bundles.schema}"."${bundles.name}"/orders/config.json`,
});
const uploadDriver = new snowflake.Execute("upload_driver", {
execute: pulumi.interpolate`PUT file:///path/to/bundle/postgresql.jar @"${bundles.database}"."${bundles.schema}"."${bundles.name}"/orders/ AUTO_COMPRESS = FALSE OVERWRITE = TRUE`,
revert: pulumi.interpolate`REMOVE @"${bundles.database}"."${bundles.schema}"."${bundles.name}"/orders/postgresql.jar`,
});
const fromUploadedBundle = new snowflake.OpenflowConnector("from_uploaded_bundle", {
database: "my_database",
schema: "my_schema",
name: "my_uploaded_connector",
runtime: example.fullyQualifiedName,
from: {
stage: bundles.fullyQualifiedName,
path: "orders",
},
}, {
dependsOn: [
uploadConfig,
uploadDriver,
],
});
// from a git repository, which is a stage as far as Snowflake is concerned. Preferred when the bundle is
// version controlled, since nothing has to be uploaded from the machine running Terraform.
const fromGit = new snowflake.OpenflowConnector("from_git", {
database: "my_database",
schema: "my_schema",
name: "my_git_connector",
runtime: example.fullyQualifiedName,
from: {
stage: exampleSnowflakeGitRepository.fullyQualifiedName,
path: "branches/main/connectors/orders",
},
});
// complete resource
const complete = new snowflake.OpenflowConnector("complete", {
database: "my_database",
schema: "my_schema",
name: "my_connector_complete",
runtime: example.fullyQualifiedName,
from: {
definition: "OPENFLOW_POSTGRES_CDC",
},
displayName: "My connector",
comment: "Managed by Terraform.",
});
import pulumi
import pulumi_snowflake as snowflake
# from a Snowflake-managed connector definition; the connector carries no configuration yet, so it cannot be
# started until one is supplied
from_definition = snowflake.OpenflowConnector("from_definition",
database="my_database",
schema="my_schema",
name="my_connector",
runtime=example["fullyQualifiedName"],
from_={
"definition": "OPENFLOW_POSTGRES_CDC",
})
# from a connector bundle on a stage; the connector arrives already configured. A git repository is a stage,
# so `stage` takes one of those too
from_stage = snowflake.OpenflowConnector("from_stage",
database="my_database",
schema="my_schema",
name="my_configured_connector",
runtime=example["fullyQualifiedName"],
from_={
"stage": example_snowflake_stage["fullyQualifiedName"],
"path": "connectors/postgres",
})
# uploading the bundle yourself, then creating the connector from it. Snowflake reads config.json from the
# location and checks that the connector definition it names matches, so that file has to be there; the same
# PUT pattern uploads anything else the bundle needs, such as a driver jar.
#
# PUT runs from the machine executing Terraform, so the local file has to exist there. That rules it out for
# runners that do not have your bundle checked out, where a git repository stage is the better route.
bundles = snowflake.Stage("bundles",
database="my_database",
schema="my_schema",
name="my_connector_bundles")
upload_config = snowflake.Execute("upload_config",
execute=pulumi.Output.all(
database=bundles.database,
schema=bundles.schema,
name=bundles.name
).apply(lambda resolved_outputs: f"PUT file:///path/to/bundle/config.json @\"{resolved_outputs['database']}\".\"{resolved_outputs['schema']}\".\"{resolved_outputs['name']}\"/orders/ AUTO_COMPRESS = FALSE OVERWRITE = TRUE")
,
revert=pulumi.Output.all(
database=bundles.database,
schema=bundles.schema,
name=bundles.name
).apply(lambda resolved_outputs: f"REMOVE @\"{resolved_outputs['database']}\".\"{resolved_outputs['schema']}\".\"{resolved_outputs['name']}\"/orders/config.json")
)
upload_driver = snowflake.Execute("upload_driver",
execute=pulumi.Output.all(
database=bundles.database,
schema=bundles.schema,
name=bundles.name
).apply(lambda resolved_outputs: f"PUT file:///path/to/bundle/postgresql.jar @\"{resolved_outputs['database']}\".\"{resolved_outputs['schema']}\".\"{resolved_outputs['name']}\"/orders/ AUTO_COMPRESS = FALSE OVERWRITE = TRUE")
,
revert=pulumi.Output.all(
database=bundles.database,
schema=bundles.schema,
name=bundles.name
).apply(lambda resolved_outputs: f"REMOVE @\"{resolved_outputs['database']}\".\"{resolved_outputs['schema']}\".\"{resolved_outputs['name']}\"/orders/postgresql.jar")
)
from_uploaded_bundle = snowflake.OpenflowConnector("from_uploaded_bundle",
database="my_database",
schema="my_schema",
name="my_uploaded_connector",
runtime=example["fullyQualifiedName"],
from_={
"stage": bundles.fully_qualified_name,
"path": "orders",
},
opts = pulumi.ResourceOptions(depends_on=[
upload_config,
upload_driver,
]))
# from a git repository, which is a stage as far as Snowflake is concerned. Preferred when the bundle is
# version controlled, since nothing has to be uploaded from the machine running Terraform.
from_git = snowflake.OpenflowConnector("from_git",
database="my_database",
schema="my_schema",
name="my_git_connector",
runtime=example["fullyQualifiedName"],
from_={
"stage": example_snowflake_git_repository["fullyQualifiedName"],
"path": "branches/main/connectors/orders",
})
# complete resource
complete = snowflake.OpenflowConnector("complete",
database="my_database",
schema="my_schema",
name="my_connector_complete",
runtime=example["fullyQualifiedName"],
from_={
"definition": "OPENFLOW_POSTGRES_CDC",
},
display_name="My connector",
comment="Managed by Terraform.")
package main
import (
"fmt"
"github.com/pulumi/pulumi-snowflake/sdk/v2/go/snowflake"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// from a Snowflake-managed connector definition; the connector carries no configuration yet, so it cannot be
// started until one is supplied
_, err := snowflake.NewOpenflowConnector(ctx, "from_definition", &snowflake.OpenflowConnectorArgs{
Database: pulumi.String("my_database"),
Schema: pulumi.String("my_schema"),
Name: pulumi.String("my_connector"),
Runtime: pulumi.Any(example.FullyQualifiedName),
From: &snowflake.OpenflowConnectorFromArgs{
Definition: pulumi.String("OPENFLOW_POSTGRES_CDC"),
},
})
if err != nil {
return err
}
// from a connector bundle on a stage; the connector arrives already configured. A git repository is a stage,
// so `stage` takes one of those too
_, err = snowflake.NewOpenflowConnector(ctx, "from_stage", &snowflake.OpenflowConnectorArgs{
Database: pulumi.String("my_database"),
Schema: pulumi.String("my_schema"),
Name: pulumi.String("my_configured_connector"),
Runtime: pulumi.Any(example.FullyQualifiedName),
From: &snowflake.OpenflowConnectorFromArgs{
Stage: pulumi.Any(exampleSnowflakeStage.FullyQualifiedName),
Path: pulumi.String("connectors/postgres"),
},
})
if err != nil {
return err
}
// uploading the bundle yourself, then creating the connector from it. Snowflake reads config.json from the
// location and checks that the connector definition it names matches, so that file has to be there; the same
// PUT pattern uploads anything else the bundle needs, such as a driver jar.
//
// PUT runs from the machine executing Terraform, so the local file has to exist there. That rules it out for
// runners that do not have your bundle checked out, where a git repository stage is the better route.
bundles, err := snowflake.NewStage(ctx, "bundles", &snowflake.StageArgs{
Database: pulumi.String("my_database"),
Schema: pulumi.String("my_schema"),
Name: pulumi.String("my_connector_bundles"),
})
if err != nil {
return err
}
uploadConfig, err := snowflake.NewExecute(ctx, "upload_config", &snowflake.ExecuteArgs{
Execute: pulumi.All(bundles.Database, bundles.Schema, bundles.Name).ApplyT(func(_args []interface{}) (string, error) {
database := _args[0].(string)
schema := _args[1].(string)
name := _args[2].(string)
return fmt.Sprintf("PUT file:///path/to/bundle/config.json @\"%v\".\"%v\".\"%v\"/orders/ AUTO_COMPRESS = FALSE OVERWRITE = TRUE", database, schema, name), nil
}).(pulumi.StringOutput),
Revert: pulumi.All(bundles.Database, bundles.Schema, bundles.Name).ApplyT(func(_args []interface{}) (string, error) {
database := _args[0].(string)
schema := _args[1].(string)
name := _args[2].(string)
return fmt.Sprintf("REMOVE @\"%v\".\"%v\".\"%v\"/orders/config.json", database, schema, name), nil
}).(pulumi.StringOutput),
})
if err != nil {
return err
}
uploadDriver, err := snowflake.NewExecute(ctx, "upload_driver", &snowflake.ExecuteArgs{
Execute: pulumi.All(bundles.Database, bundles.Schema, bundles.Name).ApplyT(func(_args []interface{}) (string, error) {
database := _args[0].(string)
schema := _args[1].(string)
name := _args[2].(string)
return fmt.Sprintf("PUT file:///path/to/bundle/postgresql.jar @\"%v\".\"%v\".\"%v\"/orders/ AUTO_COMPRESS = FALSE OVERWRITE = TRUE", database, schema, name), nil
}).(pulumi.StringOutput),
Revert: pulumi.All(bundles.Database, bundles.Schema, bundles.Name).ApplyT(func(_args []interface{}) (string, error) {
database := _args[0].(string)
schema := _args[1].(string)
name := _args[2].(string)
return fmt.Sprintf("REMOVE @\"%v\".\"%v\".\"%v\"/orders/postgresql.jar", database, schema, name), nil
}).(pulumi.StringOutput),
})
if err != nil {
return err
}
_, err = snowflake.NewOpenflowConnector(ctx, "from_uploaded_bundle", &snowflake.OpenflowConnectorArgs{
Database: pulumi.String("my_database"),
Schema: pulumi.String("my_schema"),
Name: pulumi.String("my_uploaded_connector"),
Runtime: pulumi.Any(example.FullyQualifiedName),
From: &snowflake.OpenflowConnectorFromArgs{
Stage: bundles.FullyQualifiedName,
Path: pulumi.String("orders"),
},
}, pulumi.DependsOn([]pulumi.Resource{
uploadConfig,
uploadDriver,
}))
if err != nil {
return err
}
// from a git repository, which is a stage as far as Snowflake is concerned. Preferred when the bundle is
// version controlled, since nothing has to be uploaded from the machine running Terraform.
_, err = snowflake.NewOpenflowConnector(ctx, "from_git", &snowflake.OpenflowConnectorArgs{
Database: pulumi.String("my_database"),
Schema: pulumi.String("my_schema"),
Name: pulumi.String("my_git_connector"),
Runtime: pulumi.Any(example.FullyQualifiedName),
From: &snowflake.OpenflowConnectorFromArgs{
Stage: pulumi.Any(exampleSnowflakeGitRepository.FullyQualifiedName),
Path: pulumi.String("branches/main/connectors/orders"),
},
})
if err != nil {
return err
}
// complete resource
_, err = snowflake.NewOpenflowConnector(ctx, "complete", &snowflake.OpenflowConnectorArgs{
Database: pulumi.String("my_database"),
Schema: pulumi.String("my_schema"),
Name: pulumi.String("my_connector_complete"),
Runtime: pulumi.Any(example.FullyQualifiedName),
From: &snowflake.OpenflowConnectorFromArgs{
Definition: pulumi.String("OPENFLOW_POSTGRES_CDC"),
},
DisplayName: pulumi.String("My connector"),
Comment: pulumi.String("Managed by Terraform."),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Snowflake = Pulumi.Snowflake;
return await Deployment.RunAsync(() =>
{
// from a Snowflake-managed connector definition; the connector carries no configuration yet, so it cannot be
// started until one is supplied
var fromDefinition = new Snowflake.OpenflowConnector("from_definition", new()
{
Database = "my_database",
Schema = "my_schema",
Name = "my_connector",
Runtime = example.FullyQualifiedName,
From = new Snowflake.Inputs.OpenflowConnectorFromArgs
{
Definition = "OPENFLOW_POSTGRES_CDC",
},
});
// from a connector bundle on a stage; the connector arrives already configured. A git repository is a stage,
// so `stage` takes one of those too
var fromStage = new Snowflake.OpenflowConnector("from_stage", new()
{
Database = "my_database",
Schema = "my_schema",
Name = "my_configured_connector",
Runtime = example.FullyQualifiedName,
From = new Snowflake.Inputs.OpenflowConnectorFromArgs
{
Stage = exampleSnowflakeStage.FullyQualifiedName,
Path = "connectors/postgres",
},
});
// uploading the bundle yourself, then creating the connector from it. Snowflake reads config.json from the
// location and checks that the connector definition it names matches, so that file has to be there; the same
// PUT pattern uploads anything else the bundle needs, such as a driver jar.
//
// PUT runs from the machine executing Terraform, so the local file has to exist there. That rules it out for
// runners that do not have your bundle checked out, where a git repository stage is the better route.
var bundles = new Snowflake.Stage("bundles", new()
{
Database = "my_database",
Schema = "my_schema",
Name = "my_connector_bundles",
});
var uploadConfig = new Snowflake.Execute("upload_config", new()
{
ExecuteSQL = Output.Tuple(bundles.Database, bundles.Schema, bundles.Name).Apply(values =>
{
var database = values.Item1;
var schema = values.Item2;
var name = values.Item3;
return $"PUT file:///path/to/bundle/config.json @\"{database}\".\"{schema}\".\"{name}\"/orders/ AUTO_COMPRESS = FALSE OVERWRITE = TRUE";
}),
Revert = Output.Tuple(bundles.Database, bundles.Schema, bundles.Name).Apply(values =>
{
var database = values.Item1;
var schema = values.Item2;
var name = values.Item3;
return $"REMOVE @\"{database}\".\"{schema}\".\"{name}\"/orders/config.json";
}),
});
var uploadDriver = new Snowflake.Execute("upload_driver", new()
{
ExecuteSQL = Output.Tuple(bundles.Database, bundles.Schema, bundles.Name).Apply(values =>
{
var database = values.Item1;
var schema = values.Item2;
var name = values.Item3;
return $"PUT file:///path/to/bundle/postgresql.jar @\"{database}\".\"{schema}\".\"{name}\"/orders/ AUTO_COMPRESS = FALSE OVERWRITE = TRUE";
}),
Revert = Output.Tuple(bundles.Database, bundles.Schema, bundles.Name).Apply(values =>
{
var database = values.Item1;
var schema = values.Item2;
var name = values.Item3;
return $"REMOVE @\"{database}\".\"{schema}\".\"{name}\"/orders/postgresql.jar";
}),
});
var fromUploadedBundle = new Snowflake.OpenflowConnector("from_uploaded_bundle", new()
{
Database = "my_database",
Schema = "my_schema",
Name = "my_uploaded_connector",
Runtime = example.FullyQualifiedName,
From = new Snowflake.Inputs.OpenflowConnectorFromArgs
{
Stage = bundles.FullyQualifiedName,
Path = "orders",
},
}, new CustomResourceOptions
{
DependsOn =
{
uploadConfig,
uploadDriver,
},
});
// from a git repository, which is a stage as far as Snowflake is concerned. Preferred when the bundle is
// version controlled, since nothing has to be uploaded from the machine running Terraform.
var fromGit = new Snowflake.OpenflowConnector("from_git", new()
{
Database = "my_database",
Schema = "my_schema",
Name = "my_git_connector",
Runtime = example.FullyQualifiedName,
From = new Snowflake.Inputs.OpenflowConnectorFromArgs
{
Stage = exampleSnowflakeGitRepository.FullyQualifiedName,
Path = "branches/main/connectors/orders",
},
});
// complete resource
var complete = new Snowflake.OpenflowConnector("complete", new()
{
Database = "my_database",
Schema = "my_schema",
Name = "my_connector_complete",
Runtime = example.FullyQualifiedName,
From = new Snowflake.Inputs.OpenflowConnectorFromArgs
{
Definition = "OPENFLOW_POSTGRES_CDC",
},
DisplayName = "My connector",
Comment = "Managed by Terraform.",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.snowflake.OpenflowConnector;
import com.pulumi.snowflake.OpenflowConnectorArgs;
import com.pulumi.snowflake.inputs.OpenflowConnectorFromArgs;
import com.pulumi.snowflake.Stage;
import com.pulumi.snowflake.StageArgs;
import com.pulumi.snowflake.Execute;
import com.pulumi.snowflake.ExecuteArgs;
import com.pulumi.resources.CustomResourceOptions;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
// from a Snowflake-managed connector definition; the connector carries no configuration yet, so it cannot be
// started until one is supplied
var fromDefinition = new OpenflowConnector("fromDefinition", OpenflowConnectorArgs.builder()
.database("my_database")
.schema("my_schema")
.name("my_connector")
.runtime(example.fullyQualifiedName())
.from(OpenflowConnectorFromArgs.builder()
.definition("OPENFLOW_POSTGRES_CDC")
.build())
.build());
// from a connector bundle on a stage; the connector arrives already configured. A git repository is a stage,
// so `stage` takes one of those too
var fromStage = new OpenflowConnector("fromStage", OpenflowConnectorArgs.builder()
.database("my_database")
.schema("my_schema")
.name("my_configured_connector")
.runtime(example.fullyQualifiedName())
.from(OpenflowConnectorFromArgs.builder()
.stage(exampleSnowflakeStage.fullyQualifiedName())
.path("connectors/postgres")
.build())
.build());
// uploading the bundle yourself, then creating the connector from it. Snowflake reads config.json from the
// location and checks that the connector definition it names matches, so that file has to be there; the same
// PUT pattern uploads anything else the bundle needs, such as a driver jar.
//
// PUT runs from the machine executing Terraform, so the local file has to exist there. That rules it out for
// runners that do not have your bundle checked out, where a git repository stage is the better route.
var bundles = new Stage("bundles", StageArgs.builder()
.database("my_database")
.schema("my_schema")
.name("my_connector_bundles")
.build());
var uploadConfig = new Execute("uploadConfig", ExecuteArgs.builder()
.execute(Output.tuple(bundles.database(), bundles.schema(), bundles.name()).applyValue(values -> {
var database = values.t1;
var schema = values.t2;
var name = values.t3;
return String.format("PUT file:///path/to/bundle/config.json @\"%s\".\"%s\".\"%s\"/orders/ AUTO_COMPRESS = FALSE OVERWRITE = TRUE", database,schema,name);
}))
.revert(Output.tuple(bundles.database(), bundles.schema(), bundles.name()).applyValue(values -> {
var database = values.t1;
var schema = values.t2;
var name = values.t3;
return String.format("REMOVE @\"%s\".\"%s\".\"%s\"/orders/config.json", database,schema,name);
}))
.build());
var uploadDriver = new Execute("uploadDriver", ExecuteArgs.builder()
.execute(Output.tuple(bundles.database(), bundles.schema(), bundles.name()).applyValue(values -> {
var database = values.t1;
var schema = values.t2;
var name = values.t3;
return String.format("PUT file:///path/to/bundle/postgresql.jar @\"%s\".\"%s\".\"%s\"/orders/ AUTO_COMPRESS = FALSE OVERWRITE = TRUE", database,schema,name);
}))
.revert(Output.tuple(bundles.database(), bundles.schema(), bundles.name()).applyValue(values -> {
var database = values.t1;
var schema = values.t2;
var name = values.t3;
return String.format("REMOVE @\"%s\".\"%s\".\"%s\"/orders/postgresql.jar", database,schema,name);
}))
.build());
var fromUploadedBundle = new OpenflowConnector("fromUploadedBundle", OpenflowConnectorArgs.builder()
.database("my_database")
.schema("my_schema")
.name("my_uploaded_connector")
.runtime(example.fullyQualifiedName())
.from(OpenflowConnectorFromArgs.builder()
.stage(bundles.fullyQualifiedName())
.path("orders")
.build())
.build(), CustomResourceOptions.builder()
.dependsOn(
uploadConfig,
uploadDriver)
.build());
// from a git repository, which is a stage as far as Snowflake is concerned. Preferred when the bundle is
// version controlled, since nothing has to be uploaded from the machine running Terraform.
var fromGit = new OpenflowConnector("fromGit", OpenflowConnectorArgs.builder()
.database("my_database")
.schema("my_schema")
.name("my_git_connector")
.runtime(example.fullyQualifiedName())
.from(OpenflowConnectorFromArgs.builder()
.stage(exampleSnowflakeGitRepository.fullyQualifiedName())
.path("branches/main/connectors/orders")
.build())
.build());
// complete resource
var complete = new OpenflowConnector("complete", OpenflowConnectorArgs.builder()
.database("my_database")
.schema("my_schema")
.name("my_connector_complete")
.runtime(example.fullyQualifiedName())
.from(OpenflowConnectorFromArgs.builder()
.definition("OPENFLOW_POSTGRES_CDC")
.build())
.displayName("My connector")
.comment("Managed by Terraform.")
.build());
}
}
resources:
# from a Snowflake-managed connector definition; the connector carries no configuration yet, so it cannot be
# started until one is supplied
fromDefinition:
type: snowflake:OpenflowConnector
name: from_definition
properties:
database: my_database
schema: my_schema
name: my_connector
runtime: ${example.fullyQualifiedName}
from:
definition: OPENFLOW_POSTGRES_CDC
# from a connector bundle on a stage; the connector arrives already configured. A git repository is a stage,
# so `stage` takes one of those too
fromStage:
type: snowflake:OpenflowConnector
name: from_stage
properties:
database: my_database
schema: my_schema
name: my_configured_connector
runtime: ${example.fullyQualifiedName}
from:
stage: ${exampleSnowflakeStage.fullyQualifiedName}
path: connectors/postgres
# uploading the bundle yourself, then creating the connector from it. Snowflake reads config.json from the
# location and checks that the connector definition it names matches, so that file has to be there; the same
# PUT pattern uploads anything else the bundle needs, such as a driver jar.
#
# PUT runs from the machine executing Terraform, so the local file has to exist there. That rules it out for
# runners that do not have your bundle checked out, where a git repository stage is the better route.
bundles:
type: snowflake:Stage
properties:
database: my_database
schema: my_schema
name: my_connector_bundles
uploadConfig:
type: snowflake:Execute
name: upload_config
properties:
execute: PUT file:///path/to/bundle/config.json @"${bundles.database}"."${bundles.schema}"."${bundles.name}"/orders/ AUTO_COMPRESS = FALSE OVERWRITE = TRUE
revert: REMOVE @"${bundles.database}"."${bundles.schema}"."${bundles.name}"/orders/config.json
uploadDriver:
type: snowflake:Execute
name: upload_driver
properties:
execute: PUT file:///path/to/bundle/postgresql.jar @"${bundles.database}"."${bundles.schema}"."${bundles.name}"/orders/ AUTO_COMPRESS = FALSE OVERWRITE = TRUE
revert: REMOVE @"${bundles.database}"."${bundles.schema}"."${bundles.name}"/orders/postgresql.jar
fromUploadedBundle:
type: snowflake:OpenflowConnector
name: from_uploaded_bundle
properties:
database: my_database
schema: my_schema
name: my_uploaded_connector
runtime: ${example.fullyQualifiedName}
from:
stage: ${bundles.fullyQualifiedName}
path: orders
options:
dependsOn:
- ${uploadConfig}
- ${uploadDriver}
# from a git repository, which is a stage as far as Snowflake is concerned. Preferred when the bundle is
# version controlled, since nothing has to be uploaded from the machine running Terraform.
fromGit:
type: snowflake:OpenflowConnector
name: from_git
properties:
database: my_database
schema: my_schema
name: my_git_connector
runtime: ${example.fullyQualifiedName}
from:
stage: ${exampleSnowflakeGitRepository.fullyQualifiedName}
path: branches/main/connectors/orders
# complete resource
complete:
type: snowflake:OpenflowConnector
properties:
database: my_database
schema: my_schema
name: my_connector_complete
runtime: ${example.fullyQualifiedName}
from:
definition: OPENFLOW_POSTGRES_CDC
displayName: My connector
comment: Managed by Terraform.
pulumi {
required_providers {
snowflake = {
source = "pulumi/snowflake"
}
}
}
# from a Snowflake-managed connector definition; the connector carries no configuration yet, so it cannot be
# started until one is supplied
resource "snowflake_openflowconnector" "from_definition" {
database = "my_database"
schema = "my_schema"
name = "my_connector"
runtime = example.fullyQualifiedName
from = {
definition = "OPENFLOW_POSTGRES_CDC"
}
}
# from a connector bundle on a stage; the connector arrives already configured. A git repository is a stage,
# so `stage` takes one of those too
resource "snowflake_openflowconnector" "from_stage" {
database = "my_database"
schema = "my_schema"
name = "my_configured_connector"
runtime = example.fullyQualifiedName
from = {
stage = exampleSnowflakeStage.fullyQualifiedName
path = "connectors/postgres"
}
}
# uploading the bundle yourself, then creating the connector from it. Snowflake reads config.json from the
# location and checks that the connector definition it names matches, so that file has to be there; the same
# PUT pattern uploads anything else the bundle needs, such as a driver jar.
#
# PUT runs from the machine executing Terraform, so the local file has to exist there. That rules it out for
# runners that do not have your bundle checked out, where a git repository stage is the better route.
resource "snowflake_stage" "bundles" {
database = "my_database"
schema = "my_schema"
name = "my_connector_bundles"
}
resource "snowflake_execute" "upload_config" {
execute ="PUT file:///path/to/bundle/config.json @"${snowflake_stage.bundles.database}"."${snowflake_stage.bundles.schema}"."${snowflake_stage.bundles.name}"/orders/ AUTO_COMPRESS = FALSE OVERWRITE = TRUE"
revert ="REMOVE @"${snowflake_stage.bundles.database}"."${snowflake_stage.bundles.schema}"."${snowflake_stage.bundles.name}"/orders/config.json"
}
resource "snowflake_execute" "upload_driver" {
execute ="PUT file:///path/to/bundle/postgresql.jar @"${snowflake_stage.bundles.database}"."${snowflake_stage.bundles.schema}"."${snowflake_stage.bundles.name}"/orders/ AUTO_COMPRESS = FALSE OVERWRITE = TRUE"
revert ="REMOVE @"${snowflake_stage.bundles.database}"."${snowflake_stage.bundles.schema}"."${snowflake_stage.bundles.name}"/orders/postgresql.jar"
}
resource "snowflake_openflowconnector" "from_uploaded_bundle" {
depends_on = [snowflake_execute.upload_config, snowflake_execute.upload_driver]
database = "my_database"
schema = "my_schema"
name = "my_uploaded_connector"
runtime = example.fullyQualifiedName
from = {
stage = snowflake_stage.bundles.fully_qualified_name
path = "orders"
}
}
# from a git repository, which is a stage as far as Snowflake is concerned. Preferred when the bundle is
# version controlled, since nothing has to be uploaded from the machine running Terraform.
resource "snowflake_openflowconnector" "from_git" {
database = "my_database"
schema = "my_schema"
name = "my_git_connector"
runtime = example.fullyQualifiedName
from = {
stage = exampleSnowflakeGitRepository.fullyQualifiedName
path = "branches/main/connectors/orders"
}
}
# complete resource
resource "snowflake_openflowconnector" "complete" {
database = "my_database"
schema = "my_schema"
name = "my_connector_complete"
runtime = example.fullyQualifiedName
from = {
definition = "OPENFLOW_POSTGRES_CDC"
}
display_name = "My connector"
comment = "Managed by Terraform."
}
Note If a field has a default value, it is shown next to the type in the schema.
Create OpenflowConnector Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new OpenflowConnector(name: string, args: OpenflowConnectorArgs, opts?: CustomResourceOptions);@overload
def OpenflowConnector(resource_name: str,
args: OpenflowConnectorArgs,
opts: Optional[ResourceOptions] = None)
@overload
def OpenflowConnector(resource_name: str,
opts: Optional[ResourceOptions] = None,
database: Optional[str] = None,
from_: Optional[OpenflowConnectorFromArgs] = None,
runtime: Optional[str] = None,
schema: Optional[str] = None,
comment: Optional[str] = None,
display_name: Optional[str] = None,
name: Optional[str] = None)func NewOpenflowConnector(ctx *Context, name string, args OpenflowConnectorArgs, opts ...ResourceOption) (*OpenflowConnector, error)public OpenflowConnector(string name, OpenflowConnectorArgs args, CustomResourceOptions? opts = null)
public OpenflowConnector(String name, OpenflowConnectorArgs args)
public OpenflowConnector(String name, OpenflowConnectorArgs args, CustomResourceOptions options)
type: snowflake:OpenflowConnector
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
resource "snowflake_openflow_connector" "name" {
# resource properties
}Parameters
- name string
- The unique name of the resource.
- args OpenflowConnectorArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args OpenflowConnectorArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args OpenflowConnectorArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args OpenflowConnectorArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args OpenflowConnectorArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var openflowConnectorResource = new Snowflake.OpenflowConnector("openflowConnectorResource", new()
{
Database = "string",
From = new Snowflake.Inputs.OpenflowConnectorFromArgs
{
Definition = "string",
Path = "string",
Stage = "string",
},
Runtime = "string",
Schema = "string",
Comment = "string",
DisplayName = "string",
Name = "string",
});
example, err := snowflake.NewOpenflowConnector(ctx, "openflowConnectorResource", &snowflake.OpenflowConnectorArgs{
Database: pulumi.String("string"),
From: &snowflake.OpenflowConnectorFromArgs{
Definition: pulumi.String("string"),
Path: pulumi.String("string"),
Stage: pulumi.String("string"),
},
Runtime: pulumi.String("string"),
Schema: pulumi.String("string"),
Comment: pulumi.String("string"),
DisplayName: pulumi.String("string"),
Name: pulumi.String("string"),
})
resource "snowflake_openflow_connector" "openflowConnectorResource" {
lifecycle {
create_before_destroy = true
}
database = "string"
from = {
definition = "string"
path = "string"
stage = "string"
}
runtime = "string"
schema = "string"
comment = "string"
display_name = "string"
name = "string"
}
var openflowConnectorResource = new OpenflowConnector("openflowConnectorResource", OpenflowConnectorArgs.builder()
.database("string")
.from(OpenflowConnectorFromArgs.builder()
.definition("string")
.path("string")
.stage("string")
.build())
.runtime("string")
.schema("string")
.comment("string")
.displayName("string")
.name("string")
.build());
openflow_connector_resource = snowflake.OpenflowConnector("openflowConnectorResource",
database="string",
from_={
"definition": "string",
"path": "string",
"stage": "string",
},
runtime="string",
schema="string",
comment="string",
display_name="string",
name="string")
const openflowConnectorResource = new snowflake.OpenflowConnector("openflowConnectorResource", {
database: "string",
from: {
definition: "string",
path: "string",
stage: "string",
},
runtime: "string",
schema: "string",
comment: "string",
displayName: "string",
name: "string",
});
type: snowflake:OpenflowConnector
properties:
comment: string
database: string
displayName: string
from:
definition: string
path: string
stage: string
name: string
runtime: string
schema: string
OpenflowConnector Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The OpenflowConnector resource accepts the following input properties:
- Database string
- The database in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - From
Openflow
Connector From - Specifies what the connector is created from. Snowflake has no ALTER for it, so changing it recreates the connector. Note that external changes on this field and nested fields are not detected: Snowflake resolves a definition for a connector created from a stage too, so a value read from SHOW could not be told apart from a configured one.
show_output.connector_definitionreports what Snowflake resolved. - Runtime string
- Specifies the fully qualified name of the Openflow runtime the connector runs in. The connector is created in the runtime's schema, so
databaseandschemamust match it. Snowflake has no ALTER for it, so changing it recreates the connector. - Schema string
- The schema in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - Comment string
- Specifies a comment for the Openflow connector.
- Display
Name string - A free-text alias for the connector. Shown in the Openflow UI in place of the connector's identifier when set.
- Name string
- Specifies the identifier for the Openflow connector; must be unique for the schema in which the connector is created. Due to technical limitations (read more here), avoid using the following characters:
|,.,".
- Database string
- The database in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - From
Openflow
Connector From Args - Specifies what the connector is created from. Snowflake has no ALTER for it, so changing it recreates the connector. Note that external changes on this field and nested fields are not detected: Snowflake resolves a definition for a connector created from a stage too, so a value read from SHOW could not be told apart from a configured one.
show_output.connector_definitionreports what Snowflake resolved. - Runtime string
- Specifies the fully qualified name of the Openflow runtime the connector runs in. The connector is created in the runtime's schema, so
databaseandschemamust match it. Snowflake has no ALTER for it, so changing it recreates the connector. - Schema string
- The schema in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - Comment string
- Specifies a comment for the Openflow connector.
- Display
Name string - A free-text alias for the connector. Shown in the Openflow UI in place of the connector's identifier when set.
- Name string
- Specifies the identifier for the Openflow connector; must be unique for the schema in which the connector is created. Due to technical limitations (read more here), avoid using the following characters:
|,.,".
- database string
- The database in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - from object
- Specifies what the connector is created from. Snowflake has no ALTER for it, so changing it recreates the connector. Note that external changes on this field and nested fields are not detected: Snowflake resolves a definition for a connector created from a stage too, so a value read from SHOW could not be told apart from a configured one.
show_output.connector_definitionreports what Snowflake resolved. - runtime string
- Specifies the fully qualified name of the Openflow runtime the connector runs in. The connector is created in the runtime's schema, so
databaseandschemamust match it. Snowflake has no ALTER for it, so changing it recreates the connector. - schema string
- The schema in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - comment string
- Specifies a comment for the Openflow connector.
- display_
name string - A free-text alias for the connector. Shown in the Openflow UI in place of the connector's identifier when set.
- name string
- Specifies the identifier for the Openflow connector; must be unique for the schema in which the connector is created. Due to technical limitations (read more here), avoid using the following characters:
|,.,".
- database String
- The database in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - from
Openflow
Connector From - Specifies what the connector is created from. Snowflake has no ALTER for it, so changing it recreates the connector. Note that external changes on this field and nested fields are not detected: Snowflake resolves a definition for a connector created from a stage too, so a value read from SHOW could not be told apart from a configured one.
show_output.connector_definitionreports what Snowflake resolved. - runtime String
- Specifies the fully qualified name of the Openflow runtime the connector runs in. The connector is created in the runtime's schema, so
databaseandschemamust match it. Snowflake has no ALTER for it, so changing it recreates the connector. - schema String
- The schema in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - comment String
- Specifies a comment for the Openflow connector.
- display
Name String - A free-text alias for the connector. Shown in the Openflow UI in place of the connector's identifier when set.
- name String
- Specifies the identifier for the Openflow connector; must be unique for the schema in which the connector is created. Due to technical limitations (read more here), avoid using the following characters:
|,.,".
- database string
- The database in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - from
Openflow
Connector From - Specifies what the connector is created from. Snowflake has no ALTER for it, so changing it recreates the connector. Note that external changes on this field and nested fields are not detected: Snowflake resolves a definition for a connector created from a stage too, so a value read from SHOW could not be told apart from a configured one.
show_output.connector_definitionreports what Snowflake resolved. - runtime string
- Specifies the fully qualified name of the Openflow runtime the connector runs in. The connector is created in the runtime's schema, so
databaseandschemamust match it. Snowflake has no ALTER for it, so changing it recreates the connector. - schema string
- The schema in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - comment string
- Specifies a comment for the Openflow connector.
- display
Name string - A free-text alias for the connector. Shown in the Openflow UI in place of the connector's identifier when set.
- name string
- Specifies the identifier for the Openflow connector; must be unique for the schema in which the connector is created. Due to technical limitations (read more here), avoid using the following characters:
|,.,".
- database str
- The database in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - from_
Openflow
Connector From Args - Specifies what the connector is created from. Snowflake has no ALTER for it, so changing it recreates the connector. Note that external changes on this field and nested fields are not detected: Snowflake resolves a definition for a connector created from a stage too, so a value read from SHOW could not be told apart from a configured one.
show_output.connector_definitionreports what Snowflake resolved. - runtime str
- Specifies the fully qualified name of the Openflow runtime the connector runs in. The connector is created in the runtime's schema, so
databaseandschemamust match it. Snowflake has no ALTER for it, so changing it recreates the connector. - schema str
- The schema in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - comment str
- Specifies a comment for the Openflow connector.
- display_
name str - A free-text alias for the connector. Shown in the Openflow UI in place of the connector's identifier when set.
- name str
- Specifies the identifier for the Openflow connector; must be unique for the schema in which the connector is created. Due to technical limitations (read more here), avoid using the following characters:
|,.,".
- database String
- The database in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - from Property Map
- Specifies what the connector is created from. Snowflake has no ALTER for it, so changing it recreates the connector. Note that external changes on this field and nested fields are not detected: Snowflake resolves a definition for a connector created from a stage too, so a value read from SHOW could not be told apart from a configured one.
show_output.connector_definitionreports what Snowflake resolved. - runtime String
- Specifies the fully qualified name of the Openflow runtime the connector runs in. The connector is created in the runtime's schema, so
databaseandschemamust match it. Snowflake has no ALTER for it, so changing it recreates the connector. - schema String
- The schema in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - comment String
- Specifies a comment for the Openflow connector.
- display
Name String - A free-text alias for the connector. Shown in the Openflow UI in place of the connector's identifier when set.
- name String
- Specifies the identifier for the Openflow connector; must be unique for the schema in which the connector is created. Due to technical limitations (read more here), avoid using the following characters:
|,.,".
Outputs
All input properties are implicitly available as output properties. Additionally, the OpenflowConnector resource produces the following output properties:
- Describe
Outputs List<OpenflowConnector Describe Output> - Outputs the result of
DESCRIBE OPENFLOW CONNECTORfor the given connector. - Fully
Qualified stringName - Fully qualified name of the resource. For more information, see object name resolution.
- Id string
- The provider-assigned unique ID for this managed resource.
- Show
Outputs List<OpenflowConnector Show Output> - Outputs the result of
SHOW OPENFLOW CONNECTORSfor the given connector.
- Describe
Outputs []OpenflowConnector Describe Output - Outputs the result of
DESCRIBE OPENFLOW CONNECTORfor the given connector. - Fully
Qualified stringName - Fully qualified name of the resource. For more information, see object name resolution.
- Id string
- The provider-assigned unique ID for this managed resource.
- Show
Outputs []OpenflowConnector Show Output - Outputs the result of
SHOW OPENFLOW CONNECTORSfor the given connector.
- describe_
outputs list(object) - Outputs the result of
DESCRIBE OPENFLOW CONNECTORfor the given connector. - fully_
qualified_ stringname - Fully qualified name of the resource. For more information, see object name resolution.
- id string
- The provider-assigned unique ID for this managed resource.
- show_
outputs list(object) - Outputs the result of
SHOW OPENFLOW CONNECTORSfor the given connector.
- describe
Outputs List<OpenflowConnector Describe Output> - Outputs the result of
DESCRIBE OPENFLOW CONNECTORfor the given connector. - fully
Qualified StringName - Fully qualified name of the resource. For more information, see object name resolution.
- id String
- The provider-assigned unique ID for this managed resource.
- show
Outputs List<OpenflowConnector Show Output> - Outputs the result of
SHOW OPENFLOW CONNECTORSfor the given connector.
- describe
Outputs OpenflowConnector Describe Output[] - Outputs the result of
DESCRIBE OPENFLOW CONNECTORfor the given connector. - fully
Qualified stringName - Fully qualified name of the resource. For more information, see object name resolution.
- id string
- The provider-assigned unique ID for this managed resource.
- show
Outputs OpenflowConnector Show Output[] - Outputs the result of
SHOW OPENFLOW CONNECTORSfor the given connector.
- describe_
outputs Sequence[OpenflowConnector Describe Output] - Outputs the result of
DESCRIBE OPENFLOW CONNECTORfor the given connector. - fully_
qualified_ strname - Fully qualified name of the resource. For more information, see object name resolution.
- id str
- The provider-assigned unique ID for this managed resource.
- show_
outputs Sequence[OpenflowConnector Show Output] - Outputs the result of
SHOW OPENFLOW CONNECTORSfor the given connector.
- describe
Outputs List<Property Map> - Outputs the result of
DESCRIBE OPENFLOW CONNECTORfor the given connector. - fully
Qualified StringName - Fully qualified name of the resource. For more information, see object name resolution.
- id String
- The provider-assigned unique ID for this managed resource.
- show
Outputs List<Property Map> - Outputs the result of
SHOW OPENFLOW CONNECTORSfor the given connector.
Look up Existing OpenflowConnector Resource
Get an existing OpenflowConnector resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: OpenflowConnectorState, opts?: CustomResourceOptions): OpenflowConnector@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
comment: Optional[str] = None,
database: Optional[str] = None,
describe_outputs: Optional[Sequence[OpenflowConnectorDescribeOutputArgs]] = None,
display_name: Optional[str] = None,
from_: Optional[OpenflowConnectorFromArgs] = None,
fully_qualified_name: Optional[str] = None,
name: Optional[str] = None,
runtime: Optional[str] = None,
schema: Optional[str] = None,
show_outputs: Optional[Sequence[OpenflowConnectorShowOutputArgs]] = None) -> OpenflowConnectorfunc GetOpenflowConnector(ctx *Context, name string, id IDInput, state *OpenflowConnectorState, opts ...ResourceOption) (*OpenflowConnector, error)public static OpenflowConnector Get(string name, Input<string> id, OpenflowConnectorState? state, CustomResourceOptions? opts = null)public static OpenflowConnector get(String name, Output<String> id, OpenflowConnectorState state, CustomResourceOptions options)resources: _: type: snowflake:OpenflowConnector get: id: ${id}import {
to = snowflake_openflow_connector.example
id = "${id}"
}
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Comment string
- Specifies a comment for the Openflow connector.
- Database string
- The database in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - Describe
Outputs List<OpenflowConnector Describe Output> - Outputs the result of
DESCRIBE OPENFLOW CONNECTORfor the given connector. - Display
Name string - A free-text alias for the connector. Shown in the Openflow UI in place of the connector's identifier when set.
- From
Openflow
Connector From - Specifies what the connector is created from. Snowflake has no ALTER for it, so changing it recreates the connector. Note that external changes on this field and nested fields are not detected: Snowflake resolves a definition for a connector created from a stage too, so a value read from SHOW could not be told apart from a configured one.
show_output.connector_definitionreports what Snowflake resolved. - Fully
Qualified stringName - Fully qualified name of the resource. For more information, see object name resolution.
- Name string
- Specifies the identifier for the Openflow connector; must be unique for the schema in which the connector is created. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - Runtime string
- Specifies the fully qualified name of the Openflow runtime the connector runs in. The connector is created in the runtime's schema, so
databaseandschemamust match it. Snowflake has no ALTER for it, so changing it recreates the connector. - Schema string
- The schema in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - Show
Outputs List<OpenflowConnector Show Output> - Outputs the result of
SHOW OPENFLOW CONNECTORSfor the given connector.
- Comment string
- Specifies a comment for the Openflow connector.
- Database string
- The database in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - Describe
Outputs []OpenflowConnector Describe Output Args - Outputs the result of
DESCRIBE OPENFLOW CONNECTORfor the given connector. - Display
Name string - A free-text alias for the connector. Shown in the Openflow UI in place of the connector's identifier when set.
- From
Openflow
Connector From Args - Specifies what the connector is created from. Snowflake has no ALTER for it, so changing it recreates the connector. Note that external changes on this field and nested fields are not detected: Snowflake resolves a definition for a connector created from a stage too, so a value read from SHOW could not be told apart from a configured one.
show_output.connector_definitionreports what Snowflake resolved. - Fully
Qualified stringName - Fully qualified name of the resource. For more information, see object name resolution.
- Name string
- Specifies the identifier for the Openflow connector; must be unique for the schema in which the connector is created. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - Runtime string
- Specifies the fully qualified name of the Openflow runtime the connector runs in. The connector is created in the runtime's schema, so
databaseandschemamust match it. Snowflake has no ALTER for it, so changing it recreates the connector. - Schema string
- The schema in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - Show
Outputs []OpenflowConnector Show Output Args - Outputs the result of
SHOW OPENFLOW CONNECTORSfor the given connector.
- comment string
- Specifies a comment for the Openflow connector.
- database string
- The database in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - describe_
outputs list(object) - Outputs the result of
DESCRIBE OPENFLOW CONNECTORfor the given connector. - display_
name string - A free-text alias for the connector. Shown in the Openflow UI in place of the connector's identifier when set.
- from object
- Specifies what the connector is created from. Snowflake has no ALTER for it, so changing it recreates the connector. Note that external changes on this field and nested fields are not detected: Snowflake resolves a definition for a connector created from a stage too, so a value read from SHOW could not be told apart from a configured one.
show_output.connector_definitionreports what Snowflake resolved. - fully_
qualified_ stringname - Fully qualified name of the resource. For more information, see object name resolution.
- name string
- Specifies the identifier for the Openflow connector; must be unique for the schema in which the connector is created. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - runtime string
- Specifies the fully qualified name of the Openflow runtime the connector runs in. The connector is created in the runtime's schema, so
databaseandschemamust match it. Snowflake has no ALTER for it, so changing it recreates the connector. - schema string
- The schema in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - show_
outputs list(object) - Outputs the result of
SHOW OPENFLOW CONNECTORSfor the given connector.
- comment String
- Specifies a comment for the Openflow connector.
- database String
- The database in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - describe
Outputs List<OpenflowConnector Describe Output> - Outputs the result of
DESCRIBE OPENFLOW CONNECTORfor the given connector. - display
Name String - A free-text alias for the connector. Shown in the Openflow UI in place of the connector's identifier when set.
- from
Openflow
Connector From - Specifies what the connector is created from. Snowflake has no ALTER for it, so changing it recreates the connector. Note that external changes on this field and nested fields are not detected: Snowflake resolves a definition for a connector created from a stage too, so a value read from SHOW could not be told apart from a configured one.
show_output.connector_definitionreports what Snowflake resolved. - fully
Qualified StringName - Fully qualified name of the resource. For more information, see object name resolution.
- name String
- Specifies the identifier for the Openflow connector; must be unique for the schema in which the connector is created. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - runtime String
- Specifies the fully qualified name of the Openflow runtime the connector runs in. The connector is created in the runtime's schema, so
databaseandschemamust match it. Snowflake has no ALTER for it, so changing it recreates the connector. - schema String
- The schema in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - show
Outputs List<OpenflowConnector Show Output> - Outputs the result of
SHOW OPENFLOW CONNECTORSfor the given connector.
- comment string
- Specifies a comment for the Openflow connector.
- database string
- The database in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - describe
Outputs OpenflowConnector Describe Output[] - Outputs the result of
DESCRIBE OPENFLOW CONNECTORfor the given connector. - display
Name string - A free-text alias for the connector. Shown in the Openflow UI in place of the connector's identifier when set.
- from
Openflow
Connector From - Specifies what the connector is created from. Snowflake has no ALTER for it, so changing it recreates the connector. Note that external changes on this field and nested fields are not detected: Snowflake resolves a definition for a connector created from a stage too, so a value read from SHOW could not be told apart from a configured one.
show_output.connector_definitionreports what Snowflake resolved. - fully
Qualified stringName - Fully qualified name of the resource. For more information, see object name resolution.
- name string
- Specifies the identifier for the Openflow connector; must be unique for the schema in which the connector is created. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - runtime string
- Specifies the fully qualified name of the Openflow runtime the connector runs in. The connector is created in the runtime's schema, so
databaseandschemamust match it. Snowflake has no ALTER for it, so changing it recreates the connector. - schema string
- The schema in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - show
Outputs OpenflowConnector Show Output[] - Outputs the result of
SHOW OPENFLOW CONNECTORSfor the given connector.
- comment str
- Specifies a comment for the Openflow connector.
- database str
- The database in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - describe_
outputs Sequence[OpenflowConnector Describe Output Args] - Outputs the result of
DESCRIBE OPENFLOW CONNECTORfor the given connector. - display_
name str - A free-text alias for the connector. Shown in the Openflow UI in place of the connector's identifier when set.
- from_
Openflow
Connector From Args - Specifies what the connector is created from. Snowflake has no ALTER for it, so changing it recreates the connector. Note that external changes on this field and nested fields are not detected: Snowflake resolves a definition for a connector created from a stage too, so a value read from SHOW could not be told apart from a configured one.
show_output.connector_definitionreports what Snowflake resolved. - fully_
qualified_ strname - Fully qualified name of the resource. For more information, see object name resolution.
- name str
- Specifies the identifier for the Openflow connector; must be unique for the schema in which the connector is created. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - runtime str
- Specifies the fully qualified name of the Openflow runtime the connector runs in. The connector is created in the runtime's schema, so
databaseandschemamust match it. Snowflake has no ALTER for it, so changing it recreates the connector. - schema str
- The schema in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - show_
outputs Sequence[OpenflowConnector Show Output Args] - Outputs the result of
SHOW OPENFLOW CONNECTORSfor the given connector.
- comment String
- Specifies a comment for the Openflow connector.
- database String
- The database in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - describe
Outputs List<Property Map> - Outputs the result of
DESCRIBE OPENFLOW CONNECTORfor the given connector. - display
Name String - A free-text alias for the connector. Shown in the Openflow UI in place of the connector's identifier when set.
- from Property Map
- Specifies what the connector is created from. Snowflake has no ALTER for it, so changing it recreates the connector. Note that external changes on this field and nested fields are not detected: Snowflake resolves a definition for a connector created from a stage too, so a value read from SHOW could not be told apart from a configured one.
show_output.connector_definitionreports what Snowflake resolved. - fully
Qualified StringName - Fully qualified name of the resource. For more information, see object name resolution.
- name String
- Specifies the identifier for the Openflow connector; must be unique for the schema in which the connector is created. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - runtime String
- Specifies the fully qualified name of the Openflow runtime the connector runs in. The connector is created in the runtime's schema, so
databaseandschemamust match it. Snowflake has no ALTER for it, so changing it recreates the connector. - schema String
- The schema in which to create the Openflow connector. Due to technical limitations (read more here), avoid using the following characters:
|,.,". - show
Outputs List<Property Map> - Outputs the result of
SHOW OPENFLOW CONNECTORSfor the given connector.
Supporting Types
OpenflowConnectorDescribeOutput, OpenflowConnectorDescribeOutputArgs
- Comment string
- Connector
Definition string - Connector
Url string - Default
Version string - Default
Version stringAlias - Default
Version stringGit Commit Hash - Default
Version stringLocation Uri - Default
Version stringName - Default
Version stringSource Location Uri - Display
Name string - Last
Version stringAlias - Last
Version stringGit Commit Hash - Last
Version stringLocation Uri - Last
Version stringName - Last
Version stringSource Location Uri - Live
Version stringLocation Uri - Name string
- Owner string
- Runtime string
- Status string
- Comment string
- Connector
Definition string - Connector
Url string - Default
Version string - Default
Version stringAlias - Default
Version stringGit Commit Hash - Default
Version stringLocation Uri - Default
Version stringName - Default
Version stringSource Location Uri - Display
Name string - Last
Version stringAlias - Last
Version stringGit Commit Hash - Last
Version stringLocation Uri - Last
Version stringName - Last
Version stringSource Location Uri - Live
Version stringLocation Uri - Name string
- Owner string
- Runtime string
- Status string
- comment string
- connector_
definition string - connector_
url string - default_
version string - default_
version_ stringalias - default_
version_ stringgit_ commit_ hash - default_
version_ stringlocation_ uri - default_
version_ stringname - default_
version_ stringsource_ location_ uri - display_
name string - last_
version_ stringalias - last_
version_ stringgit_ commit_ hash - last_
version_ stringlocation_ uri - last_
version_ stringname - last_
version_ stringsource_ location_ uri - live_
version_ stringlocation_ uri - name string
- owner string
- runtime string
- status string
- comment String
- connector
Definition String - connector
Url String - default
Version String - default
Version StringAlias - default
Version StringGit Commit Hash - default
Version StringLocation Uri - default
Version StringName - default
Version StringSource Location Uri - display
Name String - last
Version StringAlias - last
Version StringGit Commit Hash - last
Version StringLocation Uri - last
Version StringName - last
Version StringSource Location Uri - live
Version StringLocation Uri - name String
- owner String
- runtime String
- status String
- comment string
- connector
Definition string - connector
Url string - default
Version string - default
Version stringAlias - default
Version stringGit Commit Hash - default
Version stringLocation Uri - default
Version stringName - default
Version stringSource Location Uri - display
Name string - last
Version stringAlias - last
Version stringGit Commit Hash - last
Version stringLocation Uri - last
Version stringName - last
Version stringSource Location Uri - live
Version stringLocation Uri - name string
- owner string
- runtime string
- status string
- comment str
- connector_
definition str - connector_
url str - default_
version str - default_
version_ stralias - default_
version_ strgit_ commit_ hash - default_
version_ strlocation_ uri - default_
version_ strname - default_
version_ strsource_ location_ uri - display_
name str - last_
version_ stralias - last_
version_ strgit_ commit_ hash - last_
version_ strlocation_ uri - last_
version_ strname - last_
version_ strsource_ location_ uri - live_
version_ strlocation_ uri - name str
- owner str
- runtime str
- status str
- comment String
- connector
Definition String - connector
Url String - default
Version String - default
Version StringAlias - default
Version StringGit Commit Hash - default
Version StringLocation Uri - default
Version StringName - default
Version StringSource Location Uri - display
Name String - last
Version StringAlias - last
Version StringGit Commit Hash - last
Version StringLocation Uri - last
Version StringName - last
Version StringSource Location Uri - live
Version StringLocation Uri - name String
- owner String
- runtime String
- status String
OpenflowConnectorFrom, OpenflowConnectorFromArgs
- Definition string
- Catalog definition ID for the connector type, for example
OPENFLOW_POSTGRES_CDC. List the available IDs with thesnowflake.getOpenflowConnectorDefinitionsdata source. A connector created this way is a draft: it settles on STOPPED and stays there until a configuration version is committed, which this resource does not do. - Path string
- Path to the bundle within the stage. The bundle's root is used when omitted.
- Stage string
- Identifier of a stage holding a complete configuration bundle, which is how a connector arrives already configured and able to start without a commit. A git repository stage works here too.
- Definition string
- Catalog definition ID for the connector type, for example
OPENFLOW_POSTGRES_CDC. List the available IDs with thesnowflake.getOpenflowConnectorDefinitionsdata source. A connector created this way is a draft: it settles on STOPPED and stays there until a configuration version is committed, which this resource does not do. - Path string
- Path to the bundle within the stage. The bundle's root is used when omitted.
- Stage string
- Identifier of a stage holding a complete configuration bundle, which is how a connector arrives already configured and able to start without a commit. A git repository stage works here too.
- definition string
- Catalog definition ID for the connector type, for example
OPENFLOW_POSTGRES_CDC. List the available IDs with thesnowflake.getOpenflowConnectorDefinitionsdata source. A connector created this way is a draft: it settles on STOPPED and stays there until a configuration version is committed, which this resource does not do. - path string
- Path to the bundle within the stage. The bundle's root is used when omitted.
- stage string
- Identifier of a stage holding a complete configuration bundle, which is how a connector arrives already configured and able to start without a commit. A git repository stage works here too.
- definition String
- Catalog definition ID for the connector type, for example
OPENFLOW_POSTGRES_CDC. List the available IDs with thesnowflake.getOpenflowConnectorDefinitionsdata source. A connector created this way is a draft: it settles on STOPPED and stays there until a configuration version is committed, which this resource does not do. - path String
- Path to the bundle within the stage. The bundle's root is used when omitted.
- stage String
- Identifier of a stage holding a complete configuration bundle, which is how a connector arrives already configured and able to start without a commit. A git repository stage works here too.
- definition string
- Catalog definition ID for the connector type, for example
OPENFLOW_POSTGRES_CDC. List the available IDs with thesnowflake.getOpenflowConnectorDefinitionsdata source. A connector created this way is a draft: it settles on STOPPED and stays there until a configuration version is committed, which this resource does not do. - path string
- Path to the bundle within the stage. The bundle's root is used when omitted.
- stage string
- Identifier of a stage holding a complete configuration bundle, which is how a connector arrives already configured and able to start without a commit. A git repository stage works here too.
- definition str
- Catalog definition ID for the connector type, for example
OPENFLOW_POSTGRES_CDC. List the available IDs with thesnowflake.getOpenflowConnectorDefinitionsdata source. A connector created this way is a draft: it settles on STOPPED and stays there until a configuration version is committed, which this resource does not do. - path str
- Path to the bundle within the stage. The bundle's root is used when omitted.
- stage str
- Identifier of a stage holding a complete configuration bundle, which is how a connector arrives already configured and able to start without a commit. A git repository stage works here too.
- definition String
- Catalog definition ID for the connector type, for example
OPENFLOW_POSTGRES_CDC. List the available IDs with thesnowflake.getOpenflowConnectorDefinitionsdata source. A connector created this way is a draft: it settles on STOPPED and stays there until a configuration version is committed, which this resource does not do. - path String
- Path to the bundle within the stage. The bundle's root is used when omitted.
- stage String
- Identifier of a stage holding a complete configuration bundle, which is how a connector arrives already configured and able to start without a commit. A git repository stage works here too.
OpenflowConnectorShowOutput, OpenflowConnectorShowOutputArgs
- Comment string
- Connector
Definition string - Connector
Url string - Created
On string - Database
Name string - Default
Version string - Default
Version stringAlias - Default
Version stringLocation Uri - Default
Version stringName - Default
Version stringSource Location Uri - Display
Name string - Live
Version stringLocation Uri - Name string
- Owner string
- Runtime string
- Schema
Name string - Status string
- Updated
On string
- Comment string
- Connector
Definition string - Connector
Url string - Created
On string - Database
Name string - Default
Version string - Default
Version stringAlias - Default
Version stringLocation Uri - Default
Version stringName - Default
Version stringSource Location Uri - Display
Name string - Live
Version stringLocation Uri - Name string
- Owner string
- Runtime string
- Schema
Name string - Status string
- Updated
On string
- comment string
- connector_
definition string - connector_
url string - created_
on string - database_
name string - default_
version string - default_
version_ stringalias - default_
version_ stringlocation_ uri - default_
version_ stringname - default_
version_ stringsource_ location_ uri - display_
name string - live_
version_ stringlocation_ uri - name string
- owner string
- runtime string
- schema_
name string - status string
- updated_
on string
- comment String
- connector
Definition String - connector
Url String - created
On String - database
Name String - default
Version String - default
Version StringAlias - default
Version StringLocation Uri - default
Version StringName - default
Version StringSource Location Uri - display
Name String - live
Version StringLocation Uri - name String
- owner String
- runtime String
- schema
Name String - status String
- updated
On String
- comment string
- connector
Definition string - connector
Url string - created
On string - database
Name string - default
Version string - default
Version stringAlias - default
Version stringLocation Uri - default
Version stringName - default
Version stringSource Location Uri - display
Name string - live
Version stringLocation Uri - name string
- owner string
- runtime string
- schema
Name string - status string
- updated
On string
- comment str
- connector_
definition str - connector_
url str - created_
on str - database_
name str - default_
version str - default_
version_ stralias - default_
version_ strlocation_ uri - default_
version_ strname - default_
version_ strsource_ location_ uri - display_
name str - live_
version_ strlocation_ uri - name str
- owner str
- runtime str
- schema_
name str - status str
- updated_
on str
- comment String
- connector
Definition String - connector
Url String - created
On String - database
Name String - default
Version String - default
Version StringAlias - default
Version StringLocation Uri - default
Version StringName - default
Version StringSource Location Uri - display
Name String - live
Version StringLocation Uri - name String
- owner String
- runtime String
- schema
Name String - status String
- updated
On String
Import
$ pulumi import snowflake:index/openflowConnector:OpenflowConnector example '"<database_name>"."<schema_name>"."<connector_name>"'
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Snowflake pulumi/pulumi-snowflake
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
snowflakeTerraform Provider.
published on Friday, Sep 11, 2026 by Pulumi