CreateFleetInput
public struct CreateFleetInput : AWSShape
Undocumented
-
Declaration
Swift
public static var _members: [AWSShapeMember]
-
A unique identifier for a build to be deployed on the new fleet. You can use either the build ID or ARN value. The custom game server build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created.
Declaration
Swift
public let buildId: String?
-
Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS certificates are used for encrypting traffic between game clients and game servers running on GameLift. If this parameter is not specified, the default value, DISABLED, is used. This fleet setting cannot be changed once the fleet is created. Learn more at Securing Client/Server Communication. Note: This feature requires the AWS Certificate Manager (ACM) service, which is available in the AWS global partition but not in all other partitions. When working in a partition that does not support this feature, a request for a new fleet with certificate generation results fails with a 4xx unsupported Region error. Valid values include: GENERATED - Generate a TLS/SSL certificate for this fleet. DISABLED - (default) Do not generate a TLS/SSL certificate for this fleet.
Declaration
Swift
public let certificateConfiguration: CertificateConfiguration?
-
A human-readable description of a fleet.
Declaration
Swift
public let description: String?
-
Range of IP addresses and port settings that permit inbound traffic to access game sessions that are running on the fleet. For fleets using a custom game build, this parameter is required before game sessions running on the fleet can accept connections. For Realtime Servers fleets, Amazon GameLift automatically sets TCP and UDP ranges for use by the Realtime servers. You can specify multiple permission settings or add more by updating the fleet.
Declaration
Swift
public let eC2InboundPermissions: [IpPermission]?
-
The name of an EC2 instance type that is supported in Amazon GameLift. A fleet instance type determines the computing resources of each instance in the fleet, including CPU, memory, storage, and networking capacity. Amazon GameLift supports the following EC2 instance types. See Amazon EC2 Instance Types for detailed descriptions.
Declaration
Swift
public let eC2InstanceType: EC2InstanceType
-
Indicates whether to use On-Demand instances or Spot instances for this fleet. If empty, the default is ON_DEMAND. Both categories of instances use identical hardware and configurations based on the instance type selected for this fleet. Learn more about On-Demand versus Spot Instances.
Declaration
Swift
public let fleetType: FleetType?
-
A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role’s ARN from the IAM dashboard in the AWS Management Console. Learn more about using on-box credentials for your game servers at Access external resources from a game server.
Declaration
Swift
public let instanceRoleArn: String?
-
This parameter is no longer used. Instead, to specify where Amazon GameLift should store log files once a server process shuts down, use the Amazon GameLift server API ProcessReady() and specify one or more directory paths in logParameters. See more information in the Server API Reference.
Declaration
Swift
public let logPaths: [String]?
-
The name of an Amazon CloudWatch metric group to add this fleet to. A metric group aggregates the metrics for all fleets in the group. Specify an existing metric group name, or provide a new name to create a new metric group. A fleet can only be included in one metric group at a time.
Declaration
Swift
public let metricGroups: [String]?
-
A descriptive label that is associated with a fleet. Fleet names do not need to be unique.
Declaration
Swift
public let name: String
-
A game session protection policy to apply to all instances in this fleet. If this parameter is not set, instances in this fleet default to no protection. You can change a fleet’s protection policy using UpdateFleetAttributes, but this change will only affect sessions created after the policy change. You can also set protection for individual instances using UpdateGameSession. NoProtection - The game session can be terminated during a scale-down event. FullProtection - If the game session is in an ACTIVE status, it cannot be terminated during a scale-down event.
Declaration
Swift
public let newGameSessionProtectionPolicy: ProtectionPolicy?
-
A unique identifier for the AWS account with the VPC that you want to peer your Amazon GameLift fleet with. You can find your account ID in the AWS Management Console under account settings.
Declaration
Swift
public let peerVpcAwsAccountId: String?
-
A unique identifier for a VPC with resources to be accessed by your Amazon GameLift fleet. The VPC must be in the same Region as your fleet. To look up a VPC ID, use the VPC Dashboard in the AWS Management Console. Learn more about VPC peering in VPC Peering with Amazon GameLift Fleets.
Declaration
Swift
public let peerVpcId: String?
-
A policy that limits the number of game sessions an individual player can create over a span of time for this fleet.
Declaration
Swift
public let resourceCreationLimitPolicy: ResourceCreationLimitPolicy?
-
Instructions for launching server processes on each instance in the fleet. Server processes run either a custom game build executable or a Realtime script. The runtime configuration defines the server executables or launch script file, launch parameters, and the number of processes to run concurrently on each instance. When creating a fleet, the runtime configuration must have at least one server process configuration; otherwise the request fails with an invalid request exception. (This parameter replaces the parameters ServerLaunchPath and ServerLaunchParameters, although requests that contain values for these parameters instead of a runtime configuration will continue to work.) This parameter is required unless the parameters ServerLaunchPath and ServerLaunchParameters are defined. Runtime configuration replaced these parameters, but fleets that use them will continue to work.
Declaration
Swift
public let runtimeConfiguration: RuntimeConfiguration?
-
A unique identifier for a Realtime script to be deployed on the new fleet. You can use either the script ID or ARN value. The Realtime script must have been successfully uploaded to Amazon GameLift. This fleet setting cannot be changed once the fleet is created.
Declaration
Swift
public let scriptId: String?
-
This parameter is no longer used. Instead, specify server launch parameters in the RuntimeConfiguration parameter. (Requests that specify a server launch path and launch parameters instead of a runtime configuration will continue to work.)
Declaration
Swift
public let serverLaunchParameters: String?
-
This parameter is no longer used. Instead, specify a server launch path using the RuntimeConfiguration parameter. Requests that specify a server launch path and launch parameters instead of a runtime configuration will continue to work.
Declaration
Swift
public let serverLaunchPath: String?
-
A list of labels to assign to the new fleet resource. Tags are developer-defined key-value pairs. Tagging AWS resources are useful for resource management, access management and cost allocation. For more information, see Tagging AWS Resources in the AWS General Reference. Once the resource is created, you can use TagResource, UntagResource, and ListTagsForResource to add, remove, and view tags. The maximum tag limit may be lower than stated. See the AWS General Reference for actual tagging limits.
Declaration
Swift
public let tags: [Tag]?
-
init(buildId:certificateConfiguration:description:eC2InboundPermissions:eC2InstanceType:fleetType:instanceRoleArn:logPaths:metricGroups:name:newGameSessionProtectionPolicy:peerVpcAwsAccountId:peerVpcId:resourceCreationLimitPolicy:runtimeConfiguration:scriptId:serverLaunchParameters:serverLaunchPath:tags:)
Undocumented
Declaration
Swift
public init(buildId: String? = nil, certificateConfiguration: CertificateConfiguration? = nil, description: String? = nil, eC2InboundPermissions: [IpPermission]? = nil, eC2InstanceType: EC2InstanceType, fleetType: FleetType? = nil, instanceRoleArn: String? = nil, logPaths: [String]? = nil, metricGroups: [String]? = nil, name: String, newGameSessionProtectionPolicy: ProtectionPolicy? = nil, peerVpcAwsAccountId: String? = nil, peerVpcId: String? = nil, resourceCreationLimitPolicy: ResourceCreationLimitPolicy? = nil, runtimeConfiguration: RuntimeConfiguration? = nil, scriptId: String? = nil, serverLaunchParameters: String? = nil, serverLaunchPath: String? = nil, tags: [Tag]? = nil)
-
Declaration
Swift
public func validate(name: String) throws