com.pulumi.aws.appstream.Fleet Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of aws Show documentation
Show all versions of aws Show documentation
A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.
The newest version!
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.aws.appstream;
import com.pulumi.aws.Utilities;
import com.pulumi.aws.appstream.FleetArgs;
import com.pulumi.aws.appstream.inputs.FleetState;
import com.pulumi.aws.appstream.outputs.FleetComputeCapacity;
import com.pulumi.aws.appstream.outputs.FleetDomainJoinInfo;
import com.pulumi.aws.appstream.outputs.FleetVpcConfig;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Export;
import com.pulumi.core.annotations.ResourceType;
import com.pulumi.core.internal.Codegen;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.Map;
import java.util.Optional;
import javax.annotation.Nullable;
/**
* Provides an AppStream fleet.
*
* ## Example Usage
*
* <!--Start PulumiCodeChooser -->
*
* {@code
* package generated_program;
*
* import com.pulumi.Context;
* import com.pulumi.Pulumi;
* import com.pulumi.core.Output;
* import com.pulumi.aws.appstream.Fleet;
* import com.pulumi.aws.appstream.FleetArgs;
* import com.pulumi.aws.appstream.inputs.FleetComputeCapacityArgs;
* import com.pulumi.aws.appstream.inputs.FleetVpcConfigArgs;
* 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 testFleet = new Fleet("testFleet", FleetArgs.builder()
* .name("test-fleet")
* .computeCapacity(FleetComputeCapacityArgs.builder()
* .desiredInstances(1)
* .build())
* .description("test fleet")
* .idleDisconnectTimeoutInSeconds(60)
* .displayName("test-fleet")
* .enableDefaultInternetAccess(false)
* .fleetType("ON_DEMAND")
* .imageName("Amazon-AppStream2-Sample-Image-03-11-2023")
* .instanceType("stream.standard.large")
* .maxUserDurationInSeconds(600)
* .vpcConfig(FleetVpcConfigArgs.builder()
* .subnetIds("subnet-06e9b13400c225127")
* .build())
* .tags(Map.of("TagName", "tag-value"))
* .build());
*
* }
* }
* }
*
* <!--End PulumiCodeChooser -->
*
* ## Import
*
* Using `pulumi import`, import `aws_appstream_fleet` using the id. For example:
*
* ```sh
* $ pulumi import aws:appstream/fleet:Fleet example fleetNameExample
* ```
*
*/
@ResourceType(type="aws:appstream/fleet:Fleet")
public class Fleet extends com.pulumi.resources.CustomResource {
/**
* ARN of the appstream fleet.
*
*/
@Export(name="arn", refs={String.class}, tree="[0]")
private Output arn;
/**
* @return ARN of the appstream fleet.
*
*/
public Output arn() {
return this.arn;
}
/**
* Configuration block for the desired capacity of the fleet. See below.
*
*/
@Export(name="computeCapacity", refs={FleetComputeCapacity.class}, tree="[0]")
private Output computeCapacity;
/**
* @return Configuration block for the desired capacity of the fleet. See below.
*
*/
public Output computeCapacity() {
return this.computeCapacity;
}
/**
* Date and time, in UTC and extended RFC 3339 format, when the fleet was created.
*
*/
@Export(name="createdTime", refs={String.class}, tree="[0]")
private Output createdTime;
/**
* @return Date and time, in UTC and extended RFC 3339 format, when the fleet was created.
*
*/
public Output createdTime() {
return this.createdTime;
}
/**
* Description to display.
*
*/
@Export(name="description", refs={String.class}, tree="[0]")
private Output description;
/**
* @return Description to display.
*
*/
public Output description() {
return this.description;
}
/**
* Amount of time that a streaming session remains active after users disconnect.
*
*/
@Export(name="disconnectTimeoutInSeconds", refs={Integer.class}, tree="[0]")
private Output disconnectTimeoutInSeconds;
/**
* @return Amount of time that a streaming session remains active after users disconnect.
*
*/
public Output disconnectTimeoutInSeconds() {
return this.disconnectTimeoutInSeconds;
}
/**
* Human-readable friendly name for the AppStream fleet.
*
*/
@Export(name="displayName", refs={String.class}, tree="[0]")
private Output displayName;
/**
* @return Human-readable friendly name for the AppStream fleet.
*
*/
public Output displayName() {
return this.displayName;
}
/**
* Configuration block for the name of the directory and organizational unit (OU) to use to join the fleet to a Microsoft Active Directory domain. See below.
*
*/
@Export(name="domainJoinInfo", refs={FleetDomainJoinInfo.class}, tree="[0]")
private Output domainJoinInfo;
/**
* @return Configuration block for the name of the directory and organizational unit (OU) to use to join the fleet to a Microsoft Active Directory domain. See below.
*
*/
public Output domainJoinInfo() {
return this.domainJoinInfo;
}
/**
* Enables or disables default internet access for the fleet.
*
*/
@Export(name="enableDefaultInternetAccess", refs={Boolean.class}, tree="[0]")
private Output enableDefaultInternetAccess;
/**
* @return Enables or disables default internet access for the fleet.
*
*/
public Output enableDefaultInternetAccess() {
return this.enableDefaultInternetAccess;
}
/**
* Fleet type. Valid values are: `ON_DEMAND`, `ALWAYS_ON`
*
*/
@Export(name="fleetType", refs={String.class}, tree="[0]")
private Output fleetType;
/**
* @return Fleet type. Valid values are: `ON_DEMAND`, `ALWAYS_ON`
*
*/
public Output fleetType() {
return this.fleetType;
}
/**
* ARN of the IAM role to apply to the fleet.
*
*/
@Export(name="iamRoleArn", refs={String.class}, tree="[0]")
private Output iamRoleArn;
/**
* @return ARN of the IAM role to apply to the fleet.
*
*/
public Output iamRoleArn() {
return this.iamRoleArn;
}
/**
* Amount of time that users can be idle (inactive) before they are disconnected from their streaming session and the `disconnect_timeout_in_seconds` time interval begins. Defaults to `0`. Valid value is between `60` and ` 3600 `seconds.
*
*/
@Export(name="idleDisconnectTimeoutInSeconds", refs={Integer.class}, tree="[0]")
private Output* @Nullable */ Integer> idleDisconnectTimeoutInSeconds;
/**
* @return Amount of time that users can be idle (inactive) before they are disconnected from their streaming session and the `disconnect_timeout_in_seconds` time interval begins. Defaults to `0`. Valid value is between `60` and ` 3600 `seconds.
*
*/
public Output> idleDisconnectTimeoutInSeconds() {
return Codegen.optional(this.idleDisconnectTimeoutInSeconds);
}
/**
* ARN of the public, private, or shared image to use.
*
*/
@Export(name="imageArn", refs={String.class}, tree="[0]")
private Output imageArn;
/**
* @return ARN of the public, private, or shared image to use.
*
*/
public Output imageArn() {
return this.imageArn;
}
/**
* Name of the image used to create the fleet.
*
*/
@Export(name="imageName", refs={String.class}, tree="[0]")
private Output imageName;
/**
* @return Name of the image used to create the fleet.
*
*/
public Output imageName() {
return this.imageName;
}
/**
* Instance type to use when launching fleet instances.
*
*/
@Export(name="instanceType", refs={String.class}, tree="[0]")
private Output instanceType;
/**
* @return Instance type to use when launching fleet instances.
*
*/
public Output instanceType() {
return this.instanceType;
}
/**
* The maximum number of user sessions on an instance. This only applies to multi-session fleets.
*
*/
@Export(name="maxSessionsPerInstance", refs={Integer.class}, tree="[0]")
private Output* @Nullable */ Integer> maxSessionsPerInstance;
/**
* @return The maximum number of user sessions on an instance. This only applies to multi-session fleets.
*
*/
public Output> maxSessionsPerInstance() {
return Codegen.optional(this.maxSessionsPerInstance);
}
/**
* Maximum amount of time that a streaming session can remain active, in seconds.
*
*/
@Export(name="maxUserDurationInSeconds", refs={Integer.class}, tree="[0]")
private Output maxUserDurationInSeconds;
/**
* @return Maximum amount of time that a streaming session can remain active, in seconds.
*
*/
public Output maxUserDurationInSeconds() {
return this.maxUserDurationInSeconds;
}
/**
* Unique name for the fleet.
*
* The following arguments are optional:
*
*/
@Export(name="name", refs={String.class}, tree="[0]")
private Output name;
/**
* @return Unique name for the fleet.
*
* The following arguments are optional:
*
*/
public Output name() {
return this.name;
}
/**
* State of the fleet. Can be `STARTING`, `RUNNING`, `STOPPING` or `STOPPED`
*
*/
@Export(name="state", refs={String.class}, tree="[0]")
private Output state;
/**
* @return State of the fleet. Can be `STARTING`, `RUNNING`, `STOPPING` or `STOPPED`
*
*/
public Output state() {
return this.state;
}
/**
* AppStream 2.0 view that is displayed to your users when they stream from the fleet. When `APP` is specified, only the windows of applications opened by users display. When `DESKTOP` is specified, the standard desktop that is provided by the operating system displays. If not specified, defaults to `APP`.
*
*/
@Export(name="streamView", refs={String.class}, tree="[0]")
private Output streamView;
/**
* @return AppStream 2.0 view that is displayed to your users when they stream from the fleet. When `APP` is specified, only the windows of applications opened by users display. When `DESKTOP` is specified, the standard desktop that is provided by the operating system displays. If not specified, defaults to `APP`.
*
*/
public Output streamView() {
return this.streamView;
}
/**
* Map of tags to attach to AppStream instances.
*
*/
@Export(name="tags", refs={Map.class,String.class}, tree="[0,1,1]")
private Output* @Nullable */ Map> tags;
/**
* @return Map of tags to attach to AppStream instances.
*
*/
public Output>> tags() {
return Codegen.optional(this.tags);
}
/**
* @deprecated
* Please use `tags` instead.
*
*/
@Deprecated /* Please use `tags` instead. */
@Export(name="tagsAll", refs={Map.class,String.class}, tree="[0,1,1]")
private Output
© 2015 - 2025 Weber Informatics LLC | Privacy Policy