UNPKG

@pulumi/aws-native

Version:

The Pulumi AWS Cloud Control Provider enables you to build, deploy, and manage [any AWS resource that's supported by the AWS Cloud Control API](https://github.com/pulumi/pulumi-aws-native/blob/master/provider/cmd/pulumi-gen-aws-native/supported-types.txt)

141 lines (140 loc) 8.55 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; import * as enums from "../types/enums"; /** * The AWS::GameLift::GameServerGroup resource creates an Amazon GameLift (GameLift) GameServerGroup. */ export declare class GameServerGroup extends pulumi.CustomResource { /** * Get an existing GameServerGroup resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): GameServerGroup; /** * Returns true if the given object is an instance of GameServerGroup. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is GameServerGroup; /** * A generated unique ID for the EC2 Auto Scaling group that is associated with this game server group. */ readonly autoScalingGroupArn: pulumi.Output<string>; /** * Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource. */ readonly autoScalingPolicy: pulumi.Output<outputs.gamelift.GameServerGroupAutoScalingPolicy | undefined>; /** * The fallback balancing method to use for the game server group when Spot Instances in a Region become unavailable or are not viable for game hosting. */ readonly balancingStrategy: pulumi.Output<enums.gamelift.GameServerGroupBalancingStrategy | undefined>; /** * The type of delete to perform. */ readonly deleteOption: pulumi.Output<enums.gamelift.GameServerGroupDeleteOption | undefined>; /** * A generated unique ID for the game server group. */ readonly gameServerGroupArn: pulumi.Output<string>; /** * An identifier for the new game server group. */ readonly gameServerGroupName: pulumi.Output<string>; /** * A flag that indicates whether instances in the game server group are protected from early termination. */ readonly gameServerProtectionPolicy: pulumi.Output<enums.gamelift.GameServerGroupGameServerProtectionPolicy | undefined>; /** * A set of EC2 instance types to use when creating instances in the group. */ readonly instanceDefinitions: pulumi.Output<outputs.gamelift.GameServerGroupInstanceDefinition[]>; /** * The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource. */ readonly launchTemplate: pulumi.Output<outputs.gamelift.GameServerGroupLaunchTemplate | undefined>; /** * The maximum number of instances allowed in the EC2 Auto Scaling group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource. */ readonly maxSize: pulumi.Output<number | undefined>; /** * The minimum number of instances allowed in the EC2 Auto Scaling group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource. */ readonly minSize: pulumi.Output<number | undefined>; /** * The Amazon Resource Name (ARN) for an IAM role that allows Amazon GameLift to access your EC2 Auto Scaling groups. */ readonly roleArn: pulumi.Output<string>; /** * A list of labels to assign to the new game server group resource. Updating game server group tags with CloudFormation will not take effect. Please update this property using AWS GameLift APIs instead. */ readonly tags: pulumi.Output<outputs.Tag[] | undefined>; /** * A list of virtual private cloud (VPC) subnets to use with instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource. */ readonly vpcSubnets: pulumi.Output<string[] | undefined>; /** * Create a GameServerGroup resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: GameServerGroupArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a GameServerGroup resource. */ export interface GameServerGroupArgs { /** * Configuration settings to define a scaling policy for the Auto Scaling group that is optimized for game hosting. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource. */ autoScalingPolicy?: pulumi.Input<inputs.gamelift.GameServerGroupAutoScalingPolicyArgs>; /** * The fallback balancing method to use for the game server group when Spot Instances in a Region become unavailable or are not viable for game hosting. */ balancingStrategy?: pulumi.Input<enums.gamelift.GameServerGroupBalancingStrategy>; /** * The type of delete to perform. */ deleteOption?: pulumi.Input<enums.gamelift.GameServerGroupDeleteOption>; /** * An identifier for the new game server group. */ gameServerGroupName?: pulumi.Input<string>; /** * A flag that indicates whether instances in the game server group are protected from early termination. */ gameServerProtectionPolicy?: pulumi.Input<enums.gamelift.GameServerGroupGameServerProtectionPolicy>; /** * A set of EC2 instance types to use when creating instances in the group. */ instanceDefinitions: pulumi.Input<pulumi.Input<inputs.gamelift.GameServerGroupInstanceDefinitionArgs>[]>; /** * The EC2 launch template that contains configuration settings and game server code to be deployed to all instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource. */ launchTemplate?: pulumi.Input<inputs.gamelift.GameServerGroupLaunchTemplateArgs>; /** * The maximum number of instances allowed in the EC2 Auto Scaling group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource. */ maxSize?: pulumi.Input<number>; /** * The minimum number of instances allowed in the EC2 Auto Scaling group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource. */ minSize?: pulumi.Input<number>; /** * The Amazon Resource Name (ARN) for an IAM role that allows Amazon GameLift to access your EC2 Auto Scaling groups. */ roleArn: pulumi.Input<string>; /** * A list of labels to assign to the new game server group resource. Updating game server group tags with CloudFormation will not take effect. Please update this property using AWS GameLift APIs instead. */ tags?: pulumi.Input<pulumi.Input<inputs.TagArgs>[]>; /** * A list of virtual private cloud (VPC) subnets to use with instances in the game server group. Updating this game server group property will not take effect for the created EC2 Auto Scaling group, please update the EC2 Auto Scaling group directly after creating the resource. */ vpcSubnets?: pulumi.Input<pulumi.Input<string>[]>; }