import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Manages a Synapse Linked Service. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as azure from "@pulumi/azure"; * * const example = new azure.core.ResourceGroup("example", { * name: "example", * location: "West Europe", * }); * const exampleAccount = new azure.storage.Account("example", { * name: "example", * resourceGroupName: example.name, * location: example.location, * accountKind: "BlobStorage", * accountTier: "Standard", * accountReplicationType: "LRS", * }); * const exampleDataLakeGen2Filesystem = new azure.storage.DataLakeGen2Filesystem("example", { * name: "example", * storageAccountId: exampleAccount.id, * }); * const exampleWorkspace = new azure.synapse.Workspace("example", { * name: "example", * resourceGroupName: example.name, * location: example.location, * storageDataLakeGen2FilesystemId: exampleDataLakeGen2Filesystem.id, * sqlAdministratorLogin: "sqladminuser", * sqlAdministratorLoginPassword: "H@Sh1CoR3!", * managedVirtualNetworkEnabled: true, * identity: { * type: "SystemAssigned", * }, * }); * const exampleFirewallRule = new azure.synapse.FirewallRule("example", { * name: "allowAll", * synapseWorkspaceId: exampleWorkspace.id, * startIpAddress: "0.0.0.0", * endIpAddress: "255.255.255.255", * }); * const exampleIntegrationRuntimeAzure = new azure.synapse.IntegrationRuntimeAzure("example", { * name: "example", * synapseWorkspaceId: exampleWorkspace.id, * location: example.location, * }); * const exampleLinkedService = new azure.synapse.LinkedService("example", { * name: "example", * synapseWorkspaceId: exampleWorkspace.id, * type: "AzureBlobStorage", * typePropertiesJson: pulumi.interpolate`{ * \"connectionString\": \"${exampleAccount.primaryConnectionString}\" * } * `, * integrationRuntime: { * name: exampleIntegrationRuntimeAzure.name, * }, * }, { * dependsOn: [exampleFirewallRule], * }); * ``` * * ## Import * * Synapse Linked Services can be imported using the `resource id`, e.g. * * ```sh * $ pulumi import azure:synapse/linkedService:LinkedService example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resGroup1/providers/Microsoft.Synapse/workspaces/workspace1/linkedServices/linkedservice1 * ``` */ export declare class LinkedService extends pulumi.CustomResource { /** * Get an existing LinkedService resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: LinkedServiceState, opts?: pulumi.CustomResourceOptions): LinkedService; /** * Returns true if the given object is an instance of LinkedService. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is LinkedService; /** * A map of additional properties to associate with the Synapse Linked Service. */ readonly additionalProperties: pulumi.Output<{ [key: string]: string; } | undefined>; /** * List of tags that can be used for describing the Synapse Linked Service. */ readonly annotations: pulumi.Output; /** * The description for the Synapse Linked Service. */ readonly description: pulumi.Output; /** * A `integrationRuntime` block as defined below. */ readonly integrationRuntime: pulumi.Output; /** * The name which should be used for this Synapse Linked Service. Changing this forces a new Synapse Linked Service to be created. */ readonly name: pulumi.Output; /** * A map of parameters to associate with the Synapse Linked Service. */ readonly parameters: pulumi.Output<{ [key: string]: string; } | undefined>; /** * The Synapse Workspace ID in which to associate the Linked Service with. Changing this forces a new Synapse Linked Service to be created. */ readonly synapseWorkspaceId: pulumi.Output; /** * The type of data stores that will be connected to Synapse. Valid Values include `AmazonMWS`, `AmazonRdsForOracle`, `AmazonRdsForSqlServer`, `AmazonRedshift`, `AmazonS3`, `AzureBatch`. Changing this forces a new resource to be created. * `AzureBlobFS`, `AzureBlobStorage`, `AzureDataExplorer`, `AzureDataLakeAnalytics`, `AzureDataLakeStore`, `AzureDatabricks`, `AzureDatabricksDeltaLake`, `AzureFileStorage`, `AzureFunction`, * `AzureKeyVault`, `AzureML`, `AzureMLService`, `AzureMariaDB`, `AzureMySql`, `AzurePostgreSql`, `AzureSqlDW`, `AzureSqlDatabase`, `AzureSqlMI`, `AzureSearch`, `AzureStorage`, * `AzureTableStorage`, `Cassandra`, `CommonDataServiceForApps`, `Concur`, `CosmosDb`, `CosmosDbMongoDbApi`, `Couchbase`, `CustomDataSource`, `Db2`, `Drill`, * `Dynamics`, `DynamicsAX`, `DynamicsCrm`, `Eloqua`, `FileServer`, `FtpServer`, `GoogleAdWords`, `GoogleBigQuery`, `GoogleCloudStorage`, `Greenplum`, `HBase`, `HDInsight`, * `HDInsightOnDemand`, `HttpServer`, `Hdfs`, `Hive`, `Hubspot`, `Impala`, `Informix`, `Jira`, `LinkedService`, `Magento`, `MariaDB`, `Marketo`, `MicrosoftAccess`, `MongoDb`, * `MongoDbAtlas`, `MongoDbV2`, `MySql`, `Netezza`, `OData`, `Odbc`, `Office365`, `Oracle`, `OracleServiceCloud`, `Paypal`, `Phoenix`, `PostgreSql`, `Presto`, `QuickBooks`, * `Responsys`, `RestService`, `SqlServer`, `Salesforce`, `SalesforceMarketingCloud`, `SalesforceServiceCloud`, `SapBW`, `SapCloudForCustomer`, `SapEcc`, `SapHana`, `SapOpenHub`, * `SapTable`, `ServiceNow`, `Sftp`, `SharePointOnlineList`, `Shopify`, `Snowflake`, `Spark`, `Square`, `Sybase`, `Teradata`, `Vertica`, `Web`, `Xero`, `Zoho`. */ readonly type: pulumi.Output; /** * A JSON object that contains the properties of the Synapse Linked Service. */ readonly typePropertiesJson: pulumi.Output; /** * Create a LinkedService resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: LinkedServiceArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering LinkedService resources. */ export interface LinkedServiceState { /** * A map of additional properties to associate with the Synapse Linked Service. */ additionalProperties?: pulumi.Input<{ [key: string]: pulumi.Input; }>; /** * List of tags that can be used for describing the Synapse Linked Service. */ annotations?: pulumi.Input[]>; /** * The description for the Synapse Linked Service. */ description?: pulumi.Input; /** * A `integrationRuntime` block as defined below. */ integrationRuntime?: pulumi.Input; /** * The name which should be used for this Synapse Linked Service. Changing this forces a new Synapse Linked Service to be created. */ name?: pulumi.Input; /** * A map of parameters to associate with the Synapse Linked Service. */ parameters?: pulumi.Input<{ [key: string]: pulumi.Input; }>; /** * The Synapse Workspace ID in which to associate the Linked Service with. Changing this forces a new Synapse Linked Service to be created. */ synapseWorkspaceId?: pulumi.Input; /** * The type of data stores that will be connected to Synapse. Valid Values include `AmazonMWS`, `AmazonRdsForOracle`, `AmazonRdsForSqlServer`, `AmazonRedshift`, `AmazonS3`, `AzureBatch`. Changing this forces a new resource to be created. * `AzureBlobFS`, `AzureBlobStorage`, `AzureDataExplorer`, `AzureDataLakeAnalytics`, `AzureDataLakeStore`, `AzureDatabricks`, `AzureDatabricksDeltaLake`, `AzureFileStorage`, `AzureFunction`, * `AzureKeyVault`, `AzureML`, `AzureMLService`, `AzureMariaDB`, `AzureMySql`, `AzurePostgreSql`, `AzureSqlDW`, `AzureSqlDatabase`, `AzureSqlMI`, `AzureSearch`, `AzureStorage`, * `AzureTableStorage`, `Cassandra`, `CommonDataServiceForApps`, `Concur`, `CosmosDb`, `CosmosDbMongoDbApi`, `Couchbase`, `CustomDataSource`, `Db2`, `Drill`, * `Dynamics`, `DynamicsAX`, `DynamicsCrm`, `Eloqua`, `FileServer`, `FtpServer`, `GoogleAdWords`, `GoogleBigQuery`, `GoogleCloudStorage`, `Greenplum`, `HBase`, `HDInsight`, * `HDInsightOnDemand`, `HttpServer`, `Hdfs`, `Hive`, `Hubspot`, `Impala`, `Informix`, `Jira`, `LinkedService`, `Magento`, `MariaDB`, `Marketo`, `MicrosoftAccess`, `MongoDb`, * `MongoDbAtlas`, `MongoDbV2`, `MySql`, `Netezza`, `OData`, `Odbc`, `Office365`, `Oracle`, `OracleServiceCloud`, `Paypal`, `Phoenix`, `PostgreSql`, `Presto`, `QuickBooks`, * `Responsys`, `RestService`, `SqlServer`, `Salesforce`, `SalesforceMarketingCloud`, `SalesforceServiceCloud`, `SapBW`, `SapCloudForCustomer`, `SapEcc`, `SapHana`, `SapOpenHub`, * `SapTable`, `ServiceNow`, `Sftp`, `SharePointOnlineList`, `Shopify`, `Snowflake`, `Spark`, `Square`, `Sybase`, `Teradata`, `Vertica`, `Web`, `Xero`, `Zoho`. */ type?: pulumi.Input; /** * A JSON object that contains the properties of the Synapse Linked Service. */ typePropertiesJson?: pulumi.Input; } /** * The set of arguments for constructing a LinkedService resource. */ export interface LinkedServiceArgs { /** * A map of additional properties to associate with the Synapse Linked Service. */ additionalProperties?: pulumi.Input<{ [key: string]: pulumi.Input; }>; /** * List of tags that can be used for describing the Synapse Linked Service. */ annotations?: pulumi.Input[]>; /** * The description for the Synapse Linked Service. */ description?: pulumi.Input; /** * A `integrationRuntime` block as defined below. */ integrationRuntime?: pulumi.Input; /** * The name which should be used for this Synapse Linked Service. Changing this forces a new Synapse Linked Service to be created. */ name?: pulumi.Input; /** * A map of parameters to associate with the Synapse Linked Service. */ parameters?: pulumi.Input<{ [key: string]: pulumi.Input; }>; /** * The Synapse Workspace ID in which to associate the Linked Service with. Changing this forces a new Synapse Linked Service to be created. */ synapseWorkspaceId: pulumi.Input; /** * The type of data stores that will be connected to Synapse. Valid Values include `AmazonMWS`, `AmazonRdsForOracle`, `AmazonRdsForSqlServer`, `AmazonRedshift`, `AmazonS3`, `AzureBatch`. Changing this forces a new resource to be created. * `AzureBlobFS`, `AzureBlobStorage`, `AzureDataExplorer`, `AzureDataLakeAnalytics`, `AzureDataLakeStore`, `AzureDatabricks`, `AzureDatabricksDeltaLake`, `AzureFileStorage`, `AzureFunction`, * `AzureKeyVault`, `AzureML`, `AzureMLService`, `AzureMariaDB`, `AzureMySql`, `AzurePostgreSql`, `AzureSqlDW`, `AzureSqlDatabase`, `AzureSqlMI`, `AzureSearch`, `AzureStorage`, * `AzureTableStorage`, `Cassandra`, `CommonDataServiceForApps`, `Concur`, `CosmosDb`, `CosmosDbMongoDbApi`, `Couchbase`, `CustomDataSource`, `Db2`, `Drill`, * `Dynamics`, `DynamicsAX`, `DynamicsCrm`, `Eloqua`, `FileServer`, `FtpServer`, `GoogleAdWords`, `GoogleBigQuery`, `GoogleCloudStorage`, `Greenplum`, `HBase`, `HDInsight`, * `HDInsightOnDemand`, `HttpServer`, `Hdfs`, `Hive`, `Hubspot`, `Impala`, `Informix`, `Jira`, `LinkedService`, `Magento`, `MariaDB`, `Marketo`, `MicrosoftAccess`, `MongoDb`, * `MongoDbAtlas`, `MongoDbV2`, `MySql`, `Netezza`, `OData`, `Odbc`, `Office365`, `Oracle`, `OracleServiceCloud`, `Paypal`, `Phoenix`, `PostgreSql`, `Presto`, `QuickBooks`, * `Responsys`, `RestService`, `SqlServer`, `Salesforce`, `SalesforceMarketingCloud`, `SalesforceServiceCloud`, `SapBW`, `SapCloudForCustomer`, `SapEcc`, `SapHana`, `SapOpenHub`, * `SapTable`, `ServiceNow`, `Sftp`, `SharePointOnlineList`, `Shopify`, `Snowflake`, `Spark`, `Square`, `Sybase`, `Teradata`, `Vertica`, `Web`, `Xero`, `Zoho`. */ type: pulumi.Input; /** * A JSON object that contains the properties of the Synapse Linked Service. */ typePropertiesJson: pulumi.Input; }