Skip to main content

@swamp/aws/gamelift

v2026.04.23.3

AWS GAMELIFT infrastructure models

Repository

https://github.com/systeminit/swamp-extensions

Labels

awsgameliftcloudinfrastructure

Contents

Quality score

Verified by Swamp

How well-documented and verifiable this extension is.

100%

Grade A

  • Has README or module doc2/2earned
  • README has a code example1/1earned
  • README is substantive1/1earned
  • Most symbols documented1/1earned
  • No slow types1/1earned
  • Has description1/1earned
  • At least one platform tag (or universal)1/1earned
  • Two or more platform tags (or universal)1/1earned
  • License declared1/1earned
  • Verified public repository2/2earned

Install

$ swamp extension pull @swamp/aws/gamelift

@swamp/aws/gamelift/aliasv2026.04.23.2alias.ts

Global Arguments

ArgumentTypeDescription
namestringInstance name for this resource (used as the unique identifier in the factory pattern)
Description?stringA human-readable description of the alias.
NamestringA descriptive label that is associated with an alias. Alias names do not need to be unique.
RoutingStrategyobjectA routing configuration that specifies where traffic is directed for this alias, such as to a fleet or to a message.
Tags?arrayAn array of key-value pairs to apply to this resource.
createCreate a GameLift Alias
getGet a GameLift Alias
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift Alias
updateUpdate a GameLift Alias
deleteDelete a GameLift Alias
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift Alias
syncSync GameLift Alias state from AWS

Resources

state(infinite)— GameLift Alias resource state
@swamp/aws/gamelift/buildv2026.04.23.2build.ts

Global Arguments

ArgumentTypeDescription
namestringInstance name for this resource (used as the unique identifier in the factory pattern)
Name?stringA descriptive label that is associated with a build. Build names do not need to be unique.
OperatingSystem?enumThe operating system that the game server binaries are built to run on. This value determines the type of fleet resources that you can use for this build. If your game build contains multiple executables, they all must run on the same operating system. If an operating system is not specified when creating a build, Amazon GameLift uses the default value (WINDOWS_2012). This value cannot be changed later.
StorageLocation?objectInformation indicating where your game build files are stored. Use this parameter only when creating a build with files stored in an Amazon S3 bucket that you own. The storage location must specify an Amazon S3 bucket name and key. The location must also specify a role ARN that you set up to allow Amazon GameLift to access your Amazon S3 bucket. The S3 bucket and your new build must be in the same Region.
Version?stringVersion information that is associated with this build. Version strings do not need to be unique.
ServerSdkVersion?stringA server SDK version you used when integrating your game server build with Amazon GameLift. By default Amazon GameLift sets this value to 4.0.2.
Tags?arrayAn array of key-value pairs to apply to this resource.
createCreate a GameLift Build
getGet a GameLift Build
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift Build
updateUpdate a GameLift Build
deleteDelete a GameLift Build
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift Build
syncSync GameLift Build state from AWS

Resources

state(infinite)— GameLift Build resource state
@swamp/aws/gamelift/container-fleetv2026.04.23.2container_fleet.ts

Global Arguments

ArgumentTypeDescription
namestringInstance name for this resource (used as the unique identifier in the factory pattern)
FleetRoleArnstringA unique identifier for an AWS IAM role that manages access to your AWS services. Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console.
Description?stringA human-readable description of a fleet.
GameServerContainerGroupDefinitionName?stringThe name of the container group definition that will be created per game server. You must specify GAME_SERVER container group. You have the option to also specify one PER_INSTANCE container group.
PerInstanceContainerGroupDefinitionName?stringThe name of the container group definition that will be created per instance. This field is optional if you specify GameServerContainerGroupDefinitionName.
InstanceConnectionPortRange?objectDefines the range of ports on the instance that allow inbound traffic to connect with containers in a fleet.
InstanceInboundPermissions?arrayA range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift server.
GameServerContainerGroupsPerInstance?numberThe number of desired game server container groups per instance, a number between 1-5000.
DeploymentDetails?objectProvides information about the last deployment ID and its status.
DeploymentConfiguration?objectProvides details about how to drain old tasks and replace them with new updated tasks.
InstanceType?stringThe 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.
BillingType?enumIndicates 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.
Locations?array
ScalingPolicies?arrayA list of rules that control how a fleet is scaled.
MetricGroups?arrayThe name of an Amazon CloudWatch metric group. A metric group aggregates the metrics for all fleets in the group. Specify a string containing the metric group name. You can use an existing name or use a new name to create a new metric group. Currently, this parameter can have only one string.
NewGameSessionProtectionPolicy?enumA game session protection policy to apply to all game sessions hosted on instances in this fleet. When protected, active game sessions cannot be terminated during a scale-down event. If this parameter is not set, instances in this fleet default to no protection. You can change a fleet's protection policy to affect future game sessions on the fleet. You can also set protection for individual game sessions.
GameSessionCreationLimitPolicy?objectA policy that limits the number of game sessions an individual player can create over a span of time for this fleet.
LogConfiguration?objectA policy the location and provider of logs from the fleet.
Tags?arrayAn array of key-value pairs to apply to this resource.
PlayerGatewayMode?enumThe player gateway mode for the container fleet.
createCreate a GameLift ContainerFleet
getGet a GameLift ContainerFleet
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift ContainerFleet
updateUpdate a GameLift ContainerFleet
deleteDelete a GameLift ContainerFleet
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift ContainerFleet
syncSync GameLift ContainerFleet state from AWS

Resources

state(infinite)— GameLift ContainerFleet resource state
@swamp/aws/gamelift/container-group-definitionv2026.04.23.2container_group_definition.ts

Global Arguments

ArgumentTypeDescription
OperatingSystemenumThe operating system of the container group
NamestringA descriptive label for the container group definition.
ContainerGroupType?enumThe scope of the container group
TotalMemoryLimitMebibytesnumberThe total memory limit of container groups following this definition in MiB
TotalVcpuLimitnumberThe total amount of virtual CPUs on the container group definition
GameServerContainerDefinition?objectSpecifies the information required to run game servers with this container group
SupportContainerDefinitions?arrayA collection of support container definitions that define the containers in this group.
SourceVersionNumber?numberA specific ContainerGroupDefinition version to be updated
VersionDescription?stringThe description of this version
Tags?arrayAn array of key-value pairs to apply to this resource.
createCreate a GameLift ContainerGroupDefinition
getGet a GameLift ContainerGroupDefinition
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift ContainerGroupDefinition
updateUpdate a GameLift ContainerGroupDefinition
deleteDelete a GameLift ContainerGroupDefinition
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift ContainerGroupDefinition
syncSync GameLift ContainerGroupDefinition state from AWS

Resources

state(infinite)— GameLift ContainerGroupDefinition resource state
@swamp/aws/gamelift/fleetv2026.04.23.2fleet.ts

Global Arguments

ArgumentTypeDescription
namestringInstance name for this resource (used as the unique identifier in the factory pattern)
ScalingPolicies?arrayA list of rules that control how a fleet is scaled.
ApplyCapacity?enumDetermines when and how to apply fleet or location capacities. Allowed options are ON_UPDATE (default), ON_CREATE_AND_UPDATE and ON_CREATE_AND_UPDATE_WITH_AUTOSCALING. If you choose ON_CREATE_AND_UPDATE_WITH_AUTOSCALING, MinSize and MaxSize will still be applied on creation and on updates, but DesiredEC2Instances will only be applied once on fleet creation and will be ignored during updates to prevent conflicts with auto-scaling. During updates with ON_CREATE_AND_UPDATE_WITH_AUTOSCALING chosen,
CertificateConfiguration?objectIndicates 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 set, certificate generation is disabled. This fleet setting cannot be changed once the fleet is created.
ComputeType?enumComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer.
Description?stringA human-readable description of a fleet.
DesiredEC2Instances?number[DEPRECATED] The number of EC2 instances that you want this fleet to host. When creating a new fleet, GameLift automatically sets this value to "1" and initiates a single instance. Once the fleet is active, update this value to trigger GameLift to add or remove instances from the fleet.
EC2InboundPermissions?arrayA range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift server.
EC2InstanceType?stringThe 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.
FleetType?enumIndicates 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.
InstanceRoleARN?stringA 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.
InstanceRoleCredentialsProvider?enumCredentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service.
Locations?array
LogPaths?arrayThis parameter is no longer used. When hosting a custom game build, specify where Amazon GameLift should store log files using the Amazon GameLift server API call ProcessReady()
MaxSize?number[DEPRECATED] The maximum value that is allowed for the fleet\
MetricGroups?arrayThe name of an Amazon CloudWatch metric group. A metric group aggregates the metrics for all fleets in the group. Specify a string containing the metric group name. You can use an existing name or use a new name to create a new metric group. Currently, this parameter can have only one string.
MinSize?number[DEPRECATED] The minimum value allowed for the fleet\
NamestringA descriptive label that is associated with a fleet. Fleet names do not need to be unique.
NewGameSessionProtectionPolicy?enumA game session protection policy to apply to all game sessions hosted on instances in this fleet. When protected, active game sessions cannot be terminated during a scale-down event. If this parameter is not set, instances in this fleet default to no protection. You can change a fleet's protection policy to affect future game sessions on the fleet. You can also set protection for individual game sessions.
PeerVpcAwsAccountId?stringA 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.
PeerVpcId?stringA 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.
PlayerGatewayConfiguration?objectConfiguration for player gateway.
ResourceCreationLimitPolicy?objectA policy that limits the number of game sessions an individual player can create over a span of time for this fleet.
BuildId?stringA unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The 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.
ScriptId?stringA unique identifier for a Realtime script to be deployed on a new Realtime Servers fleet. The script must have been successfully uploaded to Amazon GameLift. This fleet setting cannot be changed once the fleet is created. Note: It is not currently possible to use the!Ref command to reference a script created with a CloudFormation template for the fleet property ScriptId. Instead, use Fn::GetAtt Script.Arn or Fn::GetAtt Script.Id to retrieve either of these properties as input for ScriptId. Alter
RuntimeConfiguration?objectInstructions 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
ServerLaunchParameters?stringThis parameter is no longer used but is retained for backward compatibility. Instead, specify server launch parameters in the RuntimeConfiguration parameter. A request must specify either a runtime configuration or values for both ServerLaunchParameters and ServerLaunchPath.
ServerLaunchPath?stringThis 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.
Tags?arrayAn array of key-value pairs to apply to this resource.
PlayerGatewayMode?enumThe player gateway mode for the fleet.
createCreate a GameLift Fleet
getGet a GameLift Fleet
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift Fleet
updateUpdate a GameLift Fleet
deleteDelete a GameLift Fleet
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift Fleet
syncSync GameLift Fleet state from AWS

Resources

state(infinite)— GameLift Fleet resource state
@swamp/aws/gamelift/game-server-groupv2026.04.23.2game_server_group.ts

Global Arguments

ArgumentTypeDescription
namestringInstance name for this resource (used as the unique identifier in the factory pattern)
AutoScalingPolicy?objectConfiguration 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.
BalancingStrategy?enumThe 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.
DeleteOption?enumThe type of delete to perform.
GameServerGroupNamestringAn identifier for the new game server group.
GameServerProtectionPolicy?enumA flag that indicates whether instances in the game server group are protected from early termination.
InstanceDefinitionsarrayA set of EC2 instance types to use when creating instances in the group.
LaunchTemplate?objectThe 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.
MaxSize?numberThe 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.
MinSize?numberThe 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.
RoleArnstringThe Amazon Resource Name (ARN) for an IAM role that allows Amazon GameLift to access your EC2 Auto Scaling groups.
Tags?arrayA 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.
VpcSubnets?arrayA 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.
createCreate a GameLift GameServerGroup
getGet a GameLift GameServerGroup
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift GameServerGroup
updateUpdate a GameLift GameServerGroup
deleteDelete a GameLift GameServerGroup
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift GameServerGroup
syncSync GameLift GameServerGroup state from AWS

Resources

state(infinite)— GameLift GameServerGroup resource state
@swamp/aws/gamelift/game-session-queuev2026.04.23.2game_session_queue.ts

Global Arguments

ArgumentTypeDescription
NamestringA descriptive label that is associated with game session queue. Queue names must be unique within each Region.
TimeoutInSeconds?numberThe maximum time, in seconds, that a new game session placement request remains in the queue.
Destinations?arrayA list of fleets and/or fleet aliases that can be used to fulfill game session placement requests in the queue.
PlayerLatencyPolicies?arrayA set of policies that act as a sliding cap on player latency.
CustomEventData?stringInformation that is added to all events that are related to this game session queue.
NotificationTarget?stringAn SNS topic ARN that is set up to receive game session placement notifications.
FilterConfiguration?objectA list of locations where a queue is allowed to place new game sessions.
PriorityConfiguration?objectCustom settings to use when prioritizing destinations and locations for game session placements.
Tags?arrayAn array of key-value pairs to apply to this resource.
createCreate a GameLift GameSessionQueue
getGet a GameLift GameSessionQueue
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift GameSessionQueue
updateUpdate a GameLift GameSessionQueue
deleteDelete a GameLift GameSessionQueue
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift GameSessionQueue
syncSync GameLift GameSessionQueue state from AWS

Resources

state(infinite)— GameLift GameSessionQueue resource state
@swamp/aws/gamelift/locationv2026.04.23.2location.ts

Global Arguments

ArgumentTypeDescription
LocationNamestring
Tags?arrayAn array of key-value pairs to apply to this resource.
createCreate a GameLift Location
getGet a GameLift Location
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift Location
updateUpdate a GameLift Location
deleteDelete a GameLift Location
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift Location
syncSync GameLift Location state from AWS

Resources

state(infinite)— GameLift Location resource state
@swamp/aws/gamelift/matchmaking-configurationv2026.04.23.2matchmaking_configuration.ts

Global Arguments

ArgumentTypeDescription
AcceptanceRequiredbooleanA flag that indicates whether a match that was created with this configuration must be accepted by the matched players
AcceptanceTimeoutSeconds?numberThe length of time (in seconds) to wait for players to accept a proposed match, if acceptance is required.
AdditionalPlayerCount?numberThe number of player slots in a match to keep open for future players.
BackfillMode?enumThe method used to backfill game sessions created with this matchmaking configuration.
CreationTime?stringA time stamp indicating when this data object was created.
CustomEventData?stringInformation to attach to all events related to the matchmaking configuration.
Description?stringA descriptive label that is associated with matchmaking configuration.
FlexMatchMode?enumIndicates whether this matchmaking configuration is being used with Amazon GameLift hosting or as a standalone matchmaking solution.
GameProperties?arrayA set of custom properties for a game session, formatted as key:value pairs.
GameSessionData?stringA set of custom game session properties, formatted as a single string value.
GameSessionQueueArns?arrayThe Amazon Resource Name (ARN) that is assigned to a Amazon GameLift game session queue resource and uniquely identifies it.
NamestringA unique identifier for the matchmaking configuration.
NotificationTarget?stringAn SNS topic ARN that is set up to receive matchmaking notifications.
RequestTimeoutSecondsnumberThe maximum duration, in seconds, that a matchmaking ticket can remain in process before timing out.
RuleSetArn?stringThe Amazon Resource Name (ARN) associated with the GameLift matchmaking rule set resource that this configuration uses.
RuleSetNamestringA unique identifier for the matchmaking rule set to use with this configuration.
Tags?arrayAn array of key-value pairs to apply to this resource.
createCreate a GameLift MatchmakingConfiguration
getGet a GameLift MatchmakingConfiguration
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift MatchmakingConfiguration
updateUpdate a GameLift MatchmakingConfiguration
deleteDelete a GameLift MatchmakingConfiguration
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift MatchmakingConfiguration
syncSync GameLift MatchmakingConfiguration state from AWS

Resources

state(infinite)— GameLift MatchmakingConfiguration resource state
@swamp/aws/gamelift/matchmaking-rule-setv2026.04.23.2matchmaking_rule_set.ts

Global Arguments

ArgumentTypeDescription
NamestringA unique identifier for the matchmaking rule set.
RuleSetBodystringA collection of matchmaking rules, formatted as a JSON string.
Tags?arrayAn array of key-value pairs to apply to this resource.
createCreate a GameLift MatchmakingRuleSet
getGet a GameLift MatchmakingRuleSet
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift MatchmakingRuleSet
updateUpdate a GameLift MatchmakingRuleSet
deleteDelete a GameLift MatchmakingRuleSet
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift MatchmakingRuleSet
syncSync GameLift MatchmakingRuleSet state from AWS

Resources

state(infinite)— GameLift MatchmakingRuleSet resource state
@swamp/aws/gamelift/scriptv2026.04.23.2script.ts

Global Arguments

ArgumentTypeDescription
namestringInstance name for this resource (used as the unique identifier in the factory pattern)
Name?stringA descriptive label that is associated with a script. Script names do not need to be unique.
StorageLocationobjectThe location of the Amazon S3 bucket where a zipped file containing your Realtime scripts is stored. The storage location must specify the Amazon S3 bucket name, the zip file name (the "key"), and a role ARN that allows Amazon GameLift to access the Amazon S3 storage location. The S3 bucket must be in the same Region where you want to create a new script. By default, Amazon GameLift uploads the latest version of the zip file; if you have S3 object versioning turned on, you can use the ObjectVers
Version?stringThe version that is associated with a script. Version strings do not need to be unique.
Tags?arrayAn array of key-value pairs to apply to this resource.
NodeJsVersion?stringThe Node.js version used for execution of the Realtime script.
createCreate a GameLift Script
getGet a GameLift Script
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift Script
updateUpdate a GameLift Script
deleteDelete a GameLift Script
ArgumentTypeDescription
identifierstringThe primary identifier of the GameLift Script
syncSync GameLift Script state from AWS

Resources

state(infinite)— GameLift Script resource state