WorkspaceDatasetArgs

data class WorkspaceDatasetArgs(val accessibility: Output<String>? = null, val dataSourceType: Output<String>? = null, val dataType: Output<String>? = null, val datasetName: Output<String>? = null, val description: Output<String>? = null, val labels: Output<List<WorkspaceDatasetLabelArgs>>? = null, val options: Output<String>? = null, val property: Output<String>? = null, val sourceId: Output<String>? = null, val sourceType: Output<String>? = null, val uri: Output<String>? = null, val userId: Output<String>? = null, val workspaceId: Output<String>? = null) : ConvertibleToJava<WorkspaceDatasetArgs>

Provides a PAI Workspace Dataset resource. For information about PAI Workspace Dataset and how to use it, see What is Dataset.

NOTE: Available since v1.236.0.

Example Usage

Basic Usage

import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const config = new pulumi.Config();
const name = config.get("name") || "terraform_example";
const defaultWorkspace = new alicloud.pai.WorkspaceWorkspace("defaultWorkspace", {
description: name,
displayName: name,
workspaceName: name,
envTypes: ["prod"],
});
const _default = new alicloud.pai.WorkspaceDataset("default", {
options: JSON.stringify({
mountPath: "/mnt/data/",
}),
description: name,
accessibility: "PRIVATE",
datasetName: name,
dataSourceType: "NAS",
sourceType: "ITAG",
workspaceId: defaultWorkspace.id,
dataType: "PIC",
property: "DIRECTORY",
uri: "nas://086b649545.cn-hangzhou/",
sourceId: "d-xxxxx_v1",
userId: "1511928242963727",
});
import pulumi
import json
import pulumi_alicloud as alicloud
config = pulumi.Config()
name = config.get("name")
if name is None:
name = "terraform_example"
default_workspace = alicloud.pai.WorkspaceWorkspace("defaultWorkspace",
description=name,
display_name=name,
workspace_name=name,
env_types=["prod"])
default = alicloud.pai.WorkspaceDataset("default",
options=json.dumps({
"mountPath": "/mnt/data/",
}),
description=name,
accessibility="PRIVATE",
dataset_name=name,
data_source_type="NAS",
source_type="ITAG",
workspace_id=default_workspace.id,
data_type="PIC",
property="DIRECTORY",
uri="nas://086b649545.cn-hangzhou/",
source_id="d-xxxxx_v1",
user_id="1511928242963727")
using System.Collections.Generic;
using System.Linq;
using System.Text.Json;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var config = new Config();
var name = config.Get("name") ?? "terraform_example";
var defaultWorkspace = new AliCloud.Pai.WorkspaceWorkspace("defaultWorkspace", new()
{
Description = name,
DisplayName = name,
WorkspaceName = name,
EnvTypes = new[]
{
"prod",
},
});
var @default = new AliCloud.Pai.WorkspaceDataset("default", new()
{
Options = JsonSerializer.Serialize(new Dictionary<string, object?>
{
["mountPath"] = "/mnt/data/",
}),
Description = name,
Accessibility = "PRIVATE",
DatasetName = name,
DataSourceType = "NAS",
SourceType = "ITAG",
WorkspaceId = defaultWorkspace.Id,
DataType = "PIC",
Property = "DIRECTORY",
Uri = "nas://086b649545.cn-hangzhou/",
SourceId = "d-xxxxx_v1",
UserId = "1511928242963727",
});
});
package main
import (
"encoding/json"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/pai"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cfg := config.New(ctx, "")
name := "terraform_example"
if param := cfg.Get("name"); param != "" {
name = param
}
defaultWorkspace, err := pai.NewWorkspaceWorkspace(ctx, "defaultWorkspace", &pai.WorkspaceWorkspaceArgs{
Description: pulumi.String(name),
DisplayName: pulumi.String(name),
WorkspaceName: pulumi.String(name),
EnvTypes: pulumi.StringArray{
pulumi.String("prod"),
},
})
if err != nil {
return err
}
tmpJSON0, err := json.Marshal(map[string]interface{}{
"mountPath": "/mnt/data/",
})
if err != nil {
return err
}
json0 := string(tmpJSON0)
_, err = pai.NewWorkspaceDataset(ctx, "default", &pai.WorkspaceDatasetArgs{
Options: pulumi.String(json0),
Description: pulumi.String(name),
Accessibility: pulumi.String("PRIVATE"),
DatasetName: pulumi.String(name),
DataSourceType: pulumi.String("NAS"),
SourceType: pulumi.String("ITAG"),
WorkspaceId: defaultWorkspace.ID(),
DataType: pulumi.String("PIC"),
Property: pulumi.String("DIRECTORY"),
Uri: pulumi.String("nas://086b649545.cn-hangzhou/"),
SourceId: pulumi.String("d-xxxxx_v1"),
UserId: pulumi.String("1511928242963727"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.pai.WorkspaceWorkspace;
import com.pulumi.alicloud.pai.WorkspaceWorkspaceArgs;
import com.pulumi.alicloud.pai.WorkspaceDataset;
import com.pulumi.alicloud.pai.WorkspaceDatasetArgs;
import static com.pulumi.codegen.internal.Serialization.*;
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) {
final var config = ctx.config();
final var name = config.get("name").orElse("terraform_example");
var defaultWorkspace = new WorkspaceWorkspace("defaultWorkspace", WorkspaceWorkspaceArgs.builder()
.description(name)
.displayName(name)
.workspaceName(name)
.envTypes("prod")
.build());
var default_ = new WorkspaceDataset("default", WorkspaceDatasetArgs.builder()
.options(serializeJson(
jsonObject(
jsonProperty("mountPath", "/mnt/data/")
)))
.description(name)
.accessibility("PRIVATE")
.datasetName(name)
.dataSourceType("NAS")
.sourceType("ITAG")
.workspaceId(defaultWorkspace.id())
.dataType("PIC")
.property("DIRECTORY")
.uri("nas://086b649545.cn-hangzhou/")
.sourceId("d-xxxxx_v1")
.userId("1511928242963727")
.build());
}
}
configuration:
name:
type: string
default: terraform_example
resources:
defaultWorkspace:
type: alicloud:pai:WorkspaceWorkspace
properties:
description: ${name}
displayName: ${name}
workspaceName: ${name}
envTypes:
- prod
default:
type: alicloud:pai:WorkspaceDataset
properties:
options:
fn::toJSON:
mountPath: /mnt/data/
description: ${name}
accessibility: PRIVATE
datasetName: ${name}
dataSourceType: NAS
sourceType: ITAG
workspaceId: ${defaultWorkspace.id}
dataType: PIC
property: DIRECTORY
uri: nas://086b649545.cn-hangzhou/
sourceId: d-xxxxx_v1
userId: '1511928242963727'

Import

PAI Workspace Dataset can be imported using the id, e.g.

$ pulumi import alicloud:pai/workspaceDataset:WorkspaceDataset example <id>

Constructors

Link copied to clipboard
constructor(accessibility: Output<String>? = null, dataSourceType: Output<String>? = null, dataType: Output<String>? = null, datasetName: Output<String>? = null, description: Output<String>? = null, labels: Output<List<WorkspaceDatasetLabelArgs>>? = null, options: Output<String>? = null, property: Output<String>? = null, sourceId: Output<String>? = null, sourceType: Output<String>? = null, uri: Output<String>? = null, userId: Output<String>? = null, workspaceId: Output<String>? = null)

Properties

Link copied to clipboard
val accessibility: Output<String>? = null

Workspace visibility. The following values are supported:

Link copied to clipboard
val datasetName: Output<String>? = null

The name of the dataset. The naming rules are as follows:

Link copied to clipboard
val dataSourceType: Output<String>? = null

The data source type. The following values are supported:

Link copied to clipboard
val dataType: Output<String>? = null

The dataset type. The default value is COMMON. The following values are supported:

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

Custom descriptions of datasets to distinguish between different datasets.

Link copied to clipboard
val labels: Output<List<WorkspaceDatasetLabelArgs>>? = null

Labels added to the dataset See labels below.

Link copied to clipboard
val options: Output<String>? = null

The extended field, which is of the JsonString type. When DLC uses a dataset, you can specify the default Mount path for the dataset by configuring the mountPath field.

Link copied to clipboard
val property: Output<String>? = null

The properties of the dataset. The following values are supported:

Link copied to clipboard
val sourceId: Output<String>? = null

The data source ID.

Link copied to clipboard
val sourceType: Output<String>? = null

The data source type. The default value is USER. The following values are supported:

Link copied to clipboard
val uri: Output<String>? = null

The Uri configuration sample is as follows:

Link copied to clipboard
val userId: Output<String>? = null

The ID of the dataset owner.

Link copied to clipboard
val workspaceId: Output<String>? = null

The ID of the workspace where the dataset is located. For details about how to obtain the workspace ID, see ListWorkspaces. If this parameter is not configured, the default workspace is used. If the default workspace does not exist, an error is reported.

Functions

Link copied to clipboard
open override fun toJava(): WorkspaceDatasetArgs