DesktopArgs

data class DesktopArgs(val amount: Output<Int>? = null, val autoPay: Output<Boolean>? = null, val autoRenew: Output<Boolean>? = null, val bundleId: Output<String>? = null, val desktopName: Output<String>? = null, val desktopType: Output<String>? = null, val endUserIds: Output<List<String>>? = null, val hostName: Output<String>? = null, val officeSiteId: Output<String>? = null, val paymentType: Output<String>? = null, val period: Output<Int>? = null, val periodUnit: Output<String>? = null, val policyGroupId: Output<String>? = null, val rootDiskSizeGib: Output<Int>? = null, val status: Output<String>? = null, val stoppedMode: Output<String>? = null, val tags: Output<Map<String, Any>>? = null, val userAssignMode: Output<String>? = null, val userDiskSizeGib: Output<Int>? = null) : ConvertibleToJava<DesktopArgs>

Provides a ECD Desktop resource. For information about ECD Desktop and how to use it, see What is Desktop.

NOTE: Available in v1.144.0+.

Example Usage

Basic Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.eds.SimpleOfficeSite;
import com.pulumi.alicloud.eds.SimpleOfficeSiteArgs;
import com.pulumi.alicloud.eds.EdsFunctions;
import com.pulumi.alicloud.eds.inputs.GetBundlesArgs;
import com.pulumi.alicloud.eds.EcdPolicyGroup;
import com.pulumi.alicloud.eds.EcdPolicyGroupArgs;
import com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeAccessPolicyRuleArgs;
import com.pulumi.alicloud.eds.inputs.EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs;
import com.pulumi.alicloud.eds.User;
import com.pulumi.alicloud.eds.UserArgs;
import com.pulumi.alicloud.eds.Desktop;
import com.pulumi.alicloud.eds.DesktopArgs;
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 defaultSimpleOfficeSite = new SimpleOfficeSite("defaultSimpleOfficeSite", SimpleOfficeSiteArgs.builder()
.cidrBlock("172.16.0.0/12")
.desktopAccessType("Internet")
.officeSiteName("your_office_site_name")
.enableInternetAccess(false)
.build());
final var defaultBundles = EdsFunctions.getBundles(GetBundlesArgs.builder()
.bundleType("SYSTEM")
.build());
var defaultEcdPolicyGroup = new EcdPolicyGroup("defaultEcdPolicyGroup", EcdPolicyGroupArgs.builder()
.policyGroupName("your_policy_group_name")
.clipboard("readwrite")
.localDrive("read")
.authorizeAccessPolicyRules(EcdPolicyGroupAuthorizeAccessPolicyRuleArgs.builder()
.description("example_value")
.cidrIp("1.2.3.4/24")
.build())
.authorizeSecurityPolicyRules(EcdPolicyGroupAuthorizeSecurityPolicyRuleArgs.builder()
.type("inflow")
.policy("accept")
.description("example_value")
.portRange("80/80")
.ipProtocol("TCP")
.priority("1")
.cidrIp("0.0.0.0/0")
.build())
.build());
var defaultUser = new User("defaultUser", UserArgs.builder()
.endUserId("your_end_user_id")
.email("your_email")
.phone("your_phone")
.password("your_password")
.build());
var defaultDesktop = new Desktop("defaultDesktop", DesktopArgs.builder()
.officeSiteId(defaultSimpleOfficeSite.id())
.policyGroupId(defaultEcdPolicyGroup.id())
.bundleId(defaultBundles.applyValue(getBundlesResult -> getBundlesResult.bundles()[0].id()))
.desktopName("your_desktop_name")
.endUserIds(defaultUser.id())
.build());
}
}

Import

ECD Desktop can be imported using the id, e.g.

$ pulumi import alicloud:eds/desktop:Desktop example <id>

Constructors

Link copied to clipboard
fun DesktopArgs(amount: Output<Int>? = null, autoPay: Output<Boolean>? = null, autoRenew: Output<Boolean>? = null, bundleId: Output<String>? = null, desktopName: Output<String>? = null, desktopType: Output<String>? = null, endUserIds: Output<List<String>>? = null, hostName: Output<String>? = null, officeSiteId: Output<String>? = null, paymentType: Output<String>? = null, period: Output<Int>? = null, periodUnit: Output<String>? = null, policyGroupId: Output<String>? = null, rootDiskSizeGib: Output<Int>? = null, status: Output<String>? = null, stoppedMode: Output<String>? = null, tags: Output<Map<String, Any>>? = null, userAssignMode: Output<String>? = null, userDiskSizeGib: Output<Int>? = null)

Functions

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

Properties

Link copied to clipboard
val amount: Output<Int>? = null

The amount of the Desktop.

Link copied to clipboard
val autoPay: Output<Boolean>? = null

The auto-pay of the Desktop whether to pay automatically. values: true, false.

Link copied to clipboard
val autoRenew: Output<Boolean>? = null

The auto-renewal of the Desktop whether to renew automatically. It takes effect only when the parameter ChargeType is set to PrePaid. values: true, false.

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

The bundle id of the Desktop.

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

The desktop name of the Desktop.

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

The desktop type of the Desktop.

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

The desktop end user id of the Desktop.

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

The hostname of the Desktop.

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

The ID of the Simple Office Site.

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

The payment type of the Desktop. Valid values: PayAsYouGo, Subscription. Default to PayAsYouGo.

Link copied to clipboard
val period: Output<Int>? = null

The period of the Desktop.

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

The period unit of the Desktop.

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

The policy group id of the Desktop.

Link copied to clipboard
val rootDiskSizeGib: Output<Int>? = null

The root disk size gib of the Desktop.

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

The status of the Desktop. Valid values: Deleted, Expired, Pending, Running, Starting, Stopped, Stopping.

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

The stopped mode of the Desktop.

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

A mapping of tags to assign to the resource.

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

The user assign mode of the Desktop. Valid values: ALL, PER_USER. Default to ALL.

Link copied to clipboard
val userDiskSizeGib: Output<Int>? = null

The user disk size gib of the Desktop.