CustomDataset

class CustomDataset : KotlinCustomResource

Manages a Dataset inside an Azure Data Factory. This is a generic resource that supports all different Dataset Types.

Example Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.datafactory.Factory;
import com.pulumi.azure.datafactory.FactoryArgs;
import com.pulumi.azure.datafactory.inputs.FactoryIdentityArgs;
import com.pulumi.azure.storage.Account;
import com.pulumi.azure.storage.AccountArgs;
import com.pulumi.azure.datafactory.LinkedCustomService;
import com.pulumi.azure.datafactory.LinkedCustomServiceArgs;
import com.pulumi.azure.storage.Container;
import com.pulumi.azure.storage.ContainerArgs;
import com.pulumi.azure.datafactory.CustomDataset;
import com.pulumi.azure.datafactory.CustomDatasetArgs;
import com.pulumi.azure.datafactory.inputs.CustomDatasetLinkedServiceArgs;
import java.util.List;
import java.util.ArrayList;
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) {
var exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()
.location("West Europe")
.build());
var exampleFactory = new Factory("exampleFactory", FactoryArgs.builder()
.location(exampleResourceGroup.location())
.resourceGroupName(exampleResourceGroup.name())
.identity(FactoryIdentityArgs.builder()
.type("SystemAssigned")
.build())
.build());
var exampleAccount = new Account("exampleAccount", AccountArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.location(exampleResourceGroup.location())
.accountKind("BlobStorage")
.accountTier("Standard")
.accountReplicationType("LRS")
.build());
var exampleLinkedCustomService = new LinkedCustomService("exampleLinkedCustomService", LinkedCustomServiceArgs.builder()
.dataFactoryId(exampleFactory.id())
.type("AzureBlobStorage")
.typePropertiesJson(exampleAccount.primaryConnectionString().applyValue(primaryConnectionString -> """
{
"connectionString":"%s"
}
", primaryConnectionString)))
.build());
var exampleContainer = new Container("exampleContainer", ContainerArgs.builder()
.storageAccountName(exampleAccount.name())
.containerAccessType("private")
.build());
var exampleCustomDataset = new CustomDataset("exampleCustomDataset", CustomDatasetArgs.builder()
.dataFactoryId(exampleFactory.id())
.type("Json")
.linkedService(CustomDatasetLinkedServiceArgs.builder()
.name(exampleLinkedCustomService.name())
.parameters(Map.of("key1", "value1"))
.build())
.typePropertiesJson(exampleContainer.name().applyValue(name -> """
{
"location": {
"container":"%s",
"fileName":"foo.txt",
"folderPath": "foo/bar/",
"type":"AzureBlobStorageLocation"
},
"encodingName":"UTF-8"
}
", name)))
.description("test description")
.annotations(
"test1",
"test2",
"test3")
.folder("testFolder")
.parameters(Map.ofEntries(
Map.entry("foo", "test1"),
Map.entry("Bar", "Test2")
))
.additionalProperties(Map.ofEntries(
Map.entry("foo", "test1"),
Map.entry("bar", "test2")
))
.schemaJson("""
{
"type": "object",
"properties": {
"name": {
"type": "object",
"properties": {
"firstName": {
"type": "string"
},
"lastName": {
"type": "string"
}
}
},
"age": {
"type": "integer"
}
}
}
""")
.build());
}
}

Import

Data Factory Datasets can be imported using the resource id, e.g.

$ pulumi import azure:datafactory/customDataset:CustomDataset example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/example/providers/Microsoft.DataFactory/factories/example/datasets/example

Properties

Link copied to clipboard

A map of additional properties to associate with the Data Factory Dataset.

Link copied to clipboard
val annotations: Output<List<String>>?

List of tags that can be used for describing the Data Factory Dataset.

Link copied to clipboard
val dataFactoryId: Output<String>

The Data Factory ID in which to associate the Dataset with. Changing this forces a new resource.

Link copied to clipboard
val description: Output<String>?

The description for the Data Factory Dataset.

Link copied to clipboard
val folder: Output<String>?

The folder that this Dataset is in. If not specified, the Dataset will appear at the root level.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard

A linked_service block as defined below.

Link copied to clipboard
val name: Output<String>

Specifies the name of the Data Factory Dataset. Changing this forces a new resource to be created. Must be globally unique. See the Microsoft documentation for all restrictions.

Link copied to clipboard
val parameters: Output<Map<String, String>>?

A map of parameters to associate with the Data Factory Dataset.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val schemaJson: Output<String>?

A JSON object that contains the schema of the Data Factory Dataset.

Link copied to clipboard
val type: Output<String>

The type of dataset that will be associated with Data Factory. Changing this forces a new resource to be created.

Link copied to clipboard

A JSON object that contains the properties of the Data Factory Dataset.

Link copied to clipboard
val urn: Output<String>