GroupArgs

data class GroupArgs(val amount: Output<Int>? = null, val autoPay: Output<Boolean>? = null, val autoRenew: Output<Boolean>? = null, val chargeType: Output<String>? = null, val gpuAcceleration: Output<Boolean>? = null, val imageId: Output<String>? = null, val instanceGroupName: Output<String>? = null, val instanceGroupSpec: Output<String>? = null, val numberOfInstances: Output<Int>? = null, val officeSiteId: Output<String>? = null, val period: Output<Int>? = null, val periodUnit: Output<String>? = null, val policyGroupId: Output<String>? = null, val vswitchId: Output<String>? = null) : ConvertibleToJava<GroupArgs>

Provides a Cloud Phone Instance Group resource. For information about Cloud Phone Instance Group and how to use it, see What is Instance Group.

NOTE: Available since v1.243.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 regionId = config.get("regionId") || "cn-hangzhou";
const defaultjZ1gi0 = new alicloud.cloudphone.Policy("defaultjZ1gi0", {
lockResolution: "off",
resolutionWidth: 720,
cameraRedirect: "on",
policyGroupName: "defaultPolicyGroup",
resolutionHeight: 1280,
clipboard: "readwrite",
netRedirectPolicy: {
netRedirect: "off",
customProxy: "off",
},
});
const defaultH2a5KS = new alicloud.eds.SimpleOfficeSite("defaultH2a5KS", {
officeSiteName: "InitOfficeSite",
cidrBlock: "172.16.0.0/12",
});
const _default = new alicloud.cloudphoneinstance.Group("default", {
instanceGroupSpec: "acp.basic.small",
instanceGroupName: "AutoCreateGroupName",
period: 1,
numberOfInstances: 1,
chargeType: "PostPaid",
imageId: "imgc-075cllfeuazh03tg9",
periodUnit: "Hour",
autoRenew: false,
amount: 1,
autoPay: false,
gpuAcceleration: false,
policyGroupId: defaultjZ1gi0.id,
officeSiteId: defaultH2a5KS.id,
});
import pulumi
import pulumi_alicloud as alicloud
config = pulumi.Config()
name = config.get("name")
if name is None:
name = "terraform-example"
region_id = config.get("regionId")
if region_id is None:
region_id = "cn-hangzhou"
defaultj_z1gi0 = alicloud.cloudphone.Policy("defaultjZ1gi0",
lock_resolution="off",
resolution_width=720,
camera_redirect="on",
policy_group_name="defaultPolicyGroup",
resolution_height=1280,
clipboard="readwrite",
net_redirect_policy={
"net_redirect": "off",
"custom_proxy": "off",
})
default_h2a5_ks = alicloud.eds.SimpleOfficeSite("defaultH2a5KS",
office_site_name="InitOfficeSite",
cidr_block="172.16.0.0/12")
default = alicloud.cloudphoneinstance.Group("default",
instance_group_spec="acp.basic.small",
instance_group_name="AutoCreateGroupName",
period=1,
number_of_instances=1,
charge_type="PostPaid",
image_id="imgc-075cllfeuazh03tg9",
period_unit="Hour",
auto_renew=False,
amount=1,
auto_pay=False,
gpu_acceleration=False,
policy_group_id=defaultj_z1gi0.id,
office_site_id=default_h2a5_ks.id)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var config = new Config();
var name = config.Get("name") ?? "terraform-example";
var regionId = config.Get("regionId") ?? "cn-hangzhou";
var defaultjZ1gi0 = new AliCloud.CloudPhone.Policy("defaultjZ1gi0", new()
{
LockResolution = "off",
ResolutionWidth = 720,
CameraRedirect = "on",
PolicyGroupName = "defaultPolicyGroup",
ResolutionHeight = 1280,
Clipboard = "readwrite",
NetRedirectPolicy = new AliCloud.cloudPhone.Inputs.PolicyNetRedirectPolicyArgs
{
NetRedirect = "off",
CustomProxy = "off",
},
});
var defaultH2a5KS = new AliCloud.Eds.SimpleOfficeSite("defaultH2a5KS", new()
{
OfficeSiteName = "InitOfficeSite",
CidrBlock = "172.16.0.0/12",
});
var @default = new AliCloud.CloudPhoneInstance.Group("default", new()
{
InstanceGroupSpec = "acp.basic.small",
InstanceGroupName = "AutoCreateGroupName",
Period = 1,
NumberOfInstances = 1,
ChargeType = "PostPaid",
ImageId = "imgc-075cllfeuazh03tg9",
PeriodUnit = "Hour",
AutoRenew = false,
Amount = 1,
AutoPay = false,
GpuAcceleration = false,
PolicyGroupId = defaultjZ1gi0.Id,
OfficeSiteId = defaultH2a5KS.Id,
});
});
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudphone"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudphoneinstance"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/eds"
"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
}
regionId := "cn-hangzhou"
if param := cfg.Get("regionId"); param != "" {
regionId = param
}
defaultjZ1gi0, err := cloudphone.NewPolicy(ctx, "defaultjZ1gi0", &cloudphone.PolicyArgs{
LockResolution: pulumi.String("off"),
ResolutionWidth: pulumi.Int(720),
CameraRedirect: pulumi.String("on"),
PolicyGroupName: pulumi.String("defaultPolicyGroup"),
ResolutionHeight: pulumi.Int(1280),
Clipboard: pulumi.String("readwrite"),
NetRedirectPolicy: &cloudphone.PolicyNetRedirectPolicyArgs{
NetRedirect: pulumi.String("off"),
CustomProxy: pulumi.String("off"),
},
})
if err != nil {
return err
}
defaultH2a5KS, err := eds.NewSimpleOfficeSite(ctx, "defaultH2a5KS", &eds.SimpleOfficeSiteArgs{
OfficeSiteName: pulumi.String("InitOfficeSite"),
CidrBlock: pulumi.String("172.16.0.0/12"),
})
if err != nil {
return err
}
_, err = cloudphoneinstance.NewGroup(ctx, "default", &cloudphoneinstance.GroupArgs{
InstanceGroupSpec: pulumi.String("acp.basic.small"),
InstanceGroupName: pulumi.String("AutoCreateGroupName"),
Period: pulumi.Int(1),
NumberOfInstances: pulumi.Int(1),
ChargeType: pulumi.String("PostPaid"),
ImageId: pulumi.String("imgc-075cllfeuazh03tg9"),
PeriodUnit: pulumi.String("Hour"),
AutoRenew: pulumi.Bool(false),
Amount: pulumi.Int(1),
AutoPay: pulumi.Bool(false),
GpuAcceleration: pulumi.Bool(false),
PolicyGroupId: defaultjZ1gi0.ID(),
OfficeSiteId: defaultH2a5KS.ID(),
})
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.cloudphone.Policy;
import com.pulumi.alicloud.cloudphone.PolicyArgs;
import com.pulumi.alicloud.cloudphone.inputs.PolicyNetRedirectPolicyArgs;
import com.pulumi.alicloud.eds.SimpleOfficeSite;
import com.pulumi.alicloud.eds.SimpleOfficeSiteArgs;
import com.pulumi.alicloud.cloudphoneinstance.Group;
import com.pulumi.alicloud.cloudphoneinstance.GroupArgs;
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");
final var regionId = config.get("regionId").orElse("cn-hangzhou");
var defaultjZ1gi0 = new Policy("defaultjZ1gi0", PolicyArgs.builder()
.lockResolution("off")
.resolutionWidth(720)
.cameraRedirect("on")
.policyGroupName("defaultPolicyGroup")
.resolutionHeight(1280)
.clipboard("readwrite")
.netRedirectPolicy(PolicyNetRedirectPolicyArgs.builder()
.netRedirect("off")
.customProxy("off")
.build())
.build());
var defaultH2a5KS = new SimpleOfficeSite("defaultH2a5KS", SimpleOfficeSiteArgs.builder()
.officeSiteName("InitOfficeSite")
.cidrBlock("172.16.0.0/12")
.build());
var default_ = new Group("default", GroupArgs.builder()
.instanceGroupSpec("acp.basic.small")
.instanceGroupName("AutoCreateGroupName")
.period(1)
.numberOfInstances(1)
.chargeType("PostPaid")
.imageId("imgc-075cllfeuazh03tg9")
.periodUnit("Hour")
.autoRenew(false)
.amount(1)
.autoPay(false)
.gpuAcceleration(false)
.policyGroupId(defaultjZ1gi0.id())
.officeSiteId(defaultH2a5KS.id())
.build());
}
}
configuration:
name:
type: string
default: terraform-example
regionId:
type: string
default: cn-hangzhou
resources:
defaultjZ1gi0:
type: alicloud:cloudphone:Policy
properties:
lockResolution: off
resolutionWidth: '720'
cameraRedirect: on
policyGroupName: defaultPolicyGroup
resolutionHeight: '1280'
clipboard: readwrite
netRedirectPolicy:
netRedirect: off
customProxy: off
defaultH2a5KS:
type: alicloud:eds:SimpleOfficeSite
properties:
officeSiteName: InitOfficeSite
cidrBlock: 172.16.0.0/12
default:
type: alicloud:cloudphoneinstance:Group
properties:
instanceGroupSpec: acp.basic.small
instanceGroupName: AutoCreateGroupName
period: '1'
numberOfInstances: '1'
chargeType: PostPaid
imageId: imgc-075cllfeuazh03tg9
periodUnit: Hour
autoRenew: false
amount: '1'
autoPay: false
gpuAcceleration: false
policyGroupId: ${defaultjZ1gi0.id}
officeSiteId: ${defaultH2a5KS.id}

Import

Cloud Phone Instance Group can be imported using the id, e.g.

$ pulumi import alicloud:cloudphoneinstance/group:Group example <id>

Constructors

Link copied to clipboard
constructor(amount: Output<Int>? = null, autoPay: Output<Boolean>? = null, autoRenew: Output<Boolean>? = null, chargeType: Output<String>? = null, gpuAcceleration: Output<Boolean>? = null, imageId: Output<String>? = null, instanceGroupName: Output<String>? = null, instanceGroupSpec: Output<String>? = null, numberOfInstances: Output<Int>? = null, officeSiteId: Output<String>? = null, period: Output<Int>? = null, periodUnit: Output<String>? = null, policyGroupId: Output<String>? = null, vswitchId: Output<String>? = null)

Properties

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

The number of instance groups. The default value is 1 and the maximum value is 100.

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

Whether to pay automatically. The default is false.

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

Whether to enable automatic renewal. The default is false.

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

The billing type.

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

Whether to enable GPU acceleration. The default value is false.

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

The image ID.

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

The instance group name

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

Instance group specifications.

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

The number of instances in the instance group. The maximum value is 100.

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

The network ID.

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

The duration of the resource purchase. The unit is specified by PeriodUnit.

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

The unit of time for purchasing resources.

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

The policy ID. You can query the list of policies by calling ListPolicyGroups.

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

The vSwitch ID.

Functions

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