WorkspaceArgs

data class WorkspaceArgs(val bundleId: Output<String>? = null, val directoryId: Output<String>? = null, val rootVolumeEncryptionEnabled: Output<Boolean>? = null, val tags: Output<Map<String, String>>? = null, val userName: Output<String>? = null, val userVolumeEncryptionEnabled: Output<Boolean>? = null, val volumeEncryptionKey: Output<String>? = null, val workspaceProperties: Output<WorkspaceWorkspacePropertiesArgs>? = null) : ConvertibleToJava<WorkspaceArgs>

Provides a workspace in AWS Workspaces Service

NOTE: AWS WorkSpaces service requires workspaces_DefaultRole IAM role to operate normally.

Example Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.workspaces.WorkspacesFunctions;
import com.pulumi.aws.workspaces.inputs.GetBundleArgs;
import com.pulumi.aws.workspaces.Workspace;
import com.pulumi.aws.workspaces.WorkspaceArgs;
import com.pulumi.aws.workspaces.inputs.WorkspaceWorkspacePropertiesArgs;
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 valueWindows10 = WorkspacesFunctions.getBundle(GetBundleArgs.builder()
.bundleId("wsb-bh8rsxt14")
.build());
var example = new Workspace("example", WorkspaceArgs.builder()
.directoryId(aws_workspaces_directory.example().id())
.bundleId(valueWindows10.applyValue(getBundleResult -> getBundleResult.id()))
.userName("john.doe")
.rootVolumeEncryptionEnabled(true)
.userVolumeEncryptionEnabled(true)
.volumeEncryptionKey("alias/aws/workspaces")
.workspaceProperties(WorkspaceWorkspacePropertiesArgs.builder()
.computeTypeName("VALUE")
.userVolumeSizeGib(10)
.rootVolumeSizeGib(80)
.runningMode("AUTO_STOP")
.runningModeAutoStopTimeoutInMinutes(60)
.build())
.tags(Map.of("Department", "IT"))
.build());
}
}

Import

Workspaces can be imported using their ID, e.g.,

$ pulumi import aws:workspaces/workspace:Workspace example ws-9z9zmbkhv

Constructors

Link copied to clipboard
constructor(bundleId: Output<String>? = null, directoryId: Output<String>? = null, rootVolumeEncryptionEnabled: Output<Boolean>? = null, tags: Output<Map<String, String>>? = null, userName: Output<String>? = null, userVolumeEncryptionEnabled: Output<Boolean>? = null, volumeEncryptionKey: Output<String>? = null, workspaceProperties: Output<WorkspaceWorkspacePropertiesArgs>? = null)

Properties

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

The ID of the bundle for the WorkSpace.

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

The ID of the directory for the WorkSpace.

Link copied to clipboard

Indicates whether the data stored on the root volume is encrypted.

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

The tags for the WorkSpace. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

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

The user name of the user for the WorkSpace. This user name must exist in the directory for the WorkSpace.

Link copied to clipboard

Indicates whether the data stored on the user volume is encrypted.

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

The symmetric AWS KMS customer master key (CMK) used to encrypt data stored on your WorkSpace. Amazon WorkSpaces does not support asymmetric CMKs.

Link copied to clipboard

The WorkSpace properties.

Functions

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