This page documents the language specification for the aws package. If you're looking for help working with the inputs, outputs, or functions of aws resources in a Pulumi program, please see the resource documentation for examples and API reference.

workspaces

This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the pulumi/pulumi-aws repo; however, if that doesn’t turn up anything, please consult the source terraform-providers/terraform-provider-aws repo.

class pulumi_aws.workspaces.AwaitableGetBundleResult(bundle_id=None, compute_types=None, description=None, id=None, name=None, owner=None, root_storages=None, user_storages=None)
class pulumi_aws.workspaces.Directory(resource_name, opts=None, directory_id=None, self_service_permissions=None, subnet_ids=None, tags=None, __props__=None, __name__=None, __opts__=None)

Provides a directory registration in AWS WorkSpaces Service

import pulumi
import pulumi_aws as aws

main_vpc = aws.ec2.Vpc("mainVpc", cidr_block="10.0.0.0/16")
private_a = aws.ec2.Subnet("private-a",
    availability_zone="us-east-1a",
    cidr_block="10.0.0.0/24",
    vpc_id=main_vpc.id)
private_b = aws.ec2.Subnet("private-b",
    availability_zone="us-east-1b",
    cidr_block="10.0.1.0/24",
    vpc_id=main_vpc.id)
main_directory = aws.directoryservice.Directory("mainDirectory",
    password="#S1ncerely",
    size="Small",
    vpc_settings={
        "subnet_ids": [
            private_a.id,
            private_b.id,
        ],
        "vpc_id": main_vpc.id,
    })
main_workspaces_directory_directory = aws.workspaces.Directory("mainWorkspaces/directoryDirectory",
    directory_id=main_directory.id,
    self_service_permissions={
        "increaseVolumeSize": True,
        "rebuildWorkspace": True,
    })
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • directory_id (pulumi.Input[str]) – The directory identifier for registration in WorkSpaces service.

  • self_service_permissions (pulumi.Input[dict]) – The permissions to enable or disable self-service capabilities.

  • subnet_ids (pulumi.Input[list]) – The identifiers of the subnets where the directory resides.

  • tags (pulumi.Input[dict]) – A map of tags assigned to the WorkSpaces directory.

The self_service_permissions object supports the following:

  • changeComputeType (pulumi.Input[bool]) - Whether WorkSpaces directory users can change the compute type (bundle) for their workspace. Default false.

  • increaseVolumeSize (pulumi.Input[bool]) - Whether WorkSpaces directory users can increase the volume size of the drives on their workspace. Default false.

  • rebuildWorkspace (pulumi.Input[bool]) - Whether WorkSpaces directory users can rebuild the operating system of a workspace to its original state. Default false.

  • restartWorkspace (pulumi.Input[bool]) - Whether WorkSpaces directory users can restart their workspace. Default true.

  • switchRunningMode (pulumi.Input[bool]) - Whether WorkSpaces directory users can switch the running mode of their workspace. Default false.

alias: pulumi.Output[str] = None

The directory alias.

customer_user_name: pulumi.Output[str] = None

The user name for the service account.

directory_id: pulumi.Output[str] = None

The directory identifier for registration in WorkSpaces service.

directory_name: pulumi.Output[str] = None

The name of the directory.

directory_type: pulumi.Output[str] = None

The directory type.

dns_ip_addresses: pulumi.Output[list] = None

The IP addresses of the DNS servers for the directory.

iam_role_id: pulumi.Output[str] = None

The identifier of the IAM role. This is the role that allows Amazon WorkSpaces to make calls to other services, such as Amazon EC2, on your behalf.

ip_group_ids: pulumi.Output[list] = None

The identifiers of the IP access control groups associated with the directory.

registration_code: pulumi.Output[str] = None

The registration code for the directory. This is the code that users enter in their Amazon WorkSpaces client application to connect to the directory.

self_service_permissions: pulumi.Output[dict] = None

The permissions to enable or disable self-service capabilities.

  • changeComputeType (bool) - Whether WorkSpaces directory users can change the compute type (bundle) for their workspace. Default false.

  • increaseVolumeSize (bool) - Whether WorkSpaces directory users can increase the volume size of the drives on their workspace. Default false.

  • rebuildWorkspace (bool) - Whether WorkSpaces directory users can rebuild the operating system of a workspace to its original state. Default false.

  • restartWorkspace (bool) - Whether WorkSpaces directory users can restart their workspace. Default true.

  • switchRunningMode (bool) - Whether WorkSpaces directory users can switch the running mode of their workspace. Default false.

subnet_ids: pulumi.Output[list] = None

The identifiers of the subnets where the directory resides.

tags: pulumi.Output[dict] = None

A map of tags assigned to the WorkSpaces directory.

workspace_security_group_id: pulumi.Output[str] = None

The identifier of the security group that is assigned to new WorkSpaces.

static get(resource_name, id, opts=None, alias=None, customer_user_name=None, directory_id=None, directory_name=None, directory_type=None, dns_ip_addresses=None, iam_role_id=None, ip_group_ids=None, registration_code=None, self_service_permissions=None, subnet_ids=None, tags=None, workspace_security_group_id=None)

Get an existing Directory resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • alias (pulumi.Input[str]) – The directory alias.

  • customer_user_name (pulumi.Input[str]) – The user name for the service account.

  • directory_id (pulumi.Input[str]) – The directory identifier for registration in WorkSpaces service.

  • directory_name (pulumi.Input[str]) – The name of the directory.

  • directory_type (pulumi.Input[str]) – The directory type.

  • dns_ip_addresses (pulumi.Input[list]) – The IP addresses of the DNS servers for the directory.

  • iam_role_id (pulumi.Input[str]) – The identifier of the IAM role. This is the role that allows Amazon WorkSpaces to make calls to other services, such as Amazon EC2, on your behalf.

  • ip_group_ids (pulumi.Input[list]) – The identifiers of the IP access control groups associated with the directory.

  • registration_code (pulumi.Input[str]) – The registration code for the directory. This is the code that users enter in their Amazon WorkSpaces client application to connect to the directory.

  • self_service_permissions (pulumi.Input[dict]) – The permissions to enable or disable self-service capabilities.

  • subnet_ids (pulumi.Input[list]) – The identifiers of the subnets where the directory resides.

  • tags (pulumi.Input[dict]) – A map of tags assigned to the WorkSpaces directory.

  • workspace_security_group_id (pulumi.Input[str]) – The identifier of the security group that is assigned to new WorkSpaces.

The self_service_permissions object supports the following:

  • changeComputeType (pulumi.Input[bool]) - Whether WorkSpaces directory users can change the compute type (bundle) for their workspace. Default false.

  • increaseVolumeSize (pulumi.Input[bool]) - Whether WorkSpaces directory users can increase the volume size of the drives on their workspace. Default false.

  • rebuildWorkspace (pulumi.Input[bool]) - Whether WorkSpaces directory users can rebuild the operating system of a workspace to its original state. Default false.

  • restartWorkspace (pulumi.Input[bool]) - Whether WorkSpaces directory users can restart their workspace. Default true.

  • switchRunningMode (pulumi.Input[bool]) - Whether WorkSpaces directory users can switch the running mode of their workspace. Default false.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_aws.workspaces.GetBundleResult(bundle_id=None, compute_types=None, description=None, id=None, name=None, owner=None, root_storages=None, user_storages=None)

A collection of values returned by getBundle.

bundle_id = None

The ID of the bundle.

compute_types = None

The compute type. See supported fields below.

description = None

The description of the bundle.

id = None

The provider-assigned unique ID for this managed resource.

name = None

The name of the compute type.

owner = None

The owner of the bundle.

root_storages = None

The root volume. See supported fields below.

user_storages = None

The user storage. See supported fields below.

class pulumi_aws.workspaces.IpGroup(resource_name, opts=None, description=None, name=None, rules=None, tags=None, __props__=None, __name__=None, __opts__=None)

Provides an IP access control group in AWS WorkSpaces Service

import pulumi
import pulumi_aws as aws

contractors = aws.workspaces.IpGroup("contractors", description="Contractors IP access control group")
Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • description (pulumi.Input[str]) – The description.

  • name (pulumi.Input[str]) – The name of the IP group.

  • rules (pulumi.Input[list]) – One or more pairs specifying the IP group rule (in CIDR format) from which web requests originate.

The rules object supports the following:

  • description (pulumi.Input[str]) - The description.

  • source (pulumi.Input[str]) - The IP address range, in CIDR notation, e.g. 10.0.0.0/16

description: pulumi.Output[str] = None

The description.

name: pulumi.Output[str] = None

The name of the IP group.

rules: pulumi.Output[list] = None

One or more pairs specifying the IP group rule (in CIDR format) from which web requests originate.

  • description (str) - The description.

  • source (str) - The IP address range, in CIDR notation, e.g. 10.0.0.0/16

static get(resource_name, id, opts=None, description=None, name=None, rules=None, tags=None)

Get an existing IpGroup resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • description (pulumi.Input[str]) – The description.

  • name (pulumi.Input[str]) – The name of the IP group.

  • rules (pulumi.Input[list]) – One or more pairs specifying the IP group rule (in CIDR format) from which web requests originate.

The rules object supports the following:

  • description (pulumi.Input[str]) - The description.

  • source (pulumi.Input[str]) - The IP address range, in CIDR notation, e.g. 10.0.0.0/16

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

class pulumi_aws.workspaces.Workspace(resource_name, opts=None, bundle_id=None, directory_id=None, root_volume_encryption_enabled=None, tags=None, user_name=None, user_volume_encryption_enabled=None, volume_encryption_key=None, workspace_properties=None, __props__=None, __name__=None, __opts__=None)

Provides a workspace in AWS Workspaces Service

NOTE: During deletion of an workspaces.Workspace resource, the service role workspaces_DefaultRole must be attached to the policy arn:aws:iam::aws:policy/AmazonWorkSpacesServiceAccess, or it will leak the ENI that the Workspaces service creates for the Workspace.

Parameters
  • resource_name (str) – The name of the resource.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • bundle_id (pulumi.Input[str]) – The ID of the bundle for the WorkSpace.

  • directory_id (pulumi.Input[str]) – The ID of the directory for the WorkSpace.

  • root_volume_encryption_enabled (pulumi.Input[bool]) – Indicates whether the data stored on the root volume is encrypted.

  • tags (pulumi.Input[dict]) – The tags for the WorkSpace.

  • user_name (pulumi.Input[str]) – The user name of the user for the WorkSpace. This user name must exist in the directory for the WorkSpace.

  • user_volume_encryption_enabled (pulumi.Input[bool]) – Indicates whether the data stored on the user volume is encrypted.

  • volume_encryption_key (pulumi.Input[str]) – The symmetric AWS KMS customer master key (CMK) used to encrypt data stored on your WorkSpace. Amazon WorkSpaces does not support asymmetric CMKs.

  • workspace_properties (pulumi.Input[dict]) – The WorkSpace properties.

The workspace_properties object supports the following:

  • computeTypeName (pulumi.Input[str]) - The compute type. For more information, see Amazon WorkSpaces Bundles. Valid values are VALUE, STANDARD, PERFORMANCE, POWER, GRAPHICS, POWERPRO and GRAPHICSPRO.

  • rootVolumeSizeGib (pulumi.Input[float]) - The size of the root volume.

  • runningMode (pulumi.Input[str]) - The running mode. For more information, see Manage the WorkSpace Running Mode. Valid values are AUTO_STOP and ALWAYS_ON.

  • runningModeAutoStopTimeoutInMinutes (pulumi.Input[float]) - The time after a user logs off when WorkSpaces are automatically stopped. Configured in 60-minute intervals.

  • userVolumeSizeGib (pulumi.Input[float]) - The size of the user storage.

bundle_id: pulumi.Output[str] = None

The ID of the bundle for the WorkSpace.

computer_name: pulumi.Output[str] = None

The name of the WorkSpace, as seen by the operating system.

directory_id: pulumi.Output[str] = None

The ID of the directory for the WorkSpace.

ip_address: pulumi.Output[str] = None

The IP address of the WorkSpace.

root_volume_encryption_enabled: pulumi.Output[bool] = None

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

state: pulumi.Output[str] = None

The operational state of the WorkSpace.

tags: pulumi.Output[dict] = None

The tags for the WorkSpace.

user_name: pulumi.Output[str] = None

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

user_volume_encryption_enabled: pulumi.Output[bool] = None

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

volume_encryption_key: pulumi.Output[str] = None

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

workspace_properties: pulumi.Output[dict] = None

The WorkSpace properties.

  • computeTypeName (str) - The compute type. For more information, see Amazon WorkSpaces Bundles. Valid values are VALUE, STANDARD, PERFORMANCE, POWER, GRAPHICS, POWERPRO and GRAPHICSPRO.

  • rootVolumeSizeGib (float) - The size of the root volume.

  • runningMode (str) - The running mode. For more information, see Manage the WorkSpace Running Mode. Valid values are AUTO_STOP and ALWAYS_ON.

  • runningModeAutoStopTimeoutInMinutes (float) - The time after a user logs off when WorkSpaces are automatically stopped. Configured in 60-minute intervals.

  • userVolumeSizeGib (float) - The size of the user storage.

static get(resource_name, id, opts=None, bundle_id=None, computer_name=None, directory_id=None, ip_address=None, root_volume_encryption_enabled=None, state=None, tags=None, user_name=None, user_volume_encryption_enabled=None, volume_encryption_key=None, workspace_properties=None)

Get an existing Workspace resource’s state with the given name, id, and optional extra properties used to qualify the lookup.

Parameters
  • resource_name (str) – The unique name of the resulting resource.

  • id (str) – The unique provider ID of the resource to lookup.

  • opts (pulumi.ResourceOptions) – Options for the resource.

  • bundle_id (pulumi.Input[str]) – The ID of the bundle for the WorkSpace.

  • computer_name (pulumi.Input[str]) – The name of the WorkSpace, as seen by the operating system.

  • directory_id (pulumi.Input[str]) – The ID of the directory for the WorkSpace.

  • ip_address (pulumi.Input[str]) – The IP address of the WorkSpace.

  • root_volume_encryption_enabled (pulumi.Input[bool]) – Indicates whether the data stored on the root volume is encrypted.

  • state (pulumi.Input[str]) – The operational state of the WorkSpace.

  • tags (pulumi.Input[dict]) – The tags for the WorkSpace.

  • user_name (pulumi.Input[str]) – The user name of the user for the WorkSpace. This user name must exist in the directory for the WorkSpace.

  • user_volume_encryption_enabled (pulumi.Input[bool]) – Indicates whether the data stored on the user volume is encrypted.

  • volume_encryption_key (pulumi.Input[str]) – The symmetric AWS KMS customer master key (CMK) used to encrypt data stored on your WorkSpace. Amazon WorkSpaces does not support asymmetric CMKs.

  • workspace_properties (pulumi.Input[dict]) – The WorkSpace properties.

The workspace_properties object supports the following:

  • computeTypeName (pulumi.Input[str]) - The compute type. For more information, see Amazon WorkSpaces Bundles. Valid values are VALUE, STANDARD, PERFORMANCE, POWER, GRAPHICS, POWERPRO and GRAPHICSPRO.

  • rootVolumeSizeGib (pulumi.Input[float]) - The size of the root volume.

  • runningMode (pulumi.Input[str]) - The running mode. For more information, see Manage the WorkSpace Running Mode. Valid values are AUTO_STOP and ALWAYS_ON.

  • runningModeAutoStopTimeoutInMinutes (pulumi.Input[float]) - The time after a user logs off when WorkSpaces are automatically stopped. Configured in 60-minute intervals.

  • userVolumeSizeGib (pulumi.Input[float]) - The size of the user storage.

translate_output_property(prop)

Provides subclasses of Resource an opportunity to translate names of output properties into a format of their choosing before writing those properties to the resource object.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

translate_input_property(prop)

Provides subclasses of Resource an opportunity to translate names of input properties into a format of their choosing before sending those properties to the Pulumi engine.

Parameters

prop (str) – A property name.

Returns

A potentially transformed property name.

Return type

str

pulumi_aws.workspaces.get_bundle(bundle_id=None, name=None, owner=None, opts=None)

Use this data source to get information about a WorkSpaces Bundle.

import pulumi
import pulumi_aws as aws

example = aws.workspaces.get_bundle(name="Value with Windows 10 and Office 2016",
    owner="AMAZON")
Parameters
  • bundle_id (str) – The ID of the bundle.

  • name (str) – The name of the bundle. You cannot combine this parameter with bundle_id.

  • owner (str) – The owner of the bundles. You have to leave it blank for own bundles. You cannot combine this parameter with bundle_id.