@aws-cdk/aws-gamelift-alpha 2.54.0-alpha.0 → 2.55.1-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +1671 -322
- package/.jsii.tabl.json.gz +0 -0
- package/.warnings.jsii.js +49 -1
- package/README.md +59 -0
- package/lib/alias.d.ts +6 -1
- package/lib/alias.js +9 -3
- package/lib/build-fleet.js +1 -1
- package/lib/build.js +2 -2
- package/lib/content.js +3 -3
- package/lib/fleet-base.d.ts +6 -1
- package/lib/fleet-base.js +8 -2
- package/lib/game-server-group.js +2 -2
- package/lib/game-session-queue.d.ts +276 -0
- package/lib/game-session-queue.js +269 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +2 -1
- package/lib/ingress-rule.js +2 -2
- package/lib/matchmaking-ruleset-body.js +1 -1
- package/lib/matchmaking-ruleset.js +2 -2
- package/lib/script.js +2 -2
- package/package.json +8 -8
- package/rosetta/default.ts-fixture +1 -0
package/.jsii
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"url": "https://aws.amazon.com"
|
|
9
9
|
},
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"aws-cdk-lib": "^2.
|
|
11
|
+
"aws-cdk-lib": "^2.55.1",
|
|
12
12
|
"constructs": "^10.0.0"
|
|
13
13
|
},
|
|
14
14
|
"dependencyClosure": {
|
|
@@ -1406,6 +1406,19 @@
|
|
|
1406
1406
|
}
|
|
1407
1407
|
}
|
|
1408
1408
|
},
|
|
1409
|
+
"aws-cdk-lib.aws_grafana": {
|
|
1410
|
+
"targets": {
|
|
1411
|
+
"dotnet": {
|
|
1412
|
+
"namespace": "Amazon.CDK.AWS.Grafana"
|
|
1413
|
+
},
|
|
1414
|
+
"java": {
|
|
1415
|
+
"package": "software.amazon.awscdk.services.grafana"
|
|
1416
|
+
},
|
|
1417
|
+
"python": {
|
|
1418
|
+
"module": "aws_cdk.aws_grafana"
|
|
1419
|
+
}
|
|
1420
|
+
}
|
|
1421
|
+
},
|
|
1409
1422
|
"aws-cdk-lib.aws_greengrass": {
|
|
1410
1423
|
"targets": {
|
|
1411
1424
|
"dotnet": {
|
|
@@ -2199,6 +2212,19 @@
|
|
|
2199
2212
|
}
|
|
2200
2213
|
}
|
|
2201
2214
|
},
|
|
2215
|
+
"aws-cdk-lib.aws_opensearchserverless": {
|
|
2216
|
+
"targets": {
|
|
2217
|
+
"dotnet": {
|
|
2218
|
+
"namespace": "Amazon.CDK.AWS.OpenSearchServerless"
|
|
2219
|
+
},
|
|
2220
|
+
"java": {
|
|
2221
|
+
"package": "software.amazon.awscdk.services.opensearchserverless"
|
|
2222
|
+
},
|
|
2223
|
+
"python": {
|
|
2224
|
+
"module": "aws_cdk.aws_opensearchserverless"
|
|
2225
|
+
}
|
|
2226
|
+
}
|
|
2227
|
+
},
|
|
2202
2228
|
"aws-cdk-lib.aws_opensearchservice": {
|
|
2203
2229
|
"targets": {
|
|
2204
2230
|
"dotnet": {
|
|
@@ -2303,6 +2329,19 @@
|
|
|
2303
2329
|
}
|
|
2304
2330
|
}
|
|
2305
2331
|
},
|
|
2332
|
+
"aws-cdk-lib.aws_pipes": {
|
|
2333
|
+
"targets": {
|
|
2334
|
+
"dotnet": {
|
|
2335
|
+
"namespace": "Amazon.CDK.AWS.Pipes"
|
|
2336
|
+
},
|
|
2337
|
+
"java": {
|
|
2338
|
+
"package": "software.amazon.awscdk.services.pipes"
|
|
2339
|
+
},
|
|
2340
|
+
"python": {
|
|
2341
|
+
"module": "aws_cdk.aws_pipes"
|
|
2342
|
+
}
|
|
2343
|
+
}
|
|
2344
|
+
},
|
|
2306
2345
|
"aws-cdk-lib.aws_qldb": {
|
|
2307
2346
|
"targets": {
|
|
2308
2347
|
"dotnet": {
|
|
@@ -3245,7 +3284,7 @@
|
|
|
3245
3284
|
"stability": "experimental"
|
|
3246
3285
|
},
|
|
3247
3286
|
"homepage": "https://github.com/aws/aws-cdk",
|
|
3248
|
-
"jsiiVersion": "1.
|
|
3287
|
+
"jsiiVersion": "1.72.0 (build 4b8828b)",
|
|
3249
3288
|
"keywords": [
|
|
3250
3289
|
"aws",
|
|
3251
3290
|
"cdk",
|
|
@@ -3266,7 +3305,7 @@
|
|
|
3266
3305
|
},
|
|
3267
3306
|
"name": "@aws-cdk/aws-gamelift-alpha",
|
|
3268
3307
|
"readme": {
|
|
3269
|
-
"markdown": "# Amazon GameLift Construct Library\n<!--BEGIN STABILITY BANNER-->\n\n---\n\n\n\n> The APIs of higher level constructs in this module are experimental and under active development.\n> They are subject to non-backward compatible changes or removal in any future version. These are\n> not subject to the [Semantic Versioning](https://semver.org/) model and breaking changes will be\n> announced in the release notes. This means that while you may use them, you may need to update\n> your source code when upgrading to a newer version of this package.\n\n---\n\n<!--END STABILITY BANNER-->\n\n[Amazon GameLift](https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-intro.html) is a service used\nto deploy, operate, and scale dedicated, low-cost servers in the cloud for session-based multiplayer games. Built\non AWS global computing infrastructure, GameLift helps deliver high-performance, high-reliability game servers\nwhile dynamically scaling your resource usage to meet worldwide player demand.\n\nGameLift is composed of three main components:\n\n* GameLift FlexMatch which is a customizable matchmaking service for\nmultiplayer games. With FlexMatch, you can\nbuild a custom set of rules that defines what a multiplayer match looks like\nfor your game, and determines how to\nevaluate and select compatible players for each match. You can also customize\nkey aspects of the matchmaking\nprocess to fit your game, including fine-tuning the matching algorithm.\n\n* GameLift hosting for custom or realtime servers which helps you deploy,\noperate, and scale dedicated game servers. It regulates the resources needed to\nhost games, finds available game servers to host new game sessions, and puts\nplayers into games.\n\n* GameLift FleetIQ to optimize the use of low-cost Amazon Elastic Compute Cloud\n(Amazon EC2) Spot Instances for cloud-based game hosting. With GameLift\nFleetIQ, you can work directly with your hosting resources in Amazon EC2 and\nAmazon EC2 Auto Scaling while taking advantage of GameLift optimizations to\ndeliver inexpensive, resilient game hosting for your players\n\nThis module is part of the [AWS Cloud Development Kit](https://github.com/aws/aws-cdk) project. It allows you to define components for your matchmaking\nconfiguration or game server fleet management system.\n\n## GameLift FlexMatch\n\n### Matchmaking RuleSet\n\nEvery FlexMatch matchmaker must have a rule set. The rule set determines the\ntwo key elements of a match: your game's team structure and size, and how to\ngroup players together for the best possible match.\n\nFor example, a rule set might describe a match like this: Create a match with\ntwo teams of four to eight players each, one team is the cowboy and the other\nteam the aliens. A team can have novice and experienced players, but the\naverage skill of the two teams must be within 10 points of each other. If no\nmatch is made after 30 seconds, gradually relax the skill requirements.\n\n```ts\nnew gamelift.MatchmakingRuleSet(this, 'RuleSet', {\n matchmakingRuleSetName: 'my-test-ruleset',\n content: gamelift.RuleSetContent.fromJsonFile(path.join(__dirname, 'my-ruleset/ruleset.json')),\n});\n```\n\n### FlexMatch Monitoring\n\nYou can monitor GameLift FlexMatch activity for matchmaking configurations and\nmatchmaking rules using Amazon CloudWatch. These statistics are used to provide\na historical perspective on how your Gamelift FlexMatch solution is performing.\n\n#### FlexMatch Metrics\n\nGameLift FlexMatch sends metrics to CloudWatch so that you can collect and\nanalyze the activity of your matchmaking solution, including match acceptance\nworkflow, ticket consumtion.\n\nYou can then use CloudWatch alarms to alert you, for example, when matches has\nbeen rejected (potential matches that were rejected by at least one player\nsince the last report) exceed a certain thresold which could means that you may\nhave an issue in your matchmaking rules.\n\nCDK provides methods for accessing GameLift FlexMatch metrics with default configuration,\nsuch as `metricRuleEvaluationsPassed`, or `metricRuleEvaluationsFailed` (see\n[`IMatchmakingRuleSet`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-gamelift.IMatchmakingRuleSet.html)\nfor a full list). CDK also provides a generic `metric` method that can be used\nto produce metric configurations for any metric provided by GameLift FlexMatch;\nthe configurations are pre-populated with the correct dimensions for the\nmatchmaking configuration.\n\n```ts\ndeclare const matchmakingRuleSet: gamelift.MatchmakingRuleSet;\n// Alarm that triggers when the per-second average of not placed matches exceed 10%\nconst ruleEvaluationRatio = new cloudwatch.MathExpression({\n expression: '1 - (ruleEvaluationsPassed / ruleEvaluationsFailed)',\n usingMetrics: {\n ruleEvaluationsPassed: matchmakingRuleSet.metricRuleEvaluationsPassed({ statistic: cloudwatch.Statistic.SUM }),\n ruleEvaluationsFailed: matchmakingRuleSet.metric('ruleEvaluationsFailed'),\n },\n});\nnew cloudwatch.Alarm(this, 'Alarm', {\n metric: ruleEvaluationRatio,\n threshold: 0.1,\n evaluationPeriods: 3,\n});\n```\n\nSee: [Monitoring Using CloudWatch Metrics](https://docs.aws.amazon.com/gamelift/latest/developerguide/monitoring-cloudwatch.html)\nin the *Amazon GameLift Developer Guide*.\n\n\n## GameLift Hosting\n\n### Uploading builds and scripts to GameLift\n\nBefore deploying your GameLift-enabled multiplayer game servers for hosting with the GameLift service, you need to upload\nyour game server files. This section provides guidance on preparing and uploading custom game server build\nfiles or Realtime Servers server script files. When you upload files, you create a GameLift build or script resource, which\nyou then deploy on fleets of hosting resources.\n\nTo troubleshoot fleet activation problems related to the server script, see [Debug GameLift fleet issues](https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-creating-debug.html).\n\n#### Upload a custom server build to GameLift\n\nBefore uploading your configured game server to GameLift for hosting, package the game build files into a build directory.\nThis directory must include all components required to run your game servers and host game sessions, including the following:\n\n* Game server binaries – The binary files required to run the game server. A build can include binaries for multiple game\nservers built to run on the same platform. For a list of supported platforms, see [Download Amazon GameLift SDKs](https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-supported.html).\n\n* Dependencies – Any dependent files that your game server executables require to run. Examples include assets, configuration\nfiles, and dependent libraries.\n\n* Install script – A script file to handle tasks that are required to fully install your game build on GameLift hosting\nservers. Place this file at the root of the build directory. GameLift runs the install script as part of fleet creation.\n\nYou can set up any application in your build, including your install script, to access your resources securely on other AWS\nservices.\n\n```ts\ndeclare const bucket: s3.Bucket;\nconst build = new gamelift.Build(this, 'Build', {\n content: gamelift.Content.fromBucket(bucket, \"sample-asset-key\")\n});\n\nnew CfnOutput(this, 'BuildArn', { value: build.buildArn });\nnew CfnOutput(this, 'BuildId', { value: build.buildId });\n```\n\n#### Upload a realtime server Script\n\nYour server script can include one or more files combined into a single .zip file for uploading. The .zip file must contain\nall files that your script needs to run.\n\nYou can store your zipped script files in either a local file directory or in an Amazon Simple Storage Service (Amazon S3)\nbucket or defines a directory asset which is archived as a .zip file and uploaded to S3 during deployment.\n\nAfter you create the script resource, GameLift deploys the script with a new Realtime Servers fleet. GameLift installs your\nserver script onto each instance in the fleet, placing the script files in `/local/game`.\n\n```ts\ndeclare const bucket: s3.Bucket;\nnew gamelift.Script(this, 'Script', {\n content: gamelift.Content.fromBucket(bucket, \"sample-asset-key\")\n});\n```\n\n### Defining a GameLift Fleet\n\n#### Creating a custom game server fleet\n\nYour uploaded game servers are hosted on GameLift virtual computing resources,\ncalled instances. You set up your hosting resources by creating a fleet of\ninstances and deploying them to run your game servers. You can design a fleet\nto fit your game's needs.\n\n```ts\nnew gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: gamelift.Build.fromAsset(this, 'Build', path.join(__dirname, 'CustomerGameServer')),\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: 'test-launch-path',\n }],\n },\n});\n```\n\n### Managing game servers launch configuration\n\nGameLift uses a fleet's runtime configuration to determine the type and number\nof processes to run on each instance in the fleet. At a minimum, a runtime\nconfiguration contains one server process configuration that represents one\ngame server executable. You can also define additional server process\nconfigurations to run other types of processes related to your game. Each\nserver process configuration contains the following information:\n\n* The file name and path of an executable in your game build.\n\n* Optionally Parameters to pass to the process on launch.\n\n* The number of processes to run concurrently.\n\nA GameLift instance is limited to 50 processes running concurrently.\n\n```ts\ndeclare const build: gamelift.Build;\n// Server processes can be delcared in a declarative way through the constructor\nconst fleet = new gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n parameters: '-logFile /local/game/logs/myserver1935.log -port 1935',\n concurrentExecutions: 100,\n }]\n }\n});\n```\n\nSee [Managing how game servers are launched for hosting](https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-multiprocess.html)\nin the *Amazon GameLift Developer Guide*.\n\n### Defining an instance type\n\nGameLift uses Amazon Elastic Compute Cloud (Amazon EC2) resources, called\ninstances, to deploy your game servers and host game sessions for your players.\nWhen setting up a new fleet, you decide what type of instances your game needs\nand how to run game server processes on them (using a runtime configuration). All instances in a fleet use the same type of resources and the same runtime\nconfiguration. You can edit a fleet's runtime configuration and other fleet\nproperties, but the type of resources cannot be changed.\n\n```ts\ndeclare const build: gamelift.Build;\nnew gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n }]\n }\n});\n```\n\n### Using Spot instances\n\nWhen setting up your hosting resources, you have the option of using Spot\nInstances, On-Demand Instances, or a combination.\n\nBy default, fleet are using on demand capacity.\n\n```ts\ndeclare const build: gamelift.Build;\nnew gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n }]\n },\n useSpot: true\n});\n```\n\n### Allowing Ingress traffic\n\nThe allowed IP address ranges and port settings that allow inbound traffic to\naccess game sessions on this fleet.\n\nNew game sessions are assigned an IP address/port number combination, which\nmust fall into the fleet's allowed ranges. Fleets with custom game builds must\nhave permissions explicitly set. For Realtime Servers fleets, GameLift\nautomatically opens two port ranges, one for TCP messaging and one for UDP.\n\n```ts\ndeclare const build: gamelift.Build;\n\nconst fleet = new gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n }]\n },\n ingressRules: [{\n source: gamelift.Peer.anyIpv4(),\n port: gamelift.Port.tcpRange(100, 200),\n }]\n});\n// Allowing a specific CIDR for port 1111 on UDP Protocol\nfleet.addIngressRule(gamelift.Peer.ipv4('1.2.3.4/32'), gamelift.Port.udp(1111));\n```\n\n### Managing locations\n\nA single Amazon GameLift fleet has a home Region by default (the Region you\ndeploy it to), but it can deploy resources to any number of GameLift supported\nRegions. Select Regions based on where your players are located and your\nlatency needs.\n\nBy default, home region is used as default location but we can add new locations if needed and define desired capacity\n\n```ts\ndeclare const build: gamelift.Build;\n\n// Locations can be added directly through constructor\nconst fleet = new gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n }]\n },\n locations: [ {\n region: 'eu-west-1',\n capacity: {\n desiredCapacity: 5,\n minSize: 2,\n maxSize: 10\n }\n }, {\n region: 'us-east-1',\n capacity: {\n desiredCapacity: 5,\n minSize: 2,\n maxSize: 10\n }\n }]\n});\n\n// Or through dedicated methods\nfleet.addLocation('ap-southeast-1', 5, 2, 10);\n```\n\n### Specifying an IAM role for a Fleet\n\nSome GameLift features require you to extend limited access to your AWS\nresources. This is done by creating an AWS IAM role. The GameLift Fleet class\nautomatically created an IAM role with all the minimum necessary permissions\nfor GameLift to access your resources. If you wish, you may\nspecify your own IAM role.\n\n```ts\ndeclare const build: gamelift.Build;\nconst role = new iam.Role(this, 'Role', {\n assumedBy: new iam.CompositePrincipal(new iam.ServicePrincipal('gamelift.amazonaws.com'))\n});\nrole.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName('CloudWatchAgentServerPolicy'));\n\nconst fleet = new gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n }]\n },\n role: role\n});\n\n// Actions can also be grantted through dedicated method\nfleet.grant(role, 'gamelift:ListFleets');\n```\n\n### Alias\n\nA GameLift alias is used to abstract a fleet designation. Fleet designations\ntell Amazon GameLift where to search for available resources when creating new\ngame sessions for players. By using aliases instead of specific fleet IDs, you\ncan more easily and seamlessly switch player traffic from one fleet to another\nby changing the alias's target location.\n\n```ts\ndeclare const fleet: gamelift.BuildFleet;\n\n// Add an alias to an existing fleet using a dedicated fleet method\nconst liveAlias = fleet.addAlias('live');\n\n// You can also create a standalone alias\nnew gamelift.Alias(this, 'TerminalAlias', {\n aliasName: 'terminal-alias',\n terminalMessage: 'A terminal message',\n});\n```\n\nSee [Add an alias to a GameLift fleet](https://docs.aws.amazon.com/gamelift/latest/developerguide/aliases-creating.html)\nin the *Amazon GameLift Developer Guide*.\n\n### Monitoring your Fleet\n\nGameLift is integrated with CloudWatch, so you can monitor the performance of\nyour game servers via logs and metrics.\n\n#### Fleet Metrics\n\nGameLift Fleet sends metrics to CloudWatch so that you can collect and analyze\nthe activity of your Fleet, including game and player sessions and server\nprocesses.\n\nYou can then use CloudWatch alarms to alert you, for example, when matches has\nbeen rejected (potential matches that were rejected by at least one player\nsince the last report) exceed a certain threshold which could means that you may\nhave an issue in your matchmaking rules.\n\nCDK provides methods for accessing GameLift Fleet metrics with default configuration,\nsuch as `metricActiveInstances`, or `metricIdleInstances` (see [`IFleet`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-gamelift.IFleet.html)\nfor a full list). CDK also provides a generic `metric` method that can be used\nto produce metric configurations for any metric provided by GameLift Fleet,\nGame sessions or server processes; the configurations are pre-populated with\nthe correct dimensions for the matchmaking configuration.\n\n```ts\ndeclare const fleet: gamelift.BuildFleet;\n// Alarm that triggers when the per-second average of not used instances exceed 10%\nconst instancesUsedRatio = new cloudwatch.MathExpression({\n expression: '1 - (activeInstances / idleInstances)',\n usingMetrics: {\n activeInstances: fleet.metric('ActiveInstances', { statistic: cloudwatch.Statistic.SUM }),\n idleInstances: fleet.metricIdleInstances(),\n },\n});\nnew cloudwatch.Alarm(this, 'Alarm', {\n metric: instancesUsedRatio,\n threshold: 0.1,\n evaluationPeriods: 3,\n});\n```\n\nSee: [Monitoring Using CloudWatch Metrics](https://docs.aws.amazon.com/gamelift/latest/developerguide/monitoring-cloudwatch.html)\nin the *Amazon GameLift Developer Guide*.\n\n## GameLift FleetIQ\n\nThe GameLift FleetIQ solution is a game hosting layer that supplements the full\nset of computing resource management tools that you get with Amazon EC2 and\nAuto Scaling. This solution lets you directly manage your Amazon EC2 and Auto\nScaling resources and integrate as needed with other AWS services.\n\n### Defining a Game Server Group\n\nWhen using GameLift FleetIQ, you prepare to launch Amazon EC2 instances as\nusual: make an Amazon Machine Image (AMI) with your game server software,\ncreate an Amazon EC2 launch template, and define configuration settings for an\nAuto Scaling group. However, instead of creating an Auto Scaling group\ndirectly, you create a GameLift FleetIQ game server group with your Amazon EC2\nand Auto Scaling resources and configuration. All game server groups must have\nat least two instance types defined for it.\n\nOnce a game server group and Auto Scaling group are up and running with\ninstances deployed, when updating a Game Server Group instance, only certain\nproperties in the Auto Scaling group may be overwrite. For all other Auto\nScaling group properties, such as MinSize, MaxSize, and LaunchTemplate, you can\nmodify these directly on the Auto Scaling group using the AWS Console or\ndedicated Api.\n\n```ts\ndeclare const launchTemplate: ec2.ILaunchTemplate;\ndeclare const vpc: ec2.IVpc;\n\nnew gamelift.GameServerGroup(this, 'Game server group', {\n gameServerGroupName: 'sample-gameservergroup-name',\n instanceDefinitions: [{\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n },\n {\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n }],\n launchTemplate: launchTemplate,\n vpc: vpc\n});\n```\n\nSee [Manage game server groups](https://docs.aws.amazon.com/gamelift/latest/fleetiqguide/gsg-integrate-gameservergroup.html)\nin the *Amazon GameLift FleetIQ Developer Guide*.\n\n### Scaling Policy\n\nThe scaling policy uses the metric `PercentUtilizedGameServers` to maintain a\nbuffer of idle game servers that can immediately accommodate new games and\nplayers.\n\n```ts\ndeclare const launchTemplate: ec2.ILaunchTemplate;\ndeclare const vpc: ec2.IVpc;\n\nnew gamelift.GameServerGroup(this, 'Game server group', {\n gameServerGroupName: 'sample-gameservergroup-name',\n instanceDefinitions: [{\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n },\n {\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n }],\n launchTemplate: launchTemplate,\n vpc: vpc,\n autoScalingPolicy: {\n estimatedInstanceWarmup: Duration.minutes(5),\n targetTrackingConfiguration: 5\n }\n});\n```\n\nSee [Manage game server groups](https://docs.aws.amazon.com/gamelift/latest/fleetiqguide/gsg-integrate-gameservergroup.html)\nin the *Amazon GameLift FleetIQ Developer Guide*.\n\n### Specifying an IAM role for GameLift\n\nThe GameLift FleetIQ class automatically creates an IAM role with all the minimum necessary\npermissions for GameLift to access your Amazon EC2 Auto Scaling groups. If you wish, you may\nspecify your own IAM role. It must have the correct permissions, or FleetIQ creation or resource usage may fail.\n\n```ts\ndeclare const launchTemplate: ec2.ILaunchTemplate;\ndeclare const vpc: ec2.IVpc;\n\nconst role = new iam.Role(this, 'Role', {\n assumedBy: new iam.CompositePrincipal(new iam.ServicePrincipal('gamelift.amazonaws.com'),\n new iam.ServicePrincipal('autoscaling.amazonaws.com'))\n});\nrole.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName('GameLiftGameServerGroupPolicy'));\n\nnew gamelift.GameServerGroup(this, 'Game server group', {\n gameServerGroupName: 'sample-gameservergroup-name',\n instanceDefinitions: [{\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n },\n {\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n }],\n launchTemplate: launchTemplate,\n vpc: vpc,\n role: role\n});\n```\n\nSee [Controlling Access](https://docs.aws.amazon.com/gamelift/latest/fleetiqguide/gsg-iam-permissions-roles.html)\nin the *Amazon GameLift FleetIQ Developer Guide*.\n\n### Specifying VPC Subnets\n\nGameLift FleetIQ use by default, all supported GameLift FleetIQ Availability\nZones in your chosen region. You can override this parameter to specify VPCs\nsubnets that you've set up.\n\nThis property cannot be updated after the game server group is created, and the\ncorresponding Auto Scaling group will always use the property value that is set\nwith this request, even if the Auto Scaling group is updated directly.\n\n```ts\ndeclare const launchTemplate: ec2.ILaunchTemplate;\ndeclare const vpc: ec2.IVpc;\n\nnew gamelift.GameServerGroup(this, 'GameServerGroup', {\n gameServerGroupName: 'sample-gameservergroup-name',\n instanceDefinitions: [{\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n },\n {\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n }],\n launchTemplate: launchTemplate,\n vpc: vpc,\n vpcSubnets: { subnetType: ec2.SubnetType.PUBLIC }\n});\n```\n\n### FleetIQ Monitoring\n\nGameLift FleetIQ sends metrics to CloudWatch so that you can collect and\nanalyze the activity of your Game server fleet, including the number of\nutilized game servers, and the number of game server interruption due to\nlimited Spot availability.\n\nYou can then use CloudWatch alarms to alert you, for example, when the portion\nof game servers that are currently supporting game executions exceed a certain\nthreshold which could means that your autoscaling policy need to be adjust to\nadd more instances to match with player demand.\n\nCDK provides a generic `metric` method that can be used\nto produce metric configurations for any metric provided by GameLift FleetIQ;\nthe configurations are pre-populated with the correct dimensions for the\nmatchmaking configuration.\n\n```ts\ndeclare const gameServerGroup: gamelift.IGameServerGroup;\n// Alarm that triggers when the percent of utilized game servers exceed 90%\nnew cloudwatch.Alarm(this, 'Alarm', {\n metric: gameServerGroup.metric('UtilizedGameServers'),\n threshold: 0.9,\n evaluationPeriods: 2,\n});\n```\n\nSee: [Monitoring with CloudWatch](https://docs.aws.amazon.com/gamelift/latest/fleetiqguide/gsg-metrics.html)\nin the *Amazon GameLift FleetIQ Developer Guide*.\n"
|
|
3308
|
+
"markdown": "# Amazon GameLift Construct Library\n<!--BEGIN STABILITY BANNER-->\n\n---\n\n\n\n> The APIs of higher level constructs in this module are experimental and under active development.\n> They are subject to non-backward compatible changes or removal in any future version. These are\n> not subject to the [Semantic Versioning](https://semver.org/) model and breaking changes will be\n> announced in the release notes. This means that while you may use them, you may need to update\n> your source code when upgrading to a newer version of this package.\n\n---\n\n<!--END STABILITY BANNER-->\n\n[Amazon GameLift](https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-intro.html) is a service used\nto deploy, operate, and scale dedicated, low-cost servers in the cloud for session-based multiplayer games. Built\non AWS global computing infrastructure, GameLift helps deliver high-performance, high-reliability game servers\nwhile dynamically scaling your resource usage to meet worldwide player demand.\n\nGameLift is composed of three main components:\n\n* GameLift FlexMatch which is a customizable matchmaking service for\nmultiplayer games. With FlexMatch, you can\nbuild a custom set of rules that defines what a multiplayer match looks like\nfor your game, and determines how to\nevaluate and select compatible players for each match. You can also customize\nkey aspects of the matchmaking\nprocess to fit your game, including fine-tuning the matching algorithm.\n\n* GameLift hosting for custom or realtime servers which helps you deploy,\noperate, and scale dedicated game servers. It regulates the resources needed to\nhost games, finds available game servers to host new game sessions, and puts\nplayers into games.\n\n* GameLift FleetIQ to optimize the use of low-cost Amazon Elastic Compute Cloud\n(Amazon EC2) Spot Instances for cloud-based game hosting. With GameLift\nFleetIQ, you can work directly with your hosting resources in Amazon EC2 and\nAmazon EC2 Auto Scaling while taking advantage of GameLift optimizations to\ndeliver inexpensive, resilient game hosting for your players\n\nThis module is part of the [AWS Cloud Development Kit](https://github.com/aws/aws-cdk) project. It allows you to define components for your matchmaking\nconfiguration or game server fleet management system.\n\n## GameLift FlexMatch\n\n### Matchmaking RuleSet\n\nEvery FlexMatch matchmaker must have a rule set. The rule set determines the\ntwo key elements of a match: your game's team structure and size, and how to\ngroup players together for the best possible match.\n\nFor example, a rule set might describe a match like this: Create a match with\ntwo teams of four to eight players each, one team is the cowboy and the other\nteam the aliens. A team can have novice and experienced players, but the\naverage skill of the two teams must be within 10 points of each other. If no\nmatch is made after 30 seconds, gradually relax the skill requirements.\n\n```ts\nnew gamelift.MatchmakingRuleSet(this, 'RuleSet', {\n matchmakingRuleSetName: 'my-test-ruleset',\n content: gamelift.RuleSetContent.fromJsonFile(path.join(__dirname, 'my-ruleset/ruleset.json')),\n});\n```\n\n### FlexMatch Monitoring\n\nYou can monitor GameLift FlexMatch activity for matchmaking configurations and\nmatchmaking rules using Amazon CloudWatch. These statistics are used to provide\na historical perspective on how your Gamelift FlexMatch solution is performing.\n\n#### FlexMatch Metrics\n\nGameLift FlexMatch sends metrics to CloudWatch so that you can collect and\nanalyze the activity of your matchmaking solution, including match acceptance\nworkflow, ticket consumtion.\n\nYou can then use CloudWatch alarms to alert you, for example, when matches has\nbeen rejected (potential matches that were rejected by at least one player\nsince the last report) exceed a certain thresold which could means that you may\nhave an issue in your matchmaking rules.\n\nCDK provides methods for accessing GameLift FlexMatch metrics with default configuration,\nsuch as `metricRuleEvaluationsPassed`, or `metricRuleEvaluationsFailed` (see\n[`IMatchmakingRuleSet`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-gamelift.IMatchmakingRuleSet.html)\nfor a full list). CDK also provides a generic `metric` method that can be used\nto produce metric configurations for any metric provided by GameLift FlexMatch;\nthe configurations are pre-populated with the correct dimensions for the\nmatchmaking configuration.\n\n```ts\ndeclare const matchmakingRuleSet: gamelift.MatchmakingRuleSet;\n// Alarm that triggers when the per-second average of not placed matches exceed 10%\nconst ruleEvaluationRatio = new cloudwatch.MathExpression({\n expression: '1 - (ruleEvaluationsPassed / ruleEvaluationsFailed)',\n usingMetrics: {\n ruleEvaluationsPassed: matchmakingRuleSet.metricRuleEvaluationsPassed({ statistic: cloudwatch.Statistic.SUM }),\n ruleEvaluationsFailed: matchmakingRuleSet.metric('ruleEvaluationsFailed'),\n },\n});\nnew cloudwatch.Alarm(this, 'Alarm', {\n metric: ruleEvaluationRatio,\n threshold: 0.1,\n evaluationPeriods: 3,\n});\n```\n\nSee: [Monitoring Using CloudWatch Metrics](https://docs.aws.amazon.com/gamelift/latest/developerguide/monitoring-cloudwatch.html)\nin the *Amazon GameLift Developer Guide*.\n\n\n## GameLift Hosting\n\n### Uploading builds and scripts to GameLift\n\nBefore deploying your GameLift-enabled multiplayer game servers for hosting with the GameLift service, you need to upload\nyour game server files. This section provides guidance on preparing and uploading custom game server build\nfiles or Realtime Servers server script files. When you upload files, you create a GameLift build or script resource, which\nyou then deploy on fleets of hosting resources.\n\nTo troubleshoot fleet activation problems related to the server script, see [Debug GameLift fleet issues](https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-creating-debug.html).\n\n#### Upload a custom server build to GameLift\n\nBefore uploading your configured game server to GameLift for hosting, package the game build files into a build directory.\nThis directory must include all components required to run your game servers and host game sessions, including the following:\n\n* Game server binaries – The binary files required to run the game server. A build can include binaries for multiple game\nservers built to run on the same platform. For a list of supported platforms, see [Download Amazon GameLift SDKs](https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-supported.html).\n\n* Dependencies – Any dependent files that your game server executables require to run. Examples include assets, configuration\nfiles, and dependent libraries.\n\n* Install script – A script file to handle tasks that are required to fully install your game build on GameLift hosting\nservers. Place this file at the root of the build directory. GameLift runs the install script as part of fleet creation.\n\nYou can set up any application in your build, including your install script, to access your resources securely on other AWS\nservices.\n\n```ts\ndeclare const bucket: s3.Bucket;\nconst build = new gamelift.Build(this, 'Build', {\n content: gamelift.Content.fromBucket(bucket, \"sample-asset-key\")\n});\n\nnew CfnOutput(this, 'BuildArn', { value: build.buildArn });\nnew CfnOutput(this, 'BuildId', { value: build.buildId });\n```\n\n#### Upload a realtime server Script\n\nYour server script can include one or more files combined into a single .zip file for uploading. The .zip file must contain\nall files that your script needs to run.\n\nYou can store your zipped script files in either a local file directory or in an Amazon Simple Storage Service (Amazon S3)\nbucket or defines a directory asset which is archived as a .zip file and uploaded to S3 during deployment.\n\nAfter you create the script resource, GameLift deploys the script with a new Realtime Servers fleet. GameLift installs your\nserver script onto each instance in the fleet, placing the script files in `/local/game`.\n\n```ts\ndeclare const bucket: s3.Bucket;\nnew gamelift.Script(this, 'Script', {\n content: gamelift.Content.fromBucket(bucket, \"sample-asset-key\")\n});\n```\n\n### Defining a GameLift Fleet\n\n#### Creating a custom game server fleet\n\nYour uploaded game servers are hosted on GameLift virtual computing resources,\ncalled instances. You set up your hosting resources by creating a fleet of\ninstances and deploying them to run your game servers. You can design a fleet\nto fit your game's needs.\n\n```ts\nnew gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: gamelift.Build.fromAsset(this, 'Build', path.join(__dirname, 'CustomerGameServer')),\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: 'test-launch-path',\n }],\n },\n});\n```\n\n### Managing game servers launch configuration\n\nGameLift uses a fleet's runtime configuration to determine the type and number\nof processes to run on each instance in the fleet. At a minimum, a runtime\nconfiguration contains one server process configuration that represents one\ngame server executable. You can also define additional server process\nconfigurations to run other types of processes related to your game. Each\nserver process configuration contains the following information:\n\n* The file name and path of an executable in your game build.\n\n* Optionally Parameters to pass to the process on launch.\n\n* The number of processes to run concurrently.\n\nA GameLift instance is limited to 50 processes running concurrently.\n\n```ts\ndeclare const build: gamelift.Build;\n// Server processes can be delcared in a declarative way through the constructor\nconst fleet = new gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n parameters: '-logFile /local/game/logs/myserver1935.log -port 1935',\n concurrentExecutions: 100,\n }]\n }\n});\n```\n\nSee [Managing how game servers are launched for hosting](https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-multiprocess.html)\nin the *Amazon GameLift Developer Guide*.\n\n### Defining an instance type\n\nGameLift uses Amazon Elastic Compute Cloud (Amazon EC2) resources, called\ninstances, to deploy your game servers and host game sessions for your players.\nWhen setting up a new fleet, you decide what type of instances your game needs\nand how to run game server processes on them (using a runtime configuration). All instances in a fleet use the same type of resources and the same runtime\nconfiguration. You can edit a fleet's runtime configuration and other fleet\nproperties, but the type of resources cannot be changed.\n\n```ts\ndeclare const build: gamelift.Build;\nnew gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n }]\n }\n});\n```\n\n### Using Spot instances\n\nWhen setting up your hosting resources, you have the option of using Spot\nInstances, On-Demand Instances, or a combination.\n\nBy default, fleet are using on demand capacity.\n\n```ts\ndeclare const build: gamelift.Build;\nnew gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n }]\n },\n useSpot: true\n});\n```\n\n### Allowing Ingress traffic\n\nThe allowed IP address ranges and port settings that allow inbound traffic to\naccess game sessions on this fleet.\n\nNew game sessions are assigned an IP address/port number combination, which\nmust fall into the fleet's allowed ranges. Fleets with custom game builds must\nhave permissions explicitly set. For Realtime Servers fleets, GameLift\nautomatically opens two port ranges, one for TCP messaging and one for UDP.\n\n```ts\ndeclare const build: gamelift.Build;\n\nconst fleet = new gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n }]\n },\n ingressRules: [{\n source: gamelift.Peer.anyIpv4(),\n port: gamelift.Port.tcpRange(100, 200),\n }]\n});\n// Allowing a specific CIDR for port 1111 on UDP Protocol\nfleet.addIngressRule(gamelift.Peer.ipv4('1.2.3.4/32'), gamelift.Port.udp(1111));\n```\n\n### Managing locations\n\nA single Amazon GameLift fleet has a home Region by default (the Region you\ndeploy it to), but it can deploy resources to any number of GameLift supported\nRegions. Select Regions based on where your players are located and your\nlatency needs.\n\nBy default, home region is used as default location but we can add new locations if needed and define desired capacity\n\n```ts\ndeclare const build: gamelift.Build;\n\n// Locations can be added directly through constructor\nconst fleet = new gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n }]\n },\n locations: [ {\n region: 'eu-west-1',\n capacity: {\n desiredCapacity: 5,\n minSize: 2,\n maxSize: 10\n }\n }, {\n region: 'us-east-1',\n capacity: {\n desiredCapacity: 5,\n minSize: 2,\n maxSize: 10\n }\n }]\n});\n\n// Or through dedicated methods\nfleet.addLocation('ap-southeast-1', 5, 2, 10);\n```\n\n### Specifying an IAM role for a Fleet\n\nSome GameLift features require you to extend limited access to your AWS\nresources. This is done by creating an AWS IAM role. The GameLift Fleet class\nautomatically created an IAM role with all the minimum necessary permissions\nfor GameLift to access your resources. If you wish, you may\nspecify your own IAM role.\n\n```ts\ndeclare const build: gamelift.Build;\nconst role = new iam.Role(this, 'Role', {\n assumedBy: new iam.CompositePrincipal(new iam.ServicePrincipal('gamelift.amazonaws.com'))\n});\nrole.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName('CloudWatchAgentServerPolicy'));\n\nconst fleet = new gamelift.BuildFleet(this, 'Game server fleet', {\n fleetName: 'test-fleet',\n content: build,\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n runtimeConfiguration: {\n serverProcesses: [{\n launchPath: '/local/game/GameLiftExampleServer.x86_64',\n }]\n },\n role: role\n});\n\n// Actions can also be grantted through dedicated method\nfleet.grant(role, 'gamelift:ListFleets');\n```\n\n### Alias\n\nA GameLift alias is used to abstract a fleet designation. Fleet designations\ntell Amazon GameLift where to search for available resources when creating new\ngame sessions for players. By using aliases instead of specific fleet IDs, you\ncan more easily and seamlessly switch player traffic from one fleet to another\nby changing the alias's target location.\n\n```ts\ndeclare const fleet: gamelift.BuildFleet;\n\n// Add an alias to an existing fleet using a dedicated fleet method\nconst liveAlias = fleet.addAlias('live');\n\n// You can also create a standalone alias\nnew gamelift.Alias(this, 'TerminalAlias', {\n aliasName: 'terminal-alias',\n terminalMessage: 'A terminal message',\n});\n```\n\nSee [Add an alias to a GameLift fleet](https://docs.aws.amazon.com/gamelift/latest/developerguide/aliases-creating.html)\nin the *Amazon GameLift Developer Guide*.\n\n### Monitoring your Fleet\n\nGameLift is integrated with CloudWatch, so you can monitor the performance of\nyour game servers via logs and metrics.\n\n#### Fleet Metrics\n\nGameLift Fleet sends metrics to CloudWatch so that you can collect and analyze\nthe activity of your Fleet, including game and player sessions and server\nprocesses.\n\nYou can then use CloudWatch alarms to alert you, for example, when matches has\nbeen rejected (potential matches that were rejected by at least one player\nsince the last report) exceed a certain threshold which could means that you may\nhave an issue in your matchmaking rules.\n\nCDK provides methods for accessing GameLift Fleet metrics with default configuration,\nsuch as `metricActiveInstances`, or `metricIdleInstances` (see [`IFleet`](https://docs.aws.amazon.com/cdk/api/latest/docs/@aws-cdk_aws-gamelift.IFleet.html)\nfor a full list). CDK also provides a generic `metric` method that can be used\nto produce metric configurations for any metric provided by GameLift Fleet,\nGame sessions or server processes; the configurations are pre-populated with\nthe correct dimensions for the matchmaking configuration.\n\n```ts\ndeclare const fleet: gamelift.BuildFleet;\n// Alarm that triggers when the per-second average of not used instances exceed 10%\nconst instancesUsedRatio = new cloudwatch.MathExpression({\n expression: '1 - (activeInstances / idleInstances)',\n usingMetrics: {\n activeInstances: fleet.metric('ActiveInstances', { statistic: cloudwatch.Statistic.SUM }),\n idleInstances: fleet.metricIdleInstances(),\n },\n});\nnew cloudwatch.Alarm(this, 'Alarm', {\n metric: instancesUsedRatio,\n threshold: 0.1,\n evaluationPeriods: 3,\n});\n```\n\nSee: [Monitoring Using CloudWatch Metrics](https://docs.aws.amazon.com/gamelift/latest/developerguide/monitoring-cloudwatch.html)\nin the *Amazon GameLift Developer Guide*.\n\n## Game session queue\n\nThe game session queue is the primary mechanism for processing new game session\nrequests and locating available game servers to host them. Although it is\npossible to request a new game session be hosted on specific fleet or location.\n\nThe `GameSessionQueue` resource creates a placement queue that processes requests for\nnew game sessions. A queue uses FleetIQ algorithms to determine the best placement\nlocations and find an available game server, then prompts the game server to start a\nnew game session. Queues can have destinations (GameLift fleets or aliases), which\ndetermine where the queue can place new game sessions. A queue can have destinations\nwith varied fleet type (Spot and On-Demand), instance type, and AWS Region.\n\n```ts\ndeclare const fleet: gamelift.BuildFleet;\ndeclare const alias: gamelift.Alias;\n\nconst queue = new gamelift.GameSessionQueue(this, 'GameSessionQueue', {\n gameSessionQueueName: 'my-queue-name',\n destinations: [fleet]\n});\nqueue.addDestination(alias);\n```\n\nA more complex configuration can also be definied to override how FleetIQ algorithms prioritize game session placement in order to favour a destination based on `Cost`, `Latency`, `Destination order`or `Location`.\n\n```ts\ndeclare const fleet: gamelift.BuildFleet;\ndeclare const topic: sns.Topic;\n\nnew gamelift.GameSessionQueue(this, 'MyGameSessionQueue', {\n gameSessionQueueName: 'test-gameSessionQueue',\n customEventData: 'test-event-data',\n allowedLocations: ['eu-west-1', 'eu-west-2'],\n destinations: [fleet],\n notificationTarget: topic,\n playerLatencyPolicies: [{\n maximumIndividualPlayerLatency: Duration.millis(100),\n policyDuration: Duration.seconds(300),\n }],\n priorityConfiguration: {\n locationOrder: [\n 'eu-west-1',\n 'eu-west-2',\n ],\n priorityOrder: [\n gamelift.PriorityType.LATENCY,\n gamelift.PriorityType.COST,\n gamelift.PriorityType.DESTINATION,\n gamelift.PriorityType.LOCATION,\n ],\n },\n timeout: Duration.seconds(300),\n });\n```\n\nSee [Setting up GameLift queues for game session placement](https://docs.aws.amazon.com/gamelift/latest/developerguide/realtime-script-uploading.html)\nin the *Amazon GameLift Developer Guide*.\n\n## GameLift FleetIQ\n\nThe GameLift FleetIQ solution is a game hosting layer that supplements the full\nset of computing resource management tools that you get with Amazon EC2 and\nAuto Scaling. This solution lets you directly manage your Amazon EC2 and Auto\nScaling resources and integrate as needed with other AWS services.\n\n### Defining a Game Server Group\n\nWhen using GameLift FleetIQ, you prepare to launch Amazon EC2 instances as\nusual: make an Amazon Machine Image (AMI) with your game server software,\ncreate an Amazon EC2 launch template, and define configuration settings for an\nAuto Scaling group. However, instead of creating an Auto Scaling group\ndirectly, you create a GameLift FleetIQ game server group with your Amazon EC2\nand Auto Scaling resources and configuration. All game server groups must have\nat least two instance types defined for it.\n\nOnce a game server group and Auto Scaling group are up and running with\ninstances deployed, when updating a Game Server Group instance, only certain\nproperties in the Auto Scaling group may be overwrite. For all other Auto\nScaling group properties, such as MinSize, MaxSize, and LaunchTemplate, you can\nmodify these directly on the Auto Scaling group using the AWS Console or\ndedicated Api.\n\n```ts\ndeclare const launchTemplate: ec2.ILaunchTemplate;\ndeclare const vpc: ec2.IVpc;\n\nnew gamelift.GameServerGroup(this, 'Game server group', {\n gameServerGroupName: 'sample-gameservergroup-name',\n instanceDefinitions: [{\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n },\n {\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n }],\n launchTemplate: launchTemplate,\n vpc: vpc\n});\n```\n\nSee [Manage game server groups](https://docs.aws.amazon.com/gamelift/latest/fleetiqguide/gsg-integrate-gameservergroup.html)\nin the *Amazon GameLift FleetIQ Developer Guide*.\n\n### Scaling Policy\n\nThe scaling policy uses the metric `PercentUtilizedGameServers` to maintain a\nbuffer of idle game servers that can immediately accommodate new games and\nplayers.\n\n```ts\ndeclare const launchTemplate: ec2.ILaunchTemplate;\ndeclare const vpc: ec2.IVpc;\n\nnew gamelift.GameServerGroup(this, 'Game server group', {\n gameServerGroupName: 'sample-gameservergroup-name',\n instanceDefinitions: [{\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n },\n {\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n }],\n launchTemplate: launchTemplate,\n vpc: vpc,\n autoScalingPolicy: {\n estimatedInstanceWarmup: Duration.minutes(5),\n targetTrackingConfiguration: 5\n }\n});\n```\n\nSee [Manage game server groups](https://docs.aws.amazon.com/gamelift/latest/fleetiqguide/gsg-integrate-gameservergroup.html)\nin the *Amazon GameLift FleetIQ Developer Guide*.\n\n### Specifying an IAM role for GameLift\n\nThe GameLift FleetIQ class automatically creates an IAM role with all the minimum necessary\npermissions for GameLift to access your Amazon EC2 Auto Scaling groups. If you wish, you may\nspecify your own IAM role. It must have the correct permissions, or FleetIQ creation or resource usage may fail.\n\n```ts\ndeclare const launchTemplate: ec2.ILaunchTemplate;\ndeclare const vpc: ec2.IVpc;\n\nconst role = new iam.Role(this, 'Role', {\n assumedBy: new iam.CompositePrincipal(new iam.ServicePrincipal('gamelift.amazonaws.com'),\n new iam.ServicePrincipal('autoscaling.amazonaws.com'))\n});\nrole.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName('GameLiftGameServerGroupPolicy'));\n\nnew gamelift.GameServerGroup(this, 'Game server group', {\n gameServerGroupName: 'sample-gameservergroup-name',\n instanceDefinitions: [{\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n },\n {\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n }],\n launchTemplate: launchTemplate,\n vpc: vpc,\n role: role\n});\n```\n\nSee [Controlling Access](https://docs.aws.amazon.com/gamelift/latest/fleetiqguide/gsg-iam-permissions-roles.html)\nin the *Amazon GameLift FleetIQ Developer Guide*.\n\n### Specifying VPC Subnets\n\nGameLift FleetIQ use by default, all supported GameLift FleetIQ Availability\nZones in your chosen region. You can override this parameter to specify VPCs\nsubnets that you've set up.\n\nThis property cannot be updated after the game server group is created, and the\ncorresponding Auto Scaling group will always use the property value that is set\nwith this request, even if the Auto Scaling group is updated directly.\n\n```ts\ndeclare const launchTemplate: ec2.ILaunchTemplate;\ndeclare const vpc: ec2.IVpc;\n\nnew gamelift.GameServerGroup(this, 'GameServerGroup', {\n gameServerGroupName: 'sample-gameservergroup-name',\n instanceDefinitions: [{\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C5, ec2.InstanceSize.LARGE),\n },\n {\n instanceType: ec2.InstanceType.of(ec2.InstanceClass.C4, ec2.InstanceSize.LARGE),\n }],\n launchTemplate: launchTemplate,\n vpc: vpc,\n vpcSubnets: { subnetType: ec2.SubnetType.PUBLIC }\n});\n```\n\n### FleetIQ Monitoring\n\nGameLift FleetIQ sends metrics to CloudWatch so that you can collect and\nanalyze the activity of your Game server fleet, including the number of\nutilized game servers, and the number of game server interruption due to\nlimited Spot availability.\n\nYou can then use CloudWatch alarms to alert you, for example, when the portion\nof game servers that are currently supporting game executions exceed a certain\nthreshold which could means that your autoscaling policy need to be adjust to\nadd more instances to match with player demand.\n\nCDK provides a generic `metric` method that can be used\nto produce metric configurations for any metric provided by GameLift FleetIQ;\nthe configurations are pre-populated with the correct dimensions for the\nmatchmaking configuration.\n\n```ts\ndeclare const gameServerGroup: gamelift.IGameServerGroup;\n// Alarm that triggers when the percent of utilized game servers exceed 90%\nnew cloudwatch.Alarm(this, 'Alarm', {\n metric: gameServerGroup.metric('UtilizedGameServers'),\n threshold: 0.9,\n evaluationPeriods: 2,\n});\n```\n\nSee: [Monitoring with CloudWatch](https://docs.aws.amazon.com/gamelift/latest/fleetiqguide/gsg-metrics.html)\nin the *Amazon GameLift FleetIQ Developer Guide*.\n"
|
|
3270
3309
|
},
|
|
3271
3310
|
"repository": {
|
|
3272
3311
|
"directory": "packages/individual-packages/aws-gamelift",
|
|
@@ -3325,7 +3364,7 @@
|
|
|
3325
3364
|
},
|
|
3326
3365
|
"locationInModule": {
|
|
3327
3366
|
"filename": "lib/alias.ts",
|
|
3328
|
-
"line":
|
|
3367
|
+
"line": 198
|
|
3329
3368
|
},
|
|
3330
3369
|
"parameters": [
|
|
3331
3370
|
{
|
|
@@ -3351,7 +3390,7 @@
|
|
|
3351
3390
|
"kind": "class",
|
|
3352
3391
|
"locationInModule": {
|
|
3353
3392
|
"filename": "lib/alias.ts",
|
|
3354
|
-
"line":
|
|
3393
|
+
"line": 134
|
|
3355
3394
|
},
|
|
3356
3395
|
"methods": [
|
|
3357
3396
|
{
|
|
@@ -3361,7 +3400,7 @@
|
|
|
3361
3400
|
},
|
|
3362
3401
|
"locationInModule": {
|
|
3363
3402
|
"filename": "lib/alias.ts",
|
|
3364
|
-
"line":
|
|
3403
|
+
"line": 146
|
|
3365
3404
|
},
|
|
3366
3405
|
"name": "fromAliasArn",
|
|
3367
3406
|
"parameters": [
|
|
@@ -3398,7 +3437,7 @@
|
|
|
3398
3437
|
},
|
|
3399
3438
|
"locationInModule": {
|
|
3400
3439
|
"filename": "lib/alias.ts",
|
|
3401
|
-
"line":
|
|
3440
|
+
"line": 153
|
|
3402
3441
|
},
|
|
3403
3442
|
"name": "fromAliasAttributes",
|
|
3404
3443
|
"parameters": [
|
|
@@ -3435,7 +3474,7 @@
|
|
|
3435
3474
|
},
|
|
3436
3475
|
"locationInModule": {
|
|
3437
3476
|
"filename": "lib/alias.ts",
|
|
3438
|
-
"line":
|
|
3477
|
+
"line": 139
|
|
3439
3478
|
},
|
|
3440
3479
|
"name": "fromAliasId",
|
|
3441
3480
|
"parameters": [
|
|
@@ -3476,7 +3515,7 @@
|
|
|
3476
3515
|
"immutable": true,
|
|
3477
3516
|
"locationInModule": {
|
|
3478
3517
|
"filename": "lib/alias.ts",
|
|
3479
|
-
"line":
|
|
3518
|
+
"line": 191
|
|
3480
3519
|
},
|
|
3481
3520
|
"name": "aliasArn",
|
|
3482
3521
|
"overrides": "@aws-cdk/aws-gamelift-alpha.AliasBase",
|
|
@@ -3492,7 +3531,7 @@
|
|
|
3492
3531
|
"immutable": true,
|
|
3493
3532
|
"locationInModule": {
|
|
3494
3533
|
"filename": "lib/alias.ts",
|
|
3495
|
-
"line":
|
|
3534
|
+
"line": 186
|
|
3496
3535
|
},
|
|
3497
3536
|
"name": "aliasId",
|
|
3498
3537
|
"overrides": "@aws-cdk/aws-gamelift-alpha.AliasBase",
|
|
@@ -3508,7 +3547,7 @@
|
|
|
3508
3547
|
"immutable": true,
|
|
3509
3548
|
"locationInModule": {
|
|
3510
3549
|
"filename": "lib/alias.ts",
|
|
3511
|
-
"line":
|
|
3550
|
+
"line": 196
|
|
3512
3551
|
},
|
|
3513
3552
|
"name": "fleet",
|
|
3514
3553
|
"optional": true,
|
|
@@ -3534,7 +3573,7 @@
|
|
|
3534
3573
|
"kind": "interface",
|
|
3535
3574
|
"locationInModule": {
|
|
3536
3575
|
"filename": "lib/alias.ts",
|
|
3537
|
-
"line":
|
|
3576
|
+
"line": 42
|
|
3538
3577
|
},
|
|
3539
3578
|
"name": "AliasAttributes",
|
|
3540
3579
|
"properties": [
|
|
@@ -3549,7 +3588,7 @@
|
|
|
3549
3588
|
"immutable": true,
|
|
3550
3589
|
"locationInModule": {
|
|
3551
3590
|
"filename": "lib/alias.ts",
|
|
3552
|
-
"line":
|
|
3591
|
+
"line": 50
|
|
3553
3592
|
},
|
|
3554
3593
|
"name": "aliasArn",
|
|
3555
3594
|
"optional": true,
|
|
@@ -3568,7 +3607,7 @@
|
|
|
3568
3607
|
"immutable": true,
|
|
3569
3608
|
"locationInModule": {
|
|
3570
3609
|
"filename": "lib/alias.ts",
|
|
3571
|
-
"line":
|
|
3610
|
+
"line": 59
|
|
3572
3611
|
},
|
|
3573
3612
|
"name": "aliasId",
|
|
3574
3613
|
"optional": true,
|
|
@@ -3624,7 +3663,7 @@
|
|
|
3624
3663
|
"kind": "class",
|
|
3625
3664
|
"locationInModule": {
|
|
3626
3665
|
"filename": "lib/alias.ts",
|
|
3627
|
-
"line":
|
|
3666
|
+
"line": 101
|
|
3628
3667
|
},
|
|
3629
3668
|
"name": "AliasBase",
|
|
3630
3669
|
"properties": [
|
|
@@ -3637,7 +3676,7 @@
|
|
|
3637
3676
|
"immutable": true,
|
|
3638
3677
|
"locationInModule": {
|
|
3639
3678
|
"filename": "lib/alias.ts",
|
|
3640
|
-
"line":
|
|
3679
|
+
"line": 109
|
|
3641
3680
|
},
|
|
3642
3681
|
"name": "aliasArn",
|
|
3643
3682
|
"overrides": "@aws-cdk/aws-gamelift-alpha.IAlias",
|
|
@@ -3654,13 +3693,29 @@
|
|
|
3654
3693
|
"immutable": true,
|
|
3655
3694
|
"locationInModule": {
|
|
3656
3695
|
"filename": "lib/alias.ts",
|
|
3657
|
-
"line":
|
|
3696
|
+
"line": 105
|
|
3658
3697
|
},
|
|
3659
3698
|
"name": "aliasId",
|
|
3660
3699
|
"overrides": "@aws-cdk/aws-gamelift-alpha.IAlias",
|
|
3661
3700
|
"type": {
|
|
3662
3701
|
"primitive": "string"
|
|
3663
3702
|
}
|
|
3703
|
+
},
|
|
3704
|
+
{
|
|
3705
|
+
"docs": {
|
|
3706
|
+
"stability": "experimental",
|
|
3707
|
+
"summary": "The ARN to put into the destination field of a game session queue."
|
|
3708
|
+
},
|
|
3709
|
+
"immutable": true,
|
|
3710
|
+
"locationInModule": {
|
|
3711
|
+
"filename": "lib/alias.ts",
|
|
3712
|
+
"line": 113
|
|
3713
|
+
},
|
|
3714
|
+
"name": "resourceArnForDestination",
|
|
3715
|
+
"overrides": "@aws-cdk/aws-gamelift-alpha.IGameSessionQueueDestination",
|
|
3716
|
+
"type": {
|
|
3717
|
+
"primitive": "string"
|
|
3718
|
+
}
|
|
3664
3719
|
}
|
|
3665
3720
|
],
|
|
3666
3721
|
"symbolId": "lib/alias:AliasBase"
|
|
@@ -3680,7 +3735,7 @@
|
|
|
3680
3735
|
"kind": "interface",
|
|
3681
3736
|
"locationInModule": {
|
|
3682
3737
|
"filename": "lib/alias.ts",
|
|
3683
|
-
"line":
|
|
3738
|
+
"line": 30
|
|
3684
3739
|
},
|
|
3685
3740
|
"name": "AliasOptions",
|
|
3686
3741
|
"properties": [
|
|
@@ -3694,7 +3749,7 @@
|
|
|
3694
3749
|
"immutable": true,
|
|
3695
3750
|
"locationInModule": {
|
|
3696
3751
|
"filename": "lib/alias.ts",
|
|
3697
|
-
"line":
|
|
3752
|
+
"line": 36
|
|
3698
3753
|
},
|
|
3699
3754
|
"name": "description",
|
|
3700
3755
|
"optional": true,
|
|
@@ -3720,7 +3775,7 @@
|
|
|
3720
3775
|
"kind": "interface",
|
|
3721
3776
|
"locationInModule": {
|
|
3722
3777
|
"filename": "lib/alias.ts",
|
|
3723
|
-
"line":
|
|
3778
|
+
"line": 65
|
|
3724
3779
|
},
|
|
3725
3780
|
"name": "AliasProps",
|
|
3726
3781
|
"properties": [
|
|
@@ -3733,7 +3788,7 @@
|
|
|
3733
3788
|
"immutable": true,
|
|
3734
3789
|
"locationInModule": {
|
|
3735
3790
|
"filename": "lib/alias.ts",
|
|
3736
|
-
"line":
|
|
3791
|
+
"line": 69
|
|
3737
3792
|
},
|
|
3738
3793
|
"name": "aliasName",
|
|
3739
3794
|
"type": {
|
|
@@ -3750,7 +3805,7 @@
|
|
|
3750
3805
|
"immutable": true,
|
|
3751
3806
|
"locationInModule": {
|
|
3752
3807
|
"filename": "lib/alias.ts",
|
|
3753
|
-
"line":
|
|
3808
|
+
"line": 76
|
|
3754
3809
|
},
|
|
3755
3810
|
"name": "description",
|
|
3756
3811
|
"optional": true,
|
|
@@ -3769,7 +3824,7 @@
|
|
|
3769
3824
|
"immutable": true,
|
|
3770
3825
|
"locationInModule": {
|
|
3771
3826
|
"filename": "lib/alias.ts",
|
|
3772
|
-
"line":
|
|
3827
|
+
"line": 86
|
|
3773
3828
|
},
|
|
3774
3829
|
"name": "fleet",
|
|
3775
3830
|
"optional": true,
|
|
@@ -3788,7 +3843,7 @@
|
|
|
3788
3843
|
"immutable": true,
|
|
3789
3844
|
"locationInModule": {
|
|
3790
3845
|
"filename": "lib/alias.ts",
|
|
3791
|
-
"line":
|
|
3846
|
+
"line": 95
|
|
3792
3847
|
},
|
|
3793
3848
|
"name": "terminalMessage",
|
|
3794
3849
|
"optional": true,
|
|
@@ -3805,7 +3860,7 @@
|
|
|
3805
3860
|
"docs": {
|
|
3806
3861
|
"stability": "experimental",
|
|
3807
3862
|
"summary": "Game content from a local directory.",
|
|
3808
|
-
"example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as gamelift_alpha from '@aws-cdk/aws-gamelift-alpha';\nimport * as cdk from 'aws-cdk-lib';\nimport { aws_iam as iam } from 'aws-cdk-lib';\n\ndeclare const dockerImage: cdk.DockerImage;\ndeclare const grantable: iam.IGrantable;\ndeclare const localBundling: cdk.ILocalBundling;\nconst assetContent = new gamelift_alpha.AssetContent('path', /* all optional props */ {\n assetHash: 'assetHash',\n assetHashType: cdk.AssetHashType.SOURCE,\n bundling: {\n image: dockerImage,\n\n // the properties below are optional\n command: ['command'],\n entrypoint: ['entrypoint'],\n environment: {\n environmentKey: 'environment',\n },\n local: localBundling,\n network: 'network',\n outputType: cdk.BundlingOutput.ARCHIVED,\n securityOpt: 'securityOpt',\n user: 'user',\n volumes: [{\n containerPath: 'containerPath',\n hostPath: 'hostPath',\n\n // the properties below are optional\n consistency: cdk.DockerVolumeConsistency.CONSISTENT,\n }],\n workingDirectory: 'workingDirectory',\n },\n exclude: ['exclude'],\n followSymlinks: cdk.SymlinkFollowMode.NEVER,\n ignoreMode: cdk.IgnoreMode.GLOB,\n readers: [grantable],\n});",
|
|
3863
|
+
"example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as gamelift_alpha from '@aws-cdk/aws-gamelift-alpha';\nimport * as cdk from 'aws-cdk-lib';\nimport { aws_iam as iam } from 'aws-cdk-lib';\n\ndeclare const dockerImage: cdk.DockerImage;\ndeclare const grantable: iam.IGrantable;\ndeclare const localBundling: cdk.ILocalBundling;\nconst assetContent = new gamelift_alpha.AssetContent('path', /* all optional props */ {\n assetHash: 'assetHash',\n assetHashType: cdk.AssetHashType.SOURCE,\n bundling: {\n image: dockerImage,\n\n // the properties below are optional\n command: ['command'],\n entrypoint: ['entrypoint'],\n environment: {\n environmentKey: 'environment',\n },\n local: localBundling,\n network: 'network',\n outputType: cdk.BundlingOutput.ARCHIVED,\n securityOpt: 'securityOpt',\n user: 'user',\n volumes: [{\n containerPath: 'containerPath',\n hostPath: 'hostPath',\n\n // the properties below are optional\n consistency: cdk.DockerVolumeConsistency.CONSISTENT,\n }],\n volumesFrom: ['volumesFrom'],\n workingDirectory: 'workingDirectory',\n },\n exclude: ['exclude'],\n followSymlinks: cdk.SymlinkFollowMode.NEVER,\n ignoreMode: cdk.IgnoreMode.GLOB,\n readers: [grantable],\n});",
|
|
3809
3864
|
"custom": {
|
|
3810
3865
|
"exampleMetadata": "fixture=_generated"
|
|
3811
3866
|
}
|
|
@@ -5153,7 +5208,7 @@
|
|
|
5153
5208
|
"kind": "interface",
|
|
5154
5209
|
"locationInModule": {
|
|
5155
5210
|
"filename": "lib/fleet-base.ts",
|
|
5156
|
-
"line":
|
|
5211
|
+
"line": 375
|
|
5157
5212
|
},
|
|
5158
5213
|
"name": "FleetAttributes",
|
|
5159
5214
|
"properties": [
|
|
@@ -5168,7 +5223,7 @@
|
|
|
5168
5223
|
"immutable": true,
|
|
5169
5224
|
"locationInModule": {
|
|
5170
5225
|
"filename": "lib/fleet-base.ts",
|
|
5171
|
-
"line":
|
|
5226
|
+
"line": 383
|
|
5172
5227
|
},
|
|
5173
5228
|
"name": "fleetArn",
|
|
5174
5229
|
"optional": true,
|
|
@@ -5187,7 +5242,7 @@
|
|
|
5187
5242
|
"immutable": true,
|
|
5188
5243
|
"locationInModule": {
|
|
5189
5244
|
"filename": "lib/fleet-base.ts",
|
|
5190
|
-
"line":
|
|
5245
|
+
"line": 392
|
|
5191
5246
|
},
|
|
5192
5247
|
"name": "fleetId",
|
|
5193
5248
|
"optional": true,
|
|
@@ -5205,7 +5260,7 @@
|
|
|
5205
5260
|
"immutable": true,
|
|
5206
5261
|
"locationInModule": {
|
|
5207
5262
|
"filename": "lib/fleet-base.ts",
|
|
5208
|
-
"line":
|
|
5263
|
+
"line": 399
|
|
5209
5264
|
},
|
|
5210
5265
|
"name": "role",
|
|
5211
5266
|
"optional": true,
|
|
@@ -5265,7 +5320,7 @@
|
|
|
5265
5320
|
"kind": "class",
|
|
5266
5321
|
"locationInModule": {
|
|
5267
5322
|
"filename": "lib/fleet-base.ts",
|
|
5268
|
-
"line":
|
|
5323
|
+
"line": 405
|
|
5269
5324
|
},
|
|
5270
5325
|
"methods": [
|
|
5271
5326
|
{
|
|
@@ -5275,7 +5330,7 @@
|
|
|
5275
5330
|
},
|
|
5276
5331
|
"locationInModule": {
|
|
5277
5332
|
"filename": "lib/fleet-base.ts",
|
|
5278
|
-
"line":
|
|
5333
|
+
"line": 410
|
|
5279
5334
|
},
|
|
5280
5335
|
"name": "fromFleetAttributes",
|
|
5281
5336
|
"parameters": [
|
|
@@ -5313,7 +5368,7 @@
|
|
|
5313
5368
|
},
|
|
5314
5369
|
"locationInModule": {
|
|
5315
5370
|
"filename": "lib/fleet-base.ts",
|
|
5316
|
-
"line":
|
|
5371
|
+
"line": 477
|
|
5317
5372
|
},
|
|
5318
5373
|
"name": "addAlias",
|
|
5319
5374
|
"parameters": [
|
|
@@ -5350,7 +5405,7 @@
|
|
|
5350
5405
|
},
|
|
5351
5406
|
"locationInModule": {
|
|
5352
5407
|
"filename": "lib/fleet-base.ts",
|
|
5353
|
-
"line":
|
|
5408
|
+
"line": 567
|
|
5354
5409
|
},
|
|
5355
5410
|
"name": "addInternalLocation",
|
|
5356
5411
|
"parameters": [
|
|
@@ -5372,7 +5427,7 @@
|
|
|
5372
5427
|
},
|
|
5373
5428
|
"locationInModule": {
|
|
5374
5429
|
"filename": "lib/fleet-base.ts",
|
|
5375
|
-
"line":
|
|
5430
|
+
"line": 551
|
|
5376
5431
|
},
|
|
5377
5432
|
"name": "addLocation",
|
|
5378
5433
|
"parameters": [
|
|
@@ -5415,7 +5470,7 @@
|
|
|
5415
5470
|
},
|
|
5416
5471
|
"locationInModule": {
|
|
5417
5472
|
"filename": "lib/fleet-base.ts",
|
|
5418
|
-
"line":
|
|
5473
|
+
"line": 485
|
|
5419
5474
|
},
|
|
5420
5475
|
"name": "grant",
|
|
5421
5476
|
"overrides": "@aws-cdk/aws-gamelift-alpha.IFleet",
|
|
@@ -5448,7 +5503,7 @@
|
|
|
5448
5503
|
},
|
|
5449
5504
|
"locationInModule": {
|
|
5450
5505
|
"filename": "lib/fleet-base.ts",
|
|
5451
|
-
"line":
|
|
5506
|
+
"line": 493
|
|
5452
5507
|
},
|
|
5453
5508
|
"name": "metric",
|
|
5454
5509
|
"overrides": "@aws-cdk/aws-gamelift-alpha.IFleet",
|
|
@@ -5481,7 +5536,7 @@
|
|
|
5481
5536
|
},
|
|
5482
5537
|
"locationInModule": {
|
|
5483
5538
|
"filename": "lib/fleet-base.ts",
|
|
5484
|
-
"line":
|
|
5539
|
+
"line": 504
|
|
5485
5540
|
},
|
|
5486
5541
|
"name": "metricActiveInstances",
|
|
5487
5542
|
"overrides": "@aws-cdk/aws-gamelift-alpha.IFleet",
|
|
@@ -5508,7 +5563,7 @@
|
|
|
5508
5563
|
},
|
|
5509
5564
|
"locationInModule": {
|
|
5510
5565
|
"filename": "lib/fleet-base.ts",
|
|
5511
|
-
"line":
|
|
5566
|
+
"line": 512
|
|
5512
5567
|
},
|
|
5513
5568
|
"name": "metricDesiredInstances",
|
|
5514
5569
|
"overrides": "@aws-cdk/aws-gamelift-alpha.IFleet",
|
|
@@ -5535,7 +5590,7 @@
|
|
|
5535
5590
|
},
|
|
5536
5591
|
"locationInModule": {
|
|
5537
5592
|
"filename": "lib/fleet-base.ts",
|
|
5538
|
-
"line":
|
|
5593
|
+
"line": 516
|
|
5539
5594
|
},
|
|
5540
5595
|
"name": "metricIdleInstances",
|
|
5541
5596
|
"overrides": "@aws-cdk/aws-gamelift-alpha.IFleet",
|
|
@@ -5561,7 +5616,7 @@
|
|
|
5561
5616
|
},
|
|
5562
5617
|
"locationInModule": {
|
|
5563
5618
|
"filename": "lib/fleet-base.ts",
|
|
5564
|
-
"line":
|
|
5619
|
+
"line": 520
|
|
5565
5620
|
},
|
|
5566
5621
|
"name": "metricInstanceInterruptions",
|
|
5567
5622
|
"overrides": "@aws-cdk/aws-gamelift-alpha.IFleet",
|
|
@@ -5588,7 +5643,7 @@
|
|
|
5588
5643
|
},
|
|
5589
5644
|
"locationInModule": {
|
|
5590
5645
|
"filename": "lib/fleet-base.ts",
|
|
5591
|
-
"line":
|
|
5646
|
+
"line": 524
|
|
5592
5647
|
},
|
|
5593
5648
|
"name": "metricMaxInstances",
|
|
5594
5649
|
"overrides": "@aws-cdk/aws-gamelift-alpha.IFleet",
|
|
@@ -5615,7 +5670,7 @@
|
|
|
5615
5670
|
},
|
|
5616
5671
|
"locationInModule": {
|
|
5617
5672
|
"filename": "lib/fleet-base.ts",
|
|
5618
|
-
"line":
|
|
5673
|
+
"line": 528
|
|
5619
5674
|
},
|
|
5620
5675
|
"name": "metricMinInstances",
|
|
5621
5676
|
"overrides": "@aws-cdk/aws-gamelift-alpha.IFleet",
|
|
@@ -5642,7 +5697,7 @@
|
|
|
5642
5697
|
},
|
|
5643
5698
|
"locationInModule": {
|
|
5644
5699
|
"filename": "lib/fleet-base.ts",
|
|
5645
|
-
"line":
|
|
5700
|
+
"line": 508
|
|
5646
5701
|
},
|
|
5647
5702
|
"name": "metricPercentIdleInstances",
|
|
5648
5703
|
"overrides": "@aws-cdk/aws-gamelift-alpha.IFleet",
|
|
@@ -5667,7 +5722,7 @@
|
|
|
5667
5722
|
},
|
|
5668
5723
|
"locationInModule": {
|
|
5669
5724
|
"filename": "lib/fleet-base.ts",
|
|
5670
|
-
"line":
|
|
5725
|
+
"line": 605
|
|
5671
5726
|
},
|
|
5672
5727
|
"name": "parseLocationCapacity",
|
|
5673
5728
|
"parameters": [
|
|
@@ -5693,7 +5748,7 @@
|
|
|
5693
5748
|
},
|
|
5694
5749
|
"locationInModule": {
|
|
5695
5750
|
"filename": "lib/fleet-base.ts",
|
|
5696
|
-
"line":
|
|
5751
|
+
"line": 588
|
|
5697
5752
|
},
|
|
5698
5753
|
"name": "parseLocations",
|
|
5699
5754
|
"protected": true,
|
|
@@ -5715,7 +5770,7 @@
|
|
|
5715
5770
|
},
|
|
5716
5771
|
"locationInModule": {
|
|
5717
5772
|
"filename": "lib/fleet-base.ts",
|
|
5718
|
-
"line":
|
|
5773
|
+
"line": 575
|
|
5719
5774
|
},
|
|
5720
5775
|
"name": "parseResourceCreationLimitPolicy",
|
|
5721
5776
|
"parameters": [
|
|
@@ -5740,7 +5795,7 @@
|
|
|
5740
5795
|
},
|
|
5741
5796
|
"locationInModule": {
|
|
5742
5797
|
"filename": "lib/fleet-base.ts",
|
|
5743
|
-
"line":
|
|
5798
|
+
"line": 620
|
|
5744
5799
|
},
|
|
5745
5800
|
"name": "parseRuntimeConfiguration",
|
|
5746
5801
|
"parameters": [
|
|
@@ -5765,7 +5820,7 @@
|
|
|
5765
5820
|
},
|
|
5766
5821
|
"locationInModule": {
|
|
5767
5822
|
"filename": "lib/fleet-base.ts",
|
|
5768
|
-
"line":
|
|
5823
|
+
"line": 642
|
|
5769
5824
|
},
|
|
5770
5825
|
"name": "warnVpcPeeringAuthorizations",
|
|
5771
5826
|
"parameters": [
|
|
@@ -5790,7 +5845,7 @@
|
|
|
5790
5845
|
"immutable": true,
|
|
5791
5846
|
"locationInModule": {
|
|
5792
5847
|
"filename": "lib/fleet-base.ts",
|
|
5793
|
-
"line":
|
|
5848
|
+
"line": 449
|
|
5794
5849
|
},
|
|
5795
5850
|
"name": "fleetArn",
|
|
5796
5851
|
"overrides": "@aws-cdk/aws-gamelift-alpha.IFleet",
|
|
@@ -5807,7 +5862,7 @@
|
|
|
5807
5862
|
"immutable": true,
|
|
5808
5863
|
"locationInModule": {
|
|
5809
5864
|
"filename": "lib/fleet-base.ts",
|
|
5810
|
-
"line":
|
|
5865
|
+
"line": 445
|
|
5811
5866
|
},
|
|
5812
5867
|
"name": "fleetId",
|
|
5813
5868
|
"overrides": "@aws-cdk/aws-gamelift-alpha.IFleet",
|
|
@@ -5824,13 +5879,29 @@
|
|
|
5824
5879
|
"immutable": true,
|
|
5825
5880
|
"locationInModule": {
|
|
5826
5881
|
"filename": "lib/fleet-base.ts",
|
|
5827
|
-
"line":
|
|
5882
|
+
"line": 454
|
|
5828
5883
|
},
|
|
5829
5884
|
"name": "grantPrincipal",
|
|
5830
5885
|
"overrides": "aws-cdk-lib.aws_iam.IGrantable",
|
|
5831
5886
|
"type": {
|
|
5832
5887
|
"fqn": "aws-cdk-lib.aws_iam.IPrincipal"
|
|
5833
5888
|
}
|
|
5889
|
+
},
|
|
5890
|
+
{
|
|
5891
|
+
"docs": {
|
|
5892
|
+
"stability": "experimental",
|
|
5893
|
+
"summary": "The ARN to put into the destination field of a game session queue."
|
|
5894
|
+
},
|
|
5895
|
+
"immutable": true,
|
|
5896
|
+
"locationInModule": {
|
|
5897
|
+
"filename": "lib/fleet-base.ts",
|
|
5898
|
+
"line": 542
|
|
5899
|
+
},
|
|
5900
|
+
"name": "resourceArnForDestination",
|
|
5901
|
+
"overrides": "@aws-cdk/aws-gamelift-alpha.IGameSessionQueueDestination",
|
|
5902
|
+
"type": {
|
|
5903
|
+
"primitive": "string"
|
|
5904
|
+
}
|
|
5834
5905
|
}
|
|
5835
5906
|
],
|
|
5836
5907
|
"symbolId": "lib/fleet-base:FleetBase"
|
|
@@ -5850,7 +5921,7 @@
|
|
|
5850
5921
|
"kind": "interface",
|
|
5851
5922
|
"locationInModule": {
|
|
5852
5923
|
"filename": "lib/fleet-base.ts",
|
|
5853
|
-
"line":
|
|
5924
|
+
"line": 222
|
|
5854
5925
|
},
|
|
5855
5926
|
"name": "FleetProps",
|
|
5856
5927
|
"properties": [
|
|
@@ -5864,7 +5935,7 @@
|
|
|
5864
5935
|
"immutable": true,
|
|
5865
5936
|
"locationInModule": {
|
|
5866
5937
|
"filename": "lib/fleet-base.ts",
|
|
5867
|
-
"line":
|
|
5938
|
+
"line": 227
|
|
5868
5939
|
},
|
|
5869
5940
|
"name": "fleetName",
|
|
5870
5941
|
"type": {
|
|
@@ -5882,7 +5953,7 @@
|
|
|
5882
5953
|
"immutable": true,
|
|
5883
5954
|
"locationInModule": {
|
|
5884
5955
|
"filename": "lib/fleet-base.ts",
|
|
5885
|
-
"line":
|
|
5956
|
+
"line": 308
|
|
5886
5957
|
},
|
|
5887
5958
|
"name": "instanceType",
|
|
5888
5959
|
"type": {
|
|
@@ -5900,7 +5971,7 @@
|
|
|
5900
5971
|
"immutable": true,
|
|
5901
5972
|
"locationInModule": {
|
|
5902
5973
|
"filename": "lib/fleet-base.ts",
|
|
5903
|
-
"line":
|
|
5974
|
+
"line": 352
|
|
5904
5975
|
},
|
|
5905
5976
|
"name": "runtimeConfiguration",
|
|
5906
5977
|
"type": {
|
|
@@ -5917,7 +5988,7 @@
|
|
|
5917
5988
|
"immutable": true,
|
|
5918
5989
|
"locationInModule": {
|
|
5919
5990
|
"filename": "lib/fleet-base.ts",
|
|
5920
|
-
"line":
|
|
5991
|
+
"line": 234
|
|
5921
5992
|
},
|
|
5922
5993
|
"name": "description",
|
|
5923
5994
|
"optional": true,
|
|
@@ -5936,7 +6007,7 @@
|
|
|
5936
6007
|
"immutable": true,
|
|
5937
6008
|
"locationInModule": {
|
|
5938
6009
|
"filename": "lib/fleet-base.ts",
|
|
5939
|
-
"line":
|
|
6010
|
+
"line": 317
|
|
5940
6011
|
},
|
|
5941
6012
|
"name": "desiredCapacity",
|
|
5942
6013
|
"optional": true,
|
|
@@ -5955,7 +6026,7 @@
|
|
|
5955
6026
|
"immutable": true,
|
|
5956
6027
|
"locationInModule": {
|
|
5957
6028
|
"filename": "lib/fleet-base.ts",
|
|
5958
|
-
"line":
|
|
6029
|
+
"line": 362
|
|
5959
6030
|
},
|
|
5960
6031
|
"name": "locations",
|
|
5961
6032
|
"optional": true,
|
|
@@ -5978,7 +6049,7 @@
|
|
|
5978
6049
|
"immutable": true,
|
|
5979
6050
|
"locationInModule": {
|
|
5980
6051
|
"filename": "lib/fleet-base.ts",
|
|
5981
|
-
"line":
|
|
6052
|
+
"line": 331
|
|
5982
6053
|
},
|
|
5983
6054
|
"name": "maxSize",
|
|
5984
6055
|
"optional": true,
|
|
@@ -5997,7 +6068,7 @@
|
|
|
5997
6068
|
"immutable": true,
|
|
5998
6069
|
"locationInModule": {
|
|
5999
6070
|
"filename": "lib/fleet-base.ts",
|
|
6000
|
-
"line":
|
|
6071
|
+
"line": 300
|
|
6001
6072
|
},
|
|
6002
6073
|
"name": "metricGroup",
|
|
6003
6074
|
"optional": true,
|
|
@@ -6015,7 +6086,7 @@
|
|
|
6015
6086
|
"immutable": true,
|
|
6016
6087
|
"locationInModule": {
|
|
6017
6088
|
"filename": "lib/fleet-base.ts",
|
|
6018
|
-
"line":
|
|
6089
|
+
"line": 324
|
|
6019
6090
|
},
|
|
6020
6091
|
"name": "minSize",
|
|
6021
6092
|
"optional": true,
|
|
@@ -6035,7 +6106,7 @@
|
|
|
6035
6106
|
"immutable": true,
|
|
6036
6107
|
"locationInModule": {
|
|
6037
6108
|
"filename": "lib/fleet-base.ts",
|
|
6038
|
-
"line":
|
|
6109
|
+
"line": 290
|
|
6039
6110
|
},
|
|
6040
6111
|
"name": "peerVpc",
|
|
6041
6112
|
"optional": true,
|
|
@@ -6054,7 +6125,7 @@
|
|
|
6054
6125
|
"immutable": true,
|
|
6055
6126
|
"locationInModule": {
|
|
6056
6127
|
"filename": "lib/fleet-base.ts",
|
|
6057
|
-
"line":
|
|
6128
|
+
"line": 339
|
|
6058
6129
|
},
|
|
6059
6130
|
"name": "protectNewGameSession",
|
|
6060
6131
|
"optional": true,
|
|
@@ -6072,7 +6143,7 @@
|
|
|
6072
6143
|
"immutable": true,
|
|
6073
6144
|
"locationInModule": {
|
|
6074
6145
|
"filename": "lib/fleet-base.ts",
|
|
6075
|
-
"line":
|
|
6146
|
+
"line": 369
|
|
6076
6147
|
},
|
|
6077
6148
|
"name": "resourceCreationLimitPolicy",
|
|
6078
6149
|
"optional": true,
|
|
@@ -6092,7 +6163,7 @@
|
|
|
6092
6163
|
"immutable": true,
|
|
6093
6164
|
"locationInModule": {
|
|
6094
6165
|
"filename": "lib/fleet-base.ts",
|
|
6095
|
-
"line":
|
|
6166
|
+
"line": 275
|
|
6096
6167
|
},
|
|
6097
6168
|
"name": "role",
|
|
6098
6169
|
"optional": true,
|
|
@@ -6111,7 +6182,7 @@
|
|
|
6111
6182
|
"immutable": true,
|
|
6112
6183
|
"locationInModule": {
|
|
6113
6184
|
"filename": "lib/fleet-base.ts",
|
|
6114
|
-
"line":
|
|
6185
|
+
"line": 261
|
|
6115
6186
|
},
|
|
6116
6187
|
"name": "useCertificate",
|
|
6117
6188
|
"optional": true,
|
|
@@ -6131,7 +6202,7 @@
|
|
|
6131
6202
|
"immutable": true,
|
|
6132
6203
|
"locationInModule": {
|
|
6133
6204
|
"filename": "lib/fleet-base.ts",
|
|
6134
|
-
"line":
|
|
6205
|
+
"line": 246
|
|
6135
6206
|
},
|
|
6136
6207
|
"name": "useSpot",
|
|
6137
6208
|
"optional": true,
|
|
@@ -6950,127 +7021,947 @@
|
|
|
6950
7021
|
],
|
|
6951
7022
|
"symbolId": "lib/game-server-group:GameServerGroupProps"
|
|
6952
7023
|
},
|
|
6953
|
-
"@aws-cdk/aws-gamelift-alpha.
|
|
7024
|
+
"@aws-cdk/aws-gamelift-alpha.GameSessionQueue": {
|
|
6954
7025
|
"assembly": "@aws-cdk/aws-gamelift-alpha",
|
|
7026
|
+
"base": "@aws-cdk/aws-gamelift-alpha.GameSessionQueueBase",
|
|
6955
7027
|
"docs": {
|
|
7028
|
+
"custom": {
|
|
7029
|
+
"resource": "AWS::GameLift::GameSessionQueue",
|
|
7030
|
+
"exampleMetadata": "infused"
|
|
7031
|
+
},
|
|
7032
|
+
"remarks": "A queue uses FleetIQ algorithms to determine the best placement locations and find an available game server, then prompts the game server to start a new game session.\nQueues can have destinations (GameLift fleets or gameSessionQueuees), which determine where the queue can place new game sessions.\nA queue can have destinations with varied fleet type (Spot and On-Demand), instance type, and AWS Region.",
|
|
6956
7033
|
"stability": "experimental",
|
|
6957
|
-
"summary": "
|
|
7034
|
+
"summary": "The GameSessionQueue resource creates a placement queue that processes requests for new game sessions.",
|
|
7035
|
+
"example": "declare const fleet: gamelift.BuildFleet;\ndeclare const alias: gamelift.Alias;\n\nconst queue = new gamelift.GameSessionQueue(this, 'GameSessionQueue', {\n gameSessionQueueName: 'my-queue-name',\n destinations: [fleet]\n});\nqueue.addDestination(alias);"
|
|
6958
7036
|
},
|
|
6959
|
-
"fqn": "@aws-cdk/aws-gamelift-alpha.
|
|
6960
|
-
"
|
|
6961
|
-
"
|
|
6962
|
-
|
|
6963
|
-
|
|
7037
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.GameSessionQueue",
|
|
7038
|
+
"initializer": {
|
|
7039
|
+
"docs": {
|
|
7040
|
+
"stability": "experimental"
|
|
7041
|
+
},
|
|
7042
|
+
"locationInModule": {
|
|
7043
|
+
"filename": "lib/game-session-queue.ts",
|
|
7044
|
+
"line": 359
|
|
7045
|
+
},
|
|
7046
|
+
"parameters": [
|
|
7047
|
+
{
|
|
7048
|
+
"name": "scope",
|
|
7049
|
+
"type": {
|
|
7050
|
+
"fqn": "constructs.Construct"
|
|
7051
|
+
}
|
|
7052
|
+
},
|
|
7053
|
+
{
|
|
7054
|
+
"name": "id",
|
|
7055
|
+
"type": {
|
|
7056
|
+
"primitive": "string"
|
|
7057
|
+
}
|
|
7058
|
+
},
|
|
7059
|
+
{
|
|
7060
|
+
"name": "props",
|
|
7061
|
+
"type": {
|
|
7062
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.GameSessionQueueProps"
|
|
7063
|
+
}
|
|
7064
|
+
}
|
|
7065
|
+
]
|
|
7066
|
+
},
|
|
7067
|
+
"kind": "class",
|
|
6964
7068
|
"locationInModule": {
|
|
6965
|
-
"filename": "lib/
|
|
6966
|
-
"line":
|
|
7069
|
+
"filename": "lib/game-session-queue.ts",
|
|
7070
|
+
"line": 298
|
|
6967
7071
|
},
|
|
6968
|
-
"
|
|
6969
|
-
"properties": [
|
|
7072
|
+
"methods": [
|
|
6970
7073
|
{
|
|
6971
|
-
"abstract": true,
|
|
6972
7074
|
"docs": {
|
|
6973
|
-
"custom": {
|
|
6974
|
-
"attribute": "true"
|
|
6975
|
-
},
|
|
6976
7075
|
"stability": "experimental",
|
|
6977
|
-
"summary": "
|
|
7076
|
+
"summary": "Import an existing gameSessionQueue from its ARN."
|
|
6978
7077
|
},
|
|
6979
|
-
"immutable": true,
|
|
6980
7078
|
"locationInModule": {
|
|
6981
|
-
"filename": "lib/
|
|
6982
|
-
"line":
|
|
7079
|
+
"filename": "lib/game-session-queue.ts",
|
|
7080
|
+
"line": 310
|
|
6983
7081
|
},
|
|
6984
|
-
"name": "
|
|
6985
|
-
"
|
|
6986
|
-
|
|
6987
|
-
|
|
7082
|
+
"name": "fromGameSessionQueueArn",
|
|
7083
|
+
"parameters": [
|
|
7084
|
+
{
|
|
7085
|
+
"name": "scope",
|
|
7086
|
+
"type": {
|
|
7087
|
+
"fqn": "constructs.Construct"
|
|
7088
|
+
}
|
|
7089
|
+
},
|
|
7090
|
+
{
|
|
7091
|
+
"name": "id",
|
|
7092
|
+
"type": {
|
|
7093
|
+
"primitive": "string"
|
|
7094
|
+
}
|
|
7095
|
+
},
|
|
7096
|
+
{
|
|
7097
|
+
"name": "gameSessionQueueArn",
|
|
7098
|
+
"type": {
|
|
7099
|
+
"primitive": "string"
|
|
7100
|
+
}
|
|
7101
|
+
}
|
|
7102
|
+
],
|
|
7103
|
+
"returns": {
|
|
7104
|
+
"type": {
|
|
7105
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.IGameSessionQueue"
|
|
7106
|
+
}
|
|
7107
|
+
},
|
|
7108
|
+
"static": true
|
|
6988
7109
|
},
|
|
6989
7110
|
{
|
|
6990
|
-
"abstract": true,
|
|
6991
7111
|
"docs": {
|
|
6992
|
-
"custom": {
|
|
6993
|
-
"attribute": "true"
|
|
6994
|
-
},
|
|
6995
7112
|
"stability": "experimental",
|
|
6996
|
-
"summary": "
|
|
7113
|
+
"summary": "Import an existing gameSessionQueue from its attributes."
|
|
6997
7114
|
},
|
|
6998
|
-
"immutable": true,
|
|
6999
7115
|
"locationInModule": {
|
|
7000
|
-
"filename": "lib/
|
|
7001
|
-
"line":
|
|
7116
|
+
"filename": "lib/game-session-queue.ts",
|
|
7117
|
+
"line": 317
|
|
7002
7118
|
},
|
|
7003
|
-
"name": "
|
|
7004
|
-
"
|
|
7005
|
-
|
|
7006
|
-
|
|
7007
|
-
|
|
7008
|
-
|
|
7009
|
-
|
|
7010
|
-
},
|
|
7011
|
-
"@aws-cdk/aws-gamelift-alpha.IBuild": {
|
|
7012
|
-
"assembly": "@aws-cdk/aws-gamelift-alpha",
|
|
7013
|
-
"docs": {
|
|
7014
|
-
"remarks": "A game build represents the set of files that run your game server on a particular operating system.\nYou can have many different builds, such as for different flavors of your game.\nThe game build must be integrated with the GameLift service.\nYou upload game build files to the GameLift service in the Regions where you plan to set up fleets.",
|
|
7015
|
-
"see": "https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-build-cli-uploading.html",
|
|
7016
|
-
"stability": "experimental",
|
|
7017
|
-
"summary": "Your custom-built game server software that runs on GameLift and hosts game sessions for your players."
|
|
7018
|
-
},
|
|
7019
|
-
"fqn": "@aws-cdk/aws-gamelift-alpha.IBuild",
|
|
7020
|
-
"interfaces": [
|
|
7021
|
-
"aws-cdk-lib.IResource",
|
|
7022
|
-
"aws-cdk-lib.aws_iam.IGrantable"
|
|
7023
|
-
],
|
|
7024
|
-
"kind": "interface",
|
|
7025
|
-
"locationInModule": {
|
|
7026
|
-
"filename": "lib/build.ts",
|
|
7027
|
-
"line": 18
|
|
7028
|
-
},
|
|
7029
|
-
"name": "IBuild",
|
|
7030
|
-
"properties": [
|
|
7031
|
-
{
|
|
7032
|
-
"abstract": true,
|
|
7033
|
-
"docs": {
|
|
7034
|
-
"custom": {
|
|
7035
|
-
"attribute": "true"
|
|
7119
|
+
"name": "fromGameSessionQueueAttributes",
|
|
7120
|
+
"parameters": [
|
|
7121
|
+
{
|
|
7122
|
+
"name": "scope",
|
|
7123
|
+
"type": {
|
|
7124
|
+
"fqn": "constructs.Construct"
|
|
7125
|
+
}
|
|
7036
7126
|
},
|
|
7037
|
-
|
|
7038
|
-
|
|
7039
|
-
|
|
7040
|
-
|
|
7041
|
-
|
|
7042
|
-
|
|
7043
|
-
|
|
7127
|
+
{
|
|
7128
|
+
"name": "id",
|
|
7129
|
+
"type": {
|
|
7130
|
+
"primitive": "string"
|
|
7131
|
+
}
|
|
7132
|
+
},
|
|
7133
|
+
{
|
|
7134
|
+
"name": "attrs",
|
|
7135
|
+
"type": {
|
|
7136
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.GameSessionQueueAttributes"
|
|
7137
|
+
}
|
|
7138
|
+
}
|
|
7139
|
+
],
|
|
7140
|
+
"returns": {
|
|
7141
|
+
"type": {
|
|
7142
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.IGameSessionQueue"
|
|
7143
|
+
}
|
|
7044
7144
|
},
|
|
7045
|
-
"
|
|
7046
|
-
"type": {
|
|
7047
|
-
"primitive": "string"
|
|
7048
|
-
}
|
|
7145
|
+
"static": true
|
|
7049
7146
|
},
|
|
7050
7147
|
{
|
|
7051
|
-
"abstract": true,
|
|
7052
7148
|
"docs": {
|
|
7053
|
-
"custom": {
|
|
7054
|
-
"attribute": "true"
|
|
7055
|
-
},
|
|
7056
7149
|
"stability": "experimental",
|
|
7057
|
-
"summary": "
|
|
7150
|
+
"summary": "Import an existing gameSessionQueue from its name."
|
|
7058
7151
|
},
|
|
7059
|
-
"immutable": true,
|
|
7060
7152
|
"locationInModule": {
|
|
7061
|
-
"filename": "lib/
|
|
7062
|
-
"line":
|
|
7153
|
+
"filename": "lib/game-session-queue.ts",
|
|
7154
|
+
"line": 303
|
|
7063
7155
|
},
|
|
7064
|
-
"name": "
|
|
7065
|
-
"
|
|
7066
|
-
|
|
7067
|
-
|
|
7068
|
-
|
|
7069
|
-
|
|
7070
|
-
|
|
7071
|
-
|
|
7072
|
-
|
|
7073
|
-
|
|
7156
|
+
"name": "fromGameSessionQueueName",
|
|
7157
|
+
"parameters": [
|
|
7158
|
+
{
|
|
7159
|
+
"name": "scope",
|
|
7160
|
+
"type": {
|
|
7161
|
+
"fqn": "constructs.Construct"
|
|
7162
|
+
}
|
|
7163
|
+
},
|
|
7164
|
+
{
|
|
7165
|
+
"name": "id",
|
|
7166
|
+
"type": {
|
|
7167
|
+
"primitive": "string"
|
|
7168
|
+
}
|
|
7169
|
+
},
|
|
7170
|
+
{
|
|
7171
|
+
"name": "gameSessionQueueName",
|
|
7172
|
+
"type": {
|
|
7173
|
+
"primitive": "string"
|
|
7174
|
+
}
|
|
7175
|
+
}
|
|
7176
|
+
],
|
|
7177
|
+
"returns": {
|
|
7178
|
+
"type": {
|
|
7179
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.IGameSessionQueue"
|
|
7180
|
+
}
|
|
7181
|
+
},
|
|
7182
|
+
"static": true
|
|
7183
|
+
},
|
|
7184
|
+
{
|
|
7185
|
+
"docs": {
|
|
7186
|
+
"stability": "experimental",
|
|
7187
|
+
"summary": "Adds a destination to fulfill requests for new game sessions."
|
|
7188
|
+
},
|
|
7189
|
+
"locationInModule": {
|
|
7190
|
+
"filename": "lib/game-session-queue.ts",
|
|
7191
|
+
"line": 410
|
|
7192
|
+
},
|
|
7193
|
+
"name": "addDestination",
|
|
7194
|
+
"parameters": [
|
|
7195
|
+
{
|
|
7196
|
+
"docs": {
|
|
7197
|
+
"summary": "A destination to add."
|
|
7198
|
+
},
|
|
7199
|
+
"name": "destination",
|
|
7200
|
+
"type": {
|
|
7201
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.IGameSessionQueueDestination"
|
|
7202
|
+
}
|
|
7203
|
+
}
|
|
7204
|
+
]
|
|
7205
|
+
},
|
|
7206
|
+
{
|
|
7207
|
+
"docs": {
|
|
7208
|
+
"stability": "experimental"
|
|
7209
|
+
},
|
|
7210
|
+
"locationInModule": {
|
|
7211
|
+
"filename": "lib/game-session-queue.ts",
|
|
7212
|
+
"line": 448
|
|
7213
|
+
},
|
|
7214
|
+
"name": "parseFilterConfiguration",
|
|
7215
|
+
"parameters": [
|
|
7216
|
+
{
|
|
7217
|
+
"name": "props",
|
|
7218
|
+
"type": {
|
|
7219
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.GameSessionQueueProps"
|
|
7220
|
+
}
|
|
7221
|
+
}
|
|
7222
|
+
],
|
|
7223
|
+
"protected": true,
|
|
7224
|
+
"returns": {
|
|
7225
|
+
"optional": true,
|
|
7226
|
+
"type": {
|
|
7227
|
+
"fqn": "aws-cdk-lib.aws_gamelift.CfnGameSessionQueue.FilterConfigurationProperty"
|
|
7228
|
+
}
|
|
7229
|
+
}
|
|
7230
|
+
},
|
|
7231
|
+
{
|
|
7232
|
+
"docs": {
|
|
7233
|
+
"stability": "experimental"
|
|
7234
|
+
},
|
|
7235
|
+
"locationInModule": {
|
|
7236
|
+
"filename": "lib/game-session-queue.ts",
|
|
7237
|
+
"line": 433
|
|
7238
|
+
},
|
|
7239
|
+
"name": "parsePlayerLatencyPolicies",
|
|
7240
|
+
"parameters": [
|
|
7241
|
+
{
|
|
7242
|
+
"name": "props",
|
|
7243
|
+
"type": {
|
|
7244
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.GameSessionQueueProps"
|
|
7245
|
+
}
|
|
7246
|
+
}
|
|
7247
|
+
],
|
|
7248
|
+
"protected": true,
|
|
7249
|
+
"returns": {
|
|
7250
|
+
"optional": true,
|
|
7251
|
+
"type": {
|
|
7252
|
+
"collection": {
|
|
7253
|
+
"elementtype": {
|
|
7254
|
+
"fqn": "aws-cdk-lib.aws_gamelift.CfnGameSessionQueue.PlayerLatencyPolicyProperty"
|
|
7255
|
+
},
|
|
7256
|
+
"kind": "array"
|
|
7257
|
+
}
|
|
7258
|
+
}
|
|
7259
|
+
}
|
|
7260
|
+
},
|
|
7261
|
+
{
|
|
7262
|
+
"docs": {
|
|
7263
|
+
"stability": "experimental"
|
|
7264
|
+
},
|
|
7265
|
+
"locationInModule": {
|
|
7266
|
+
"filename": "lib/game-session-queue.ts",
|
|
7267
|
+
"line": 414
|
|
7268
|
+
},
|
|
7269
|
+
"name": "parsePriorityConfiguration",
|
|
7270
|
+
"parameters": [
|
|
7271
|
+
{
|
|
7272
|
+
"name": "props",
|
|
7273
|
+
"type": {
|
|
7274
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.GameSessionQueueProps"
|
|
7275
|
+
}
|
|
7276
|
+
}
|
|
7277
|
+
],
|
|
7278
|
+
"protected": true,
|
|
7279
|
+
"returns": {
|
|
7280
|
+
"optional": true,
|
|
7281
|
+
"type": {
|
|
7282
|
+
"fqn": "aws-cdk-lib.aws_gamelift.CfnGameSessionQueue.PriorityConfigurationProperty"
|
|
7283
|
+
}
|
|
7284
|
+
}
|
|
7285
|
+
}
|
|
7286
|
+
],
|
|
7287
|
+
"name": "GameSessionQueue",
|
|
7288
|
+
"properties": [
|
|
7289
|
+
{
|
|
7290
|
+
"docs": {
|
|
7291
|
+
"stability": "experimental",
|
|
7292
|
+
"summary": "The ARN of the gameSessionQueue."
|
|
7293
|
+
},
|
|
7294
|
+
"immutable": true,
|
|
7295
|
+
"locationInModule": {
|
|
7296
|
+
"filename": "lib/game-session-queue.ts",
|
|
7297
|
+
"line": 355
|
|
7298
|
+
},
|
|
7299
|
+
"name": "gameSessionQueueArn",
|
|
7300
|
+
"overrides": "@aws-cdk/aws-gamelift-alpha.GameSessionQueueBase",
|
|
7301
|
+
"type": {
|
|
7302
|
+
"primitive": "string"
|
|
7303
|
+
}
|
|
7304
|
+
},
|
|
7305
|
+
{
|
|
7306
|
+
"docs": {
|
|
7307
|
+
"stability": "experimental",
|
|
7308
|
+
"summary": "The Identifier of the gameSessionQueue."
|
|
7309
|
+
},
|
|
7310
|
+
"immutable": true,
|
|
7311
|
+
"locationInModule": {
|
|
7312
|
+
"filename": "lib/game-session-queue.ts",
|
|
7313
|
+
"line": 350
|
|
7314
|
+
},
|
|
7315
|
+
"name": "gameSessionQueueName",
|
|
7316
|
+
"overrides": "@aws-cdk/aws-gamelift-alpha.GameSessionQueueBase",
|
|
7317
|
+
"type": {
|
|
7318
|
+
"primitive": "string"
|
|
7319
|
+
}
|
|
7320
|
+
}
|
|
7321
|
+
],
|
|
7322
|
+
"symbolId": "lib/game-session-queue:GameSessionQueue"
|
|
7323
|
+
},
|
|
7324
|
+
"@aws-cdk/aws-gamelift-alpha.GameSessionQueueAttributes": {
|
|
7325
|
+
"assembly": "@aws-cdk/aws-gamelift-alpha",
|
|
7326
|
+
"datatype": true,
|
|
7327
|
+
"docs": {
|
|
7328
|
+
"stability": "experimental",
|
|
7329
|
+
"summary": "A full specification of an gameSessionQueue that can be used to import it fluently into the CDK application.",
|
|
7330
|
+
"example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as gamelift_alpha from '@aws-cdk/aws-gamelift-alpha';\nconst gameSessionQueueAttributes: gamelift_alpha.GameSessionQueueAttributes = {\n gameSessionQueueArn: 'gameSessionQueueArn',\n gameSessionQueueName: 'gameSessionQueueName',\n};",
|
|
7331
|
+
"custom": {
|
|
7332
|
+
"exampleMetadata": "fixture=_generated"
|
|
7333
|
+
}
|
|
7334
|
+
},
|
|
7335
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.GameSessionQueueAttributes",
|
|
7336
|
+
"kind": "interface",
|
|
7337
|
+
"locationInModule": {
|
|
7338
|
+
"filename": "lib/game-session-queue.ts",
|
|
7339
|
+
"line": 148
|
|
7340
|
+
},
|
|
7341
|
+
"name": "GameSessionQueueAttributes",
|
|
7342
|
+
"properties": [
|
|
7343
|
+
{
|
|
7344
|
+
"abstract": true,
|
|
7345
|
+
"docs": {
|
|
7346
|
+
"default": "derived from `gameSessionQueueName`.",
|
|
7347
|
+
"remarks": "At least one of `gameSessionQueueArn` and `gameSessionQueueName` must be provided.",
|
|
7348
|
+
"stability": "experimental",
|
|
7349
|
+
"summary": "The ARN of the gameSessionQueue."
|
|
7350
|
+
},
|
|
7351
|
+
"immutable": true,
|
|
7352
|
+
"locationInModule": {
|
|
7353
|
+
"filename": "lib/game-session-queue.ts",
|
|
7354
|
+
"line": 156
|
|
7355
|
+
},
|
|
7356
|
+
"name": "gameSessionQueueArn",
|
|
7357
|
+
"optional": true,
|
|
7358
|
+
"type": {
|
|
7359
|
+
"primitive": "string"
|
|
7360
|
+
}
|
|
7361
|
+
},
|
|
7362
|
+
{
|
|
7363
|
+
"abstract": true,
|
|
7364
|
+
"docs": {
|
|
7365
|
+
"default": "derived from `gameSessionQueueArn`.",
|
|
7366
|
+
"remarks": "At least one of `gameSessionQueueName` and `gameSessionQueueArn` must be provided.",
|
|
7367
|
+
"stability": "experimental",
|
|
7368
|
+
"summary": "The name of the gameSessionQueue."
|
|
7369
|
+
},
|
|
7370
|
+
"immutable": true,
|
|
7371
|
+
"locationInModule": {
|
|
7372
|
+
"filename": "lib/game-session-queue.ts",
|
|
7373
|
+
"line": 165
|
|
7374
|
+
},
|
|
7375
|
+
"name": "gameSessionQueueName",
|
|
7376
|
+
"optional": true,
|
|
7377
|
+
"type": {
|
|
7378
|
+
"primitive": "string"
|
|
7379
|
+
}
|
|
7380
|
+
}
|
|
7381
|
+
],
|
|
7382
|
+
"symbolId": "lib/game-session-queue:GameSessionQueueAttributes"
|
|
7383
|
+
},
|
|
7384
|
+
"@aws-cdk/aws-gamelift-alpha.GameSessionQueueBase": {
|
|
7385
|
+
"abstract": true,
|
|
7386
|
+
"assembly": "@aws-cdk/aws-gamelift-alpha",
|
|
7387
|
+
"base": "aws-cdk-lib.Resource",
|
|
7388
|
+
"docs": {
|
|
7389
|
+
"stability": "experimental",
|
|
7390
|
+
"summary": "Base class for new and imported GameLift GameSessionQueue."
|
|
7391
|
+
},
|
|
7392
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.GameSessionQueueBase",
|
|
7393
|
+
"initializer": {
|
|
7394
|
+
"docs": {
|
|
7395
|
+
"stability": "stable"
|
|
7396
|
+
},
|
|
7397
|
+
"locationInModule": {
|
|
7398
|
+
"filename": "core/lib/resource.ts",
|
|
7399
|
+
"line": 156
|
|
7400
|
+
},
|
|
7401
|
+
"parameters": [
|
|
7402
|
+
{
|
|
7403
|
+
"name": "scope",
|
|
7404
|
+
"type": {
|
|
7405
|
+
"fqn": "constructs.Construct"
|
|
7406
|
+
}
|
|
7407
|
+
},
|
|
7408
|
+
{
|
|
7409
|
+
"name": "id",
|
|
7410
|
+
"type": {
|
|
7411
|
+
"primitive": "string"
|
|
7412
|
+
}
|
|
7413
|
+
},
|
|
7414
|
+
{
|
|
7415
|
+
"name": "props",
|
|
7416
|
+
"optional": true,
|
|
7417
|
+
"type": {
|
|
7418
|
+
"fqn": "aws-cdk-lib.ResourceProps"
|
|
7419
|
+
}
|
|
7420
|
+
}
|
|
7421
|
+
]
|
|
7422
|
+
},
|
|
7423
|
+
"interfaces": [
|
|
7424
|
+
"@aws-cdk/aws-gamelift-alpha.IGameSessionQueue"
|
|
7425
|
+
],
|
|
7426
|
+
"kind": "class",
|
|
7427
|
+
"locationInModule": {
|
|
7428
|
+
"filename": "lib/game-session-queue.ts",
|
|
7429
|
+
"line": 244
|
|
7430
|
+
},
|
|
7431
|
+
"methods": [
|
|
7432
|
+
{
|
|
7433
|
+
"docs": {
|
|
7434
|
+
"stability": "experimental",
|
|
7435
|
+
"summary": "Return the given named metric for this fleet."
|
|
7436
|
+
},
|
|
7437
|
+
"locationInModule": {
|
|
7438
|
+
"filename": "lib/game-session-queue.ts",
|
|
7439
|
+
"line": 254
|
|
7440
|
+
},
|
|
7441
|
+
"name": "metric",
|
|
7442
|
+
"overrides": "@aws-cdk/aws-gamelift-alpha.IGameSessionQueue",
|
|
7443
|
+
"parameters": [
|
|
7444
|
+
{
|
|
7445
|
+
"name": "metricName",
|
|
7446
|
+
"type": {
|
|
7447
|
+
"primitive": "string"
|
|
7448
|
+
}
|
|
7449
|
+
},
|
|
7450
|
+
{
|
|
7451
|
+
"name": "props",
|
|
7452
|
+
"optional": true,
|
|
7453
|
+
"type": {
|
|
7454
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.MetricOptions"
|
|
7455
|
+
}
|
|
7456
|
+
}
|
|
7457
|
+
],
|
|
7458
|
+
"returns": {
|
|
7459
|
+
"type": {
|
|
7460
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
|
|
7461
|
+
}
|
|
7462
|
+
}
|
|
7463
|
+
},
|
|
7464
|
+
{
|
|
7465
|
+
"docs": {
|
|
7466
|
+
"stability": "experimental",
|
|
7467
|
+
"summary": "Average amount of time that game session placement requests in the queue with status PENDING have been waiting to be fulfilled."
|
|
7468
|
+
},
|
|
7469
|
+
"locationInModule": {
|
|
7470
|
+
"filename": "lib/game-session-queue.ts",
|
|
7471
|
+
"line": 265
|
|
7472
|
+
},
|
|
7473
|
+
"name": "metricAverageWaitTime",
|
|
7474
|
+
"overrides": "@aws-cdk/aws-gamelift-alpha.IGameSessionQueue",
|
|
7475
|
+
"parameters": [
|
|
7476
|
+
{
|
|
7477
|
+
"name": "props",
|
|
7478
|
+
"optional": true,
|
|
7479
|
+
"type": {
|
|
7480
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.MetricOptions"
|
|
7481
|
+
}
|
|
7482
|
+
}
|
|
7483
|
+
],
|
|
7484
|
+
"returns": {
|
|
7485
|
+
"type": {
|
|
7486
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
|
|
7487
|
+
}
|
|
7488
|
+
}
|
|
7489
|
+
},
|
|
7490
|
+
{
|
|
7491
|
+
"docs": {
|
|
7492
|
+
"stability": "experimental",
|
|
7493
|
+
"summary": "Game session placement requests that were canceled before timing out since the last report."
|
|
7494
|
+
},
|
|
7495
|
+
"locationInModule": {
|
|
7496
|
+
"filename": "lib/game-session-queue.ts",
|
|
7497
|
+
"line": 269
|
|
7498
|
+
},
|
|
7499
|
+
"name": "metricPlacementsCanceled",
|
|
7500
|
+
"overrides": "@aws-cdk/aws-gamelift-alpha.IGameSessionQueue",
|
|
7501
|
+
"parameters": [
|
|
7502
|
+
{
|
|
7503
|
+
"name": "props",
|
|
7504
|
+
"optional": true,
|
|
7505
|
+
"type": {
|
|
7506
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.MetricOptions"
|
|
7507
|
+
}
|
|
7508
|
+
}
|
|
7509
|
+
],
|
|
7510
|
+
"returns": {
|
|
7511
|
+
"type": {
|
|
7512
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
|
|
7513
|
+
}
|
|
7514
|
+
}
|
|
7515
|
+
},
|
|
7516
|
+
{
|
|
7517
|
+
"docs": {
|
|
7518
|
+
"stability": "experimental",
|
|
7519
|
+
"summary": "Game session placement requests that failed for any reason since the last report."
|
|
7520
|
+
},
|
|
7521
|
+
"locationInModule": {
|
|
7522
|
+
"filename": "lib/game-session-queue.ts",
|
|
7523
|
+
"line": 273
|
|
7524
|
+
},
|
|
7525
|
+
"name": "metricPlacementsFailed",
|
|
7526
|
+
"overrides": "@aws-cdk/aws-gamelift-alpha.IGameSessionQueue",
|
|
7527
|
+
"parameters": [
|
|
7528
|
+
{
|
|
7529
|
+
"name": "props",
|
|
7530
|
+
"optional": true,
|
|
7531
|
+
"type": {
|
|
7532
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.MetricOptions"
|
|
7533
|
+
}
|
|
7534
|
+
}
|
|
7535
|
+
],
|
|
7536
|
+
"returns": {
|
|
7537
|
+
"type": {
|
|
7538
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
|
|
7539
|
+
}
|
|
7540
|
+
}
|
|
7541
|
+
},
|
|
7542
|
+
{
|
|
7543
|
+
"docs": {
|
|
7544
|
+
"stability": "experimental",
|
|
7545
|
+
"summary": "New game session placement requests that were added to the queue since the last report."
|
|
7546
|
+
},
|
|
7547
|
+
"locationInModule": {
|
|
7548
|
+
"filename": "lib/game-session-queue.ts",
|
|
7549
|
+
"line": 277
|
|
7550
|
+
},
|
|
7551
|
+
"name": "metricPlacementsStarted",
|
|
7552
|
+
"overrides": "@aws-cdk/aws-gamelift-alpha.IGameSessionQueue",
|
|
7553
|
+
"parameters": [
|
|
7554
|
+
{
|
|
7555
|
+
"name": "props",
|
|
7556
|
+
"optional": true,
|
|
7557
|
+
"type": {
|
|
7558
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.MetricOptions"
|
|
7559
|
+
}
|
|
7560
|
+
}
|
|
7561
|
+
],
|
|
7562
|
+
"returns": {
|
|
7563
|
+
"type": {
|
|
7564
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
|
|
7565
|
+
}
|
|
7566
|
+
}
|
|
7567
|
+
},
|
|
7568
|
+
{
|
|
7569
|
+
"docs": {
|
|
7570
|
+
"stability": "experimental",
|
|
7571
|
+
"summary": "Game session placement requests that resulted in a new game session since the last report."
|
|
7572
|
+
},
|
|
7573
|
+
"locationInModule": {
|
|
7574
|
+
"filename": "lib/game-session-queue.ts",
|
|
7575
|
+
"line": 281
|
|
7576
|
+
},
|
|
7577
|
+
"name": "metricPlacementsSucceeded",
|
|
7578
|
+
"overrides": "@aws-cdk/aws-gamelift-alpha.IGameSessionQueue",
|
|
7579
|
+
"parameters": [
|
|
7580
|
+
{
|
|
7581
|
+
"name": "props",
|
|
7582
|
+
"optional": true,
|
|
7583
|
+
"type": {
|
|
7584
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.MetricOptions"
|
|
7585
|
+
}
|
|
7586
|
+
}
|
|
7587
|
+
],
|
|
7588
|
+
"returns": {
|
|
7589
|
+
"type": {
|
|
7590
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
|
|
7591
|
+
}
|
|
7592
|
+
}
|
|
7593
|
+
},
|
|
7594
|
+
{
|
|
7595
|
+
"docs": {
|
|
7596
|
+
"stability": "experimental",
|
|
7597
|
+
"summary": "Game session placement requests that reached the queue's timeout limit without being fulfilled since the last report."
|
|
7598
|
+
},
|
|
7599
|
+
"locationInModule": {
|
|
7600
|
+
"filename": "lib/game-session-queue.ts",
|
|
7601
|
+
"line": 285
|
|
7602
|
+
},
|
|
7603
|
+
"name": "metricPlacementsTimedOut",
|
|
7604
|
+
"overrides": "@aws-cdk/aws-gamelift-alpha.IGameSessionQueue",
|
|
7605
|
+
"parameters": [
|
|
7606
|
+
{
|
|
7607
|
+
"name": "props",
|
|
7608
|
+
"optional": true,
|
|
7609
|
+
"type": {
|
|
7610
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.MetricOptions"
|
|
7611
|
+
}
|
|
7612
|
+
}
|
|
7613
|
+
],
|
|
7614
|
+
"returns": {
|
|
7615
|
+
"type": {
|
|
7616
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
|
|
7617
|
+
}
|
|
7618
|
+
}
|
|
7619
|
+
}
|
|
7620
|
+
],
|
|
7621
|
+
"name": "GameSessionQueueBase",
|
|
7622
|
+
"properties": [
|
|
7623
|
+
{
|
|
7624
|
+
"abstract": true,
|
|
7625
|
+
"docs": {
|
|
7626
|
+
"stability": "experimental",
|
|
7627
|
+
"summary": "The ARN of the gameSessionQueue."
|
|
7628
|
+
},
|
|
7629
|
+
"immutable": true,
|
|
7630
|
+
"locationInModule": {
|
|
7631
|
+
"filename": "lib/game-session-queue.ts",
|
|
7632
|
+
"line": 252
|
|
7633
|
+
},
|
|
7634
|
+
"name": "gameSessionQueueArn",
|
|
7635
|
+
"overrides": "@aws-cdk/aws-gamelift-alpha.IGameSessionQueue",
|
|
7636
|
+
"type": {
|
|
7637
|
+
"primitive": "string"
|
|
7638
|
+
}
|
|
7639
|
+
},
|
|
7640
|
+
{
|
|
7641
|
+
"abstract": true,
|
|
7642
|
+
"docs": {
|
|
7643
|
+
"stability": "experimental",
|
|
7644
|
+
"summary": "The name of the gameSessionQueue."
|
|
7645
|
+
},
|
|
7646
|
+
"immutable": true,
|
|
7647
|
+
"locationInModule": {
|
|
7648
|
+
"filename": "lib/game-session-queue.ts",
|
|
7649
|
+
"line": 248
|
|
7650
|
+
},
|
|
7651
|
+
"name": "gameSessionQueueName",
|
|
7652
|
+
"overrides": "@aws-cdk/aws-gamelift-alpha.IGameSessionQueue",
|
|
7653
|
+
"type": {
|
|
7654
|
+
"primitive": "string"
|
|
7655
|
+
}
|
|
7656
|
+
}
|
|
7657
|
+
],
|
|
7658
|
+
"symbolId": "lib/game-session-queue:GameSessionQueueBase"
|
|
7659
|
+
},
|
|
7660
|
+
"@aws-cdk/aws-gamelift-alpha.GameSessionQueueProps": {
|
|
7661
|
+
"assembly": "@aws-cdk/aws-gamelift-alpha",
|
|
7662
|
+
"datatype": true,
|
|
7663
|
+
"docs": {
|
|
7664
|
+
"stability": "experimental",
|
|
7665
|
+
"summary": "Properties for a new Fleet gameSessionQueue.",
|
|
7666
|
+
"example": "declare const fleet: gamelift.BuildFleet;\ndeclare const alias: gamelift.Alias;\n\nconst queue = new gamelift.GameSessionQueue(this, 'GameSessionQueue', {\n gameSessionQueueName: 'my-queue-name',\n destinations: [fleet]\n});\nqueue.addDestination(alias);",
|
|
7667
|
+
"custom": {
|
|
7668
|
+
"exampleMetadata": "infused"
|
|
7669
|
+
}
|
|
7670
|
+
},
|
|
7671
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.GameSessionQueueProps",
|
|
7672
|
+
"kind": "interface",
|
|
7673
|
+
"locationInModule": {
|
|
7674
|
+
"filename": "lib/game-session-queue.ts",
|
|
7675
|
+
"line": 171
|
|
7676
|
+
},
|
|
7677
|
+
"name": "GameSessionQueueProps",
|
|
7678
|
+
"properties": [
|
|
7679
|
+
{
|
|
7680
|
+
"abstract": true,
|
|
7681
|
+
"docs": {
|
|
7682
|
+
"remarks": "Destinations are listed in order of placement preference.",
|
|
7683
|
+
"stability": "experimental",
|
|
7684
|
+
"summary": "A list of fleets and/or fleet alias that can be used to fulfill game session placement requests in the queue."
|
|
7685
|
+
},
|
|
7686
|
+
"immutable": true,
|
|
7687
|
+
"locationInModule": {
|
|
7688
|
+
"filename": "lib/game-session-queue.ts",
|
|
7689
|
+
"line": 238
|
|
7690
|
+
},
|
|
7691
|
+
"name": "destinations",
|
|
7692
|
+
"type": {
|
|
7693
|
+
"collection": {
|
|
7694
|
+
"elementtype": {
|
|
7695
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.IGameSessionQueueDestination"
|
|
7696
|
+
},
|
|
7697
|
+
"kind": "array"
|
|
7698
|
+
}
|
|
7699
|
+
}
|
|
7700
|
+
},
|
|
7701
|
+
{
|
|
7702
|
+
"abstract": true,
|
|
7703
|
+
"docs": {
|
|
7704
|
+
"stability": "experimental",
|
|
7705
|
+
"summary": "Name of this gameSessionQueue."
|
|
7706
|
+
},
|
|
7707
|
+
"immutable": true,
|
|
7708
|
+
"locationInModule": {
|
|
7709
|
+
"filename": "lib/game-session-queue.ts",
|
|
7710
|
+
"line": 175
|
|
7711
|
+
},
|
|
7712
|
+
"name": "gameSessionQueueName",
|
|
7713
|
+
"type": {
|
|
7714
|
+
"primitive": "string"
|
|
7715
|
+
}
|
|
7716
|
+
},
|
|
7717
|
+
{
|
|
7718
|
+
"abstract": true,
|
|
7719
|
+
"docs": {
|
|
7720
|
+
"default": "game sessions can be placed in any queue location",
|
|
7721
|
+
"remarks": "Locations are specified in the form of AWS Region codes, such as `us-west-2`.\n\nFor queues that have multi-location fleets, you can use a filter configuration allow placement with some, but not all of these locations.",
|
|
7722
|
+
"stability": "experimental",
|
|
7723
|
+
"summary": "A list of locations where a queue is allowed to place new game sessions."
|
|
7724
|
+
},
|
|
7725
|
+
"immutable": true,
|
|
7726
|
+
"locationInModule": {
|
|
7727
|
+
"filename": "lib/game-session-queue.ts",
|
|
7728
|
+
"line": 193
|
|
7729
|
+
},
|
|
7730
|
+
"name": "allowedLocations",
|
|
7731
|
+
"optional": true,
|
|
7732
|
+
"type": {
|
|
7733
|
+
"collection": {
|
|
7734
|
+
"elementtype": {
|
|
7735
|
+
"primitive": "string"
|
|
7736
|
+
},
|
|
7737
|
+
"kind": "array"
|
|
7738
|
+
}
|
|
7739
|
+
}
|
|
7740
|
+
},
|
|
7741
|
+
{
|
|
7742
|
+
"abstract": true,
|
|
7743
|
+
"docs": {
|
|
7744
|
+
"default": "no customer event data",
|
|
7745
|
+
"stability": "experimental",
|
|
7746
|
+
"summary": "Information to be added to all events that are related to this game session queue."
|
|
7747
|
+
},
|
|
7748
|
+
"immutable": true,
|
|
7749
|
+
"locationInModule": {
|
|
7750
|
+
"filename": "lib/game-session-queue.ts",
|
|
7751
|
+
"line": 182
|
|
7752
|
+
},
|
|
7753
|
+
"name": "customEventData",
|
|
7754
|
+
"optional": true,
|
|
7755
|
+
"type": {
|
|
7756
|
+
"primitive": "string"
|
|
7757
|
+
}
|
|
7758
|
+
},
|
|
7759
|
+
{
|
|
7760
|
+
"abstract": true,
|
|
7761
|
+
"docs": {
|
|
7762
|
+
"default": "no notification",
|
|
7763
|
+
"see": "https://docs.aws.amazon.com/gamelift/latest/developerguide/queue-notification.html",
|
|
7764
|
+
"stability": "experimental",
|
|
7765
|
+
"summary": "An SNS topic is set up to receive game session placement notifications."
|
|
7766
|
+
},
|
|
7767
|
+
"immutable": true,
|
|
7768
|
+
"locationInModule": {
|
|
7769
|
+
"filename": "lib/game-session-queue.ts",
|
|
7770
|
+
"line": 202
|
|
7771
|
+
},
|
|
7772
|
+
"name": "notificationTarget",
|
|
7773
|
+
"optional": true,
|
|
7774
|
+
"type": {
|
|
7775
|
+
"fqn": "aws-cdk-lib.aws_sns.ITopic"
|
|
7776
|
+
}
|
|
7777
|
+
},
|
|
7778
|
+
{
|
|
7779
|
+
"abstract": true,
|
|
7780
|
+
"docs": {
|
|
7781
|
+
"default": "no player latency policy",
|
|
7782
|
+
"remarks": "FleetIQ works to deliver low latency for most players in a game session.\nThese policies ensure that no individual player can be placed into a game with unreasonably high latency.\nUse multiple policies to gradually relax latency requirements a step at a time.\nMultiple policies are applied based on their maximum allowed latency, starting with the lowest value.",
|
|
7783
|
+
"stability": "experimental",
|
|
7784
|
+
"summary": "A set of policies that act as a sliding cap on player latency."
|
|
7785
|
+
},
|
|
7786
|
+
"immutable": true,
|
|
7787
|
+
"locationInModule": {
|
|
7788
|
+
"filename": "lib/game-session-queue.ts",
|
|
7789
|
+
"line": 213
|
|
7790
|
+
},
|
|
7791
|
+
"name": "playerLatencyPolicies",
|
|
7792
|
+
"optional": true,
|
|
7793
|
+
"type": {
|
|
7794
|
+
"collection": {
|
|
7795
|
+
"elementtype": {
|
|
7796
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.PlayerLatencyPolicy"
|
|
7797
|
+
},
|
|
7798
|
+
"kind": "array"
|
|
7799
|
+
}
|
|
7800
|
+
}
|
|
7801
|
+
},
|
|
7802
|
+
{
|
|
7803
|
+
"abstract": true,
|
|
7804
|
+
"docs": {
|
|
7805
|
+
"default": "no priority configuration",
|
|
7806
|
+
"remarks": "This configuration replaces the FleetIQ default prioritization process.\n\nPriority types that are not explicitly named will be automatically applied at the end of the prioritization process.",
|
|
7807
|
+
"stability": "experimental",
|
|
7808
|
+
"summary": "Custom settings to use when prioritizing destinations and locations for game session placements."
|
|
7809
|
+
},
|
|
7810
|
+
"immutable": true,
|
|
7811
|
+
"locationInModule": {
|
|
7812
|
+
"filename": "lib/game-session-queue.ts",
|
|
7813
|
+
"line": 223
|
|
7814
|
+
},
|
|
7815
|
+
"name": "priorityConfiguration",
|
|
7816
|
+
"optional": true,
|
|
7817
|
+
"type": {
|
|
7818
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.PriorityConfiguration"
|
|
7819
|
+
}
|
|
7820
|
+
},
|
|
7821
|
+
{
|
|
7822
|
+
"abstract": true,
|
|
7823
|
+
"docs": {
|
|
7824
|
+
"default": "50 seconds",
|
|
7825
|
+
"remarks": "When a request exceeds this time, the game session placement changes to a `TIMED_OUT` status.",
|
|
7826
|
+
"stability": "experimental",
|
|
7827
|
+
"summary": "The maximum time, that a new game session placement request remains in the queue."
|
|
7828
|
+
},
|
|
7829
|
+
"immutable": true,
|
|
7830
|
+
"locationInModule": {
|
|
7831
|
+
"filename": "lib/game-session-queue.ts",
|
|
7832
|
+
"line": 231
|
|
7833
|
+
},
|
|
7834
|
+
"name": "timeout",
|
|
7835
|
+
"optional": true,
|
|
7836
|
+
"type": {
|
|
7837
|
+
"fqn": "aws-cdk-lib.Duration"
|
|
7838
|
+
}
|
|
7839
|
+
}
|
|
7840
|
+
],
|
|
7841
|
+
"symbolId": "lib/game-session-queue:GameSessionQueueProps"
|
|
7842
|
+
},
|
|
7843
|
+
"@aws-cdk/aws-gamelift-alpha.IAlias": {
|
|
7844
|
+
"assembly": "@aws-cdk/aws-gamelift-alpha",
|
|
7845
|
+
"docs": {
|
|
7846
|
+
"stability": "experimental",
|
|
7847
|
+
"summary": "Represents a Gamelift Alias for a Gamelift fleet destination."
|
|
7848
|
+
},
|
|
7849
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.IAlias",
|
|
7850
|
+
"interfaces": [
|
|
7851
|
+
"aws-cdk-lib.IResource",
|
|
7852
|
+
"@aws-cdk/aws-gamelift-alpha.IGameSessionQueueDestination"
|
|
7853
|
+
],
|
|
7854
|
+
"kind": "interface",
|
|
7855
|
+
"locationInModule": {
|
|
7856
|
+
"filename": "lib/alias.ts",
|
|
7857
|
+
"line": 10
|
|
7858
|
+
},
|
|
7859
|
+
"name": "IAlias",
|
|
7860
|
+
"properties": [
|
|
7861
|
+
{
|
|
7862
|
+
"abstract": true,
|
|
7863
|
+
"docs": {
|
|
7864
|
+
"custom": {
|
|
7865
|
+
"attribute": "true"
|
|
7866
|
+
},
|
|
7867
|
+
"stability": "experimental",
|
|
7868
|
+
"summary": "The ARN of the alias."
|
|
7869
|
+
},
|
|
7870
|
+
"immutable": true,
|
|
7871
|
+
"locationInModule": {
|
|
7872
|
+
"filename": "lib/alias.ts",
|
|
7873
|
+
"line": 24
|
|
7874
|
+
},
|
|
7875
|
+
"name": "aliasArn",
|
|
7876
|
+
"type": {
|
|
7877
|
+
"primitive": "string"
|
|
7878
|
+
}
|
|
7879
|
+
},
|
|
7880
|
+
{
|
|
7881
|
+
"abstract": true,
|
|
7882
|
+
"docs": {
|
|
7883
|
+
"custom": {
|
|
7884
|
+
"attribute": "true"
|
|
7885
|
+
},
|
|
7886
|
+
"stability": "experimental",
|
|
7887
|
+
"summary": "The Identifier of the alias."
|
|
7888
|
+
},
|
|
7889
|
+
"immutable": true,
|
|
7890
|
+
"locationInModule": {
|
|
7891
|
+
"filename": "lib/alias.ts",
|
|
7892
|
+
"line": 17
|
|
7893
|
+
},
|
|
7894
|
+
"name": "aliasId",
|
|
7895
|
+
"type": {
|
|
7896
|
+
"primitive": "string"
|
|
7897
|
+
}
|
|
7898
|
+
}
|
|
7899
|
+
],
|
|
7900
|
+
"symbolId": "lib/alias:IAlias"
|
|
7901
|
+
},
|
|
7902
|
+
"@aws-cdk/aws-gamelift-alpha.IBuild": {
|
|
7903
|
+
"assembly": "@aws-cdk/aws-gamelift-alpha",
|
|
7904
|
+
"docs": {
|
|
7905
|
+
"remarks": "A game build represents the set of files that run your game server on a particular operating system.\nYou can have many different builds, such as for different flavors of your game.\nThe game build must be integrated with the GameLift service.\nYou upload game build files to the GameLift service in the Regions where you plan to set up fleets.",
|
|
7906
|
+
"see": "https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-build-cli-uploading.html",
|
|
7907
|
+
"stability": "experimental",
|
|
7908
|
+
"summary": "Your custom-built game server software that runs on GameLift and hosts game sessions for your players."
|
|
7909
|
+
},
|
|
7910
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.IBuild",
|
|
7911
|
+
"interfaces": [
|
|
7912
|
+
"aws-cdk-lib.IResource",
|
|
7913
|
+
"aws-cdk-lib.aws_iam.IGrantable"
|
|
7914
|
+
],
|
|
7915
|
+
"kind": "interface",
|
|
7916
|
+
"locationInModule": {
|
|
7917
|
+
"filename": "lib/build.ts",
|
|
7918
|
+
"line": 18
|
|
7919
|
+
},
|
|
7920
|
+
"name": "IBuild",
|
|
7921
|
+
"properties": [
|
|
7922
|
+
{
|
|
7923
|
+
"abstract": true,
|
|
7924
|
+
"docs": {
|
|
7925
|
+
"custom": {
|
|
7926
|
+
"attribute": "true"
|
|
7927
|
+
},
|
|
7928
|
+
"stability": "experimental",
|
|
7929
|
+
"summary": "The ARN of the build."
|
|
7930
|
+
},
|
|
7931
|
+
"immutable": true,
|
|
7932
|
+
"locationInModule": {
|
|
7933
|
+
"filename": "lib/build.ts",
|
|
7934
|
+
"line": 32
|
|
7935
|
+
},
|
|
7936
|
+
"name": "buildArn",
|
|
7937
|
+
"type": {
|
|
7938
|
+
"primitive": "string"
|
|
7939
|
+
}
|
|
7940
|
+
},
|
|
7941
|
+
{
|
|
7942
|
+
"abstract": true,
|
|
7943
|
+
"docs": {
|
|
7944
|
+
"custom": {
|
|
7945
|
+
"attribute": "true"
|
|
7946
|
+
},
|
|
7947
|
+
"stability": "experimental",
|
|
7948
|
+
"summary": "The Identifier of the build."
|
|
7949
|
+
},
|
|
7950
|
+
"immutable": true,
|
|
7951
|
+
"locationInModule": {
|
|
7952
|
+
"filename": "lib/build.ts",
|
|
7953
|
+
"line": 25
|
|
7954
|
+
},
|
|
7955
|
+
"name": "buildId",
|
|
7956
|
+
"type": {
|
|
7957
|
+
"primitive": "string"
|
|
7958
|
+
}
|
|
7959
|
+
}
|
|
7960
|
+
],
|
|
7961
|
+
"symbolId": "lib/build:IBuild"
|
|
7962
|
+
},
|
|
7963
|
+
"@aws-cdk/aws-gamelift-alpha.IBuildFleet": {
|
|
7964
|
+
"assembly": "@aws-cdk/aws-gamelift-alpha",
|
|
7074
7965
|
"docs": {
|
|
7075
7966
|
"stability": "experimental",
|
|
7076
7967
|
"summary": "Represents a GameLift Fleet used to run a custom game build."
|
|
@@ -7096,12 +7987,13 @@
|
|
|
7096
7987
|
"fqn": "@aws-cdk/aws-gamelift-alpha.IFleet",
|
|
7097
7988
|
"interfaces": [
|
|
7098
7989
|
"aws-cdk-lib.IResource",
|
|
7099
|
-
"aws-cdk-lib.aws_iam.IGrantable"
|
|
7990
|
+
"aws-cdk-lib.aws_iam.IGrantable",
|
|
7991
|
+
"@aws-cdk/aws-gamelift-alpha.IGameSessionQueueDestination"
|
|
7100
7992
|
],
|
|
7101
7993
|
"kind": "interface",
|
|
7102
7994
|
"locationInModule": {
|
|
7103
7995
|
"filename": "lib/fleet-base.ts",
|
|
7104
|
-
"line":
|
|
7996
|
+
"line": 144
|
|
7105
7997
|
},
|
|
7106
7998
|
"methods": [
|
|
7107
7999
|
{
|
|
@@ -7112,7 +8004,7 @@
|
|
|
7112
8004
|
},
|
|
7113
8005
|
"locationInModule": {
|
|
7114
8006
|
"filename": "lib/fleet-base.ts",
|
|
7115
|
-
"line":
|
|
8007
|
+
"line": 162
|
|
7116
8008
|
},
|
|
7117
8009
|
"name": "grant",
|
|
7118
8010
|
"parameters": [
|
|
@@ -7125,36 +8017,170 @@
|
|
|
7125
8017
|
{
|
|
7126
8018
|
"name": "actions",
|
|
7127
8019
|
"type": {
|
|
7128
|
-
"primitive": "string"
|
|
7129
|
-
},
|
|
7130
|
-
"variadic": true
|
|
8020
|
+
"primitive": "string"
|
|
8021
|
+
},
|
|
8022
|
+
"variadic": true
|
|
8023
|
+
}
|
|
8024
|
+
],
|
|
8025
|
+
"returns": {
|
|
8026
|
+
"type": {
|
|
8027
|
+
"fqn": "aws-cdk-lib.aws_iam.Grant"
|
|
8028
|
+
}
|
|
8029
|
+
},
|
|
8030
|
+
"variadic": true
|
|
8031
|
+
},
|
|
8032
|
+
{
|
|
8033
|
+
"abstract": true,
|
|
8034
|
+
"docs": {
|
|
8035
|
+
"stability": "experimental",
|
|
8036
|
+
"summary": "Return the given named metric for this fleet."
|
|
8037
|
+
},
|
|
8038
|
+
"locationInModule": {
|
|
8039
|
+
"filename": "lib/fleet-base.ts",
|
|
8040
|
+
"line": 167
|
|
8041
|
+
},
|
|
8042
|
+
"name": "metric",
|
|
8043
|
+
"parameters": [
|
|
8044
|
+
{
|
|
8045
|
+
"name": "metricName",
|
|
8046
|
+
"type": {
|
|
8047
|
+
"primitive": "string"
|
|
8048
|
+
}
|
|
8049
|
+
},
|
|
8050
|
+
{
|
|
8051
|
+
"name": "props",
|
|
8052
|
+
"optional": true,
|
|
8053
|
+
"type": {
|
|
8054
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.MetricOptions"
|
|
8055
|
+
}
|
|
8056
|
+
}
|
|
8057
|
+
],
|
|
8058
|
+
"returns": {
|
|
8059
|
+
"type": {
|
|
8060
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
|
|
8061
|
+
}
|
|
8062
|
+
}
|
|
8063
|
+
},
|
|
8064
|
+
{
|
|
8065
|
+
"abstract": true,
|
|
8066
|
+
"docs": {
|
|
8067
|
+
"remarks": "The count includes idle instances and those that are hosting one or more game sessions.\nThis metric measures current total instance capacity.\n\nThis metric can be used with automatic scaling.",
|
|
8068
|
+
"stability": "experimental",
|
|
8069
|
+
"summary": "Instances with `ACTIVE` status, which means they are running active server processes."
|
|
8070
|
+
},
|
|
8071
|
+
"locationInModule": {
|
|
8072
|
+
"filename": "lib/fleet-base.ts",
|
|
8073
|
+
"line": 176
|
|
8074
|
+
},
|
|
8075
|
+
"name": "metricActiveInstances",
|
|
8076
|
+
"parameters": [
|
|
8077
|
+
{
|
|
8078
|
+
"name": "props",
|
|
8079
|
+
"optional": true,
|
|
8080
|
+
"type": {
|
|
8081
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.MetricOptions"
|
|
8082
|
+
}
|
|
8083
|
+
}
|
|
8084
|
+
],
|
|
8085
|
+
"returns": {
|
|
8086
|
+
"type": {
|
|
8087
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
|
|
8088
|
+
}
|
|
8089
|
+
}
|
|
8090
|
+
},
|
|
8091
|
+
{
|
|
8092
|
+
"abstract": true,
|
|
8093
|
+
"docs": {
|
|
8094
|
+
"remarks": "With automatic scaling, this value is determined based on the scaling policies currently in force.\nWithout automatic scaling, this value is set manually.\nThis metric is not available when viewing data for fleet metric groups.",
|
|
8095
|
+
"stability": "experimental",
|
|
8096
|
+
"summary": "Target number of active instances that GameLift is working to maintain in the fleet."
|
|
8097
|
+
},
|
|
8098
|
+
"locationInModule": {
|
|
8099
|
+
"filename": "lib/fleet-base.ts",
|
|
8100
|
+
"line": 190
|
|
8101
|
+
},
|
|
8102
|
+
"name": "metricDesiredInstances",
|
|
8103
|
+
"parameters": [
|
|
8104
|
+
{
|
|
8105
|
+
"name": "props",
|
|
8106
|
+
"optional": true,
|
|
8107
|
+
"type": {
|
|
8108
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.MetricOptions"
|
|
8109
|
+
}
|
|
8110
|
+
}
|
|
8111
|
+
],
|
|
8112
|
+
"returns": {
|
|
8113
|
+
"type": {
|
|
8114
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
|
|
8115
|
+
}
|
|
8116
|
+
}
|
|
8117
|
+
},
|
|
8118
|
+
{
|
|
8119
|
+
"abstract": true,
|
|
8120
|
+
"docs": {
|
|
8121
|
+
"remarks": "This metric measures capacity that is available but unused.\nThis metric can be used with automatic scaling.",
|
|
8122
|
+
"stability": "experimental",
|
|
8123
|
+
"summary": "Active instances that are currently hosting zero (0) game sessions."
|
|
8124
|
+
},
|
|
8125
|
+
"locationInModule": {
|
|
8126
|
+
"filename": "lib/fleet-base.ts",
|
|
8127
|
+
"line": 197
|
|
8128
|
+
},
|
|
8129
|
+
"name": "metricIdleInstances",
|
|
8130
|
+
"parameters": [
|
|
8131
|
+
{
|
|
8132
|
+
"name": "props",
|
|
8133
|
+
"optional": true,
|
|
8134
|
+
"type": {
|
|
8135
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.MetricOptions"
|
|
8136
|
+
}
|
|
8137
|
+
}
|
|
8138
|
+
],
|
|
8139
|
+
"returns": {
|
|
8140
|
+
"type": {
|
|
8141
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
|
|
8142
|
+
}
|
|
8143
|
+
}
|
|
8144
|
+
},
|
|
8145
|
+
{
|
|
8146
|
+
"abstract": true,
|
|
8147
|
+
"docs": {
|
|
8148
|
+
"stability": "experimental",
|
|
8149
|
+
"summary": "Number of spot instances that have been interrupted."
|
|
8150
|
+
},
|
|
8151
|
+
"locationInModule": {
|
|
8152
|
+
"filename": "lib/fleet-base.ts",
|
|
8153
|
+
"line": 202
|
|
8154
|
+
},
|
|
8155
|
+
"name": "metricInstanceInterruptions",
|
|
8156
|
+
"parameters": [
|
|
8157
|
+
{
|
|
8158
|
+
"name": "props",
|
|
8159
|
+
"optional": true,
|
|
8160
|
+
"type": {
|
|
8161
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.MetricOptions"
|
|
8162
|
+
}
|
|
7131
8163
|
}
|
|
7132
8164
|
],
|
|
7133
8165
|
"returns": {
|
|
7134
8166
|
"type": {
|
|
7135
|
-
"fqn": "aws-cdk-lib.
|
|
8167
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
|
|
7136
8168
|
}
|
|
7137
|
-
}
|
|
7138
|
-
"variadic": true
|
|
8169
|
+
}
|
|
7139
8170
|
},
|
|
7140
8171
|
{
|
|
7141
8172
|
"abstract": true,
|
|
7142
8173
|
"docs": {
|
|
8174
|
+
"remarks": "A fleet's instance maximum determines the capacity ceiling during manual or automatic scaling up.\nThis metric is not available when viewing data for fleet metric groups.",
|
|
7143
8175
|
"stability": "experimental",
|
|
7144
|
-
"summary": "
|
|
8176
|
+
"summary": "Maximum number of instances that are allowed for the fleet."
|
|
7145
8177
|
},
|
|
7146
8178
|
"locationInModule": {
|
|
7147
8179
|
"filename": "lib/fleet-base.ts",
|
|
7148
|
-
"line":
|
|
8180
|
+
"line": 209
|
|
7149
8181
|
},
|
|
7150
|
-
"name": "
|
|
8182
|
+
"name": "metricMaxInstances",
|
|
7151
8183
|
"parameters": [
|
|
7152
|
-
{
|
|
7153
|
-
"name": "metricName",
|
|
7154
|
-
"type": {
|
|
7155
|
-
"primitive": "string"
|
|
7156
|
-
}
|
|
7157
|
-
},
|
|
7158
8184
|
{
|
|
7159
8185
|
"name": "props",
|
|
7160
8186
|
"optional": true,
|
|
@@ -7172,15 +8198,15 @@
|
|
|
7172
8198
|
{
|
|
7173
8199
|
"abstract": true,
|
|
7174
8200
|
"docs": {
|
|
7175
|
-
"remarks": "
|
|
8201
|
+
"remarks": "A fleet's instance minimum determines the capacity floor during manual or automatic scaling down.\nThis metric is not available when viewing data for fleet metric groups.",
|
|
7176
8202
|
"stability": "experimental",
|
|
7177
|
-
"summary": "
|
|
8203
|
+
"summary": "Minimum number of instances allowed for the fleet."
|
|
7178
8204
|
},
|
|
7179
8205
|
"locationInModule": {
|
|
7180
8206
|
"filename": "lib/fleet-base.ts",
|
|
7181
|
-
"line":
|
|
8207
|
+
"line": 216
|
|
7182
8208
|
},
|
|
7183
|
-
"name": "
|
|
8209
|
+
"name": "metricMinInstances",
|
|
7184
8210
|
"parameters": [
|
|
7185
8211
|
{
|
|
7186
8212
|
"name": "props",
|
|
@@ -7199,15 +8225,15 @@
|
|
|
7199
8225
|
{
|
|
7200
8226
|
"abstract": true,
|
|
7201
8227
|
"docs": {
|
|
7202
|
-
"remarks": "
|
|
8228
|
+
"remarks": "This metric can be used for automatic scaling.",
|
|
7203
8229
|
"stability": "experimental",
|
|
7204
|
-
"summary": "
|
|
8230
|
+
"summary": "Percentage of all active instances that are idle (calculated as IdleInstances / ActiveInstances)."
|
|
7205
8231
|
},
|
|
7206
8232
|
"locationInModule": {
|
|
7207
8233
|
"filename": "lib/fleet-base.ts",
|
|
7208
|
-
"line":
|
|
8234
|
+
"line": 182
|
|
7209
8235
|
},
|
|
7210
|
-
"name": "
|
|
8236
|
+
"name": "metricPercentIdleInstances",
|
|
7211
8237
|
"parameters": [
|
|
7212
8238
|
{
|
|
7213
8239
|
"name": "props",
|
|
@@ -7222,46 +8248,119 @@
|
|
|
7222
8248
|
"fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
|
|
7223
8249
|
}
|
|
7224
8250
|
}
|
|
8251
|
+
}
|
|
8252
|
+
],
|
|
8253
|
+
"name": "IFleet",
|
|
8254
|
+
"properties": [
|
|
8255
|
+
{
|
|
8256
|
+
"abstract": true,
|
|
8257
|
+
"docs": {
|
|
8258
|
+
"custom": {
|
|
8259
|
+
"attribute": "true"
|
|
8260
|
+
},
|
|
8261
|
+
"stability": "experimental",
|
|
8262
|
+
"summary": "The ARN of the fleet."
|
|
8263
|
+
},
|
|
8264
|
+
"immutable": true,
|
|
8265
|
+
"locationInModule": {
|
|
8266
|
+
"filename": "lib/fleet-base.ts",
|
|
8267
|
+
"line": 157
|
|
8268
|
+
},
|
|
8269
|
+
"name": "fleetArn",
|
|
8270
|
+
"type": {
|
|
8271
|
+
"primitive": "string"
|
|
8272
|
+
}
|
|
7225
8273
|
},
|
|
7226
8274
|
{
|
|
7227
8275
|
"abstract": true,
|
|
7228
8276
|
"docs": {
|
|
7229
|
-
"
|
|
8277
|
+
"custom": {
|
|
8278
|
+
"attribute": "true"
|
|
8279
|
+
},
|
|
7230
8280
|
"stability": "experimental",
|
|
7231
|
-
"summary": "
|
|
8281
|
+
"summary": "The Identifier of the fleet."
|
|
7232
8282
|
},
|
|
8283
|
+
"immutable": true,
|
|
7233
8284
|
"locationInModule": {
|
|
7234
8285
|
"filename": "lib/fleet-base.ts",
|
|
7235
|
-
"line":
|
|
8286
|
+
"line": 150
|
|
7236
8287
|
},
|
|
7237
|
-
"name": "
|
|
8288
|
+
"name": "fleetId",
|
|
8289
|
+
"type": {
|
|
8290
|
+
"primitive": "string"
|
|
8291
|
+
}
|
|
8292
|
+
}
|
|
8293
|
+
],
|
|
8294
|
+
"symbolId": "lib/fleet-base:IFleet"
|
|
8295
|
+
},
|
|
8296
|
+
"@aws-cdk/aws-gamelift-alpha.IGameServerGroup": {
|
|
8297
|
+
"assembly": "@aws-cdk/aws-gamelift-alpha",
|
|
8298
|
+
"docs": {
|
|
8299
|
+
"stability": "experimental",
|
|
8300
|
+
"summary": "Represent a GameLift FleetIQ game server group."
|
|
8301
|
+
},
|
|
8302
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.IGameServerGroup",
|
|
8303
|
+
"interfaces": [
|
|
8304
|
+
"aws-cdk-lib.IResource",
|
|
8305
|
+
"aws-cdk-lib.aws_iam.IGrantable"
|
|
8306
|
+
],
|
|
8307
|
+
"kind": "interface",
|
|
8308
|
+
"locationInModule": {
|
|
8309
|
+
"filename": "lib/game-server-group.ts",
|
|
8310
|
+
"line": 96
|
|
8311
|
+
},
|
|
8312
|
+
"methods": [
|
|
8313
|
+
{
|
|
8314
|
+
"abstract": true,
|
|
8315
|
+
"docs": {
|
|
8316
|
+
"stability": "experimental",
|
|
8317
|
+
"summary": "Grant the `grantee` identity permissions to perform `actions`."
|
|
8318
|
+
},
|
|
8319
|
+
"locationInModule": {
|
|
8320
|
+
"filename": "lib/game-server-group.ts",
|
|
8321
|
+
"line": 121
|
|
8322
|
+
},
|
|
8323
|
+
"name": "grant",
|
|
7238
8324
|
"parameters": [
|
|
7239
8325
|
{
|
|
7240
|
-
"name": "
|
|
7241
|
-
"optional": true,
|
|
8326
|
+
"name": "grantee",
|
|
7242
8327
|
"type": {
|
|
7243
|
-
"fqn": "aws-cdk-lib.
|
|
8328
|
+
"fqn": "aws-cdk-lib.aws_iam.IGrantable"
|
|
7244
8329
|
}
|
|
8330
|
+
},
|
|
8331
|
+
{
|
|
8332
|
+
"name": "actions",
|
|
8333
|
+
"type": {
|
|
8334
|
+
"primitive": "string"
|
|
8335
|
+
},
|
|
8336
|
+
"variadic": true
|
|
7245
8337
|
}
|
|
7246
8338
|
],
|
|
7247
8339
|
"returns": {
|
|
7248
8340
|
"type": {
|
|
7249
|
-
"fqn": "aws-cdk-lib.
|
|
8341
|
+
"fqn": "aws-cdk-lib.aws_iam.Grant"
|
|
7250
8342
|
}
|
|
7251
|
-
}
|
|
8343
|
+
},
|
|
8344
|
+
"variadic": true
|
|
7252
8345
|
},
|
|
7253
8346
|
{
|
|
7254
8347
|
"abstract": true,
|
|
7255
8348
|
"docs": {
|
|
7256
8349
|
"stability": "experimental",
|
|
7257
|
-
"summary": "
|
|
8350
|
+
"summary": "Return the given named metric for this fleet."
|
|
7258
8351
|
},
|
|
7259
8352
|
"locationInModule": {
|
|
7260
|
-
"filename": "lib/
|
|
7261
|
-
"line":
|
|
8353
|
+
"filename": "lib/game-server-group.ts",
|
|
8354
|
+
"line": 126
|
|
7262
8355
|
},
|
|
7263
|
-
"name": "
|
|
8356
|
+
"name": "metric",
|
|
7264
8357
|
"parameters": [
|
|
8358
|
+
{
|
|
8359
|
+
"name": "metricName",
|
|
8360
|
+
"type": {
|
|
8361
|
+
"primitive": "string"
|
|
8362
|
+
}
|
|
8363
|
+
},
|
|
7265
8364
|
{
|
|
7266
8365
|
"name": "props",
|
|
7267
8366
|
"optional": true,
|
|
@@ -7275,20 +8374,104 @@
|
|
|
7275
8374
|
"fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
|
|
7276
8375
|
}
|
|
7277
8376
|
}
|
|
8377
|
+
}
|
|
8378
|
+
],
|
|
8379
|
+
"name": "IGameServerGroup",
|
|
8380
|
+
"properties": [
|
|
8381
|
+
{
|
|
8382
|
+
"abstract": true,
|
|
8383
|
+
"docs": {
|
|
8384
|
+
"custom": {
|
|
8385
|
+
"attribute": "true"
|
|
8386
|
+
},
|
|
8387
|
+
"stability": "experimental",
|
|
8388
|
+
"summary": "The ARN of the generated AutoScaling group."
|
|
8389
|
+
},
|
|
8390
|
+
"immutable": true,
|
|
8391
|
+
"locationInModule": {
|
|
8392
|
+
"filename": "lib/game-server-group.ts",
|
|
8393
|
+
"line": 109
|
|
8394
|
+
},
|
|
8395
|
+
"name": "autoScalingGroupArn",
|
|
8396
|
+
"type": {
|
|
8397
|
+
"primitive": "string"
|
|
8398
|
+
}
|
|
7278
8399
|
},
|
|
7279
8400
|
{
|
|
7280
8401
|
"abstract": true,
|
|
7281
8402
|
"docs": {
|
|
7282
|
-
"
|
|
8403
|
+
"custom": {
|
|
8404
|
+
"attribute": "true"
|
|
8405
|
+
},
|
|
7283
8406
|
"stability": "experimental",
|
|
7284
|
-
"summary": "
|
|
8407
|
+
"summary": "The ARN of the game server group."
|
|
7285
8408
|
},
|
|
8409
|
+
"immutable": true,
|
|
7286
8410
|
"locationInModule": {
|
|
7287
|
-
"filename": "lib/
|
|
7288
|
-
"line":
|
|
8411
|
+
"filename": "lib/game-server-group.ts",
|
|
8412
|
+
"line": 102
|
|
7289
8413
|
},
|
|
7290
|
-
"name": "
|
|
8414
|
+
"name": "gameServerGroupArn",
|
|
8415
|
+
"type": {
|
|
8416
|
+
"primitive": "string"
|
|
8417
|
+
}
|
|
8418
|
+
},
|
|
8419
|
+
{
|
|
8420
|
+
"abstract": true,
|
|
8421
|
+
"docs": {
|
|
8422
|
+
"custom": {
|
|
8423
|
+
"attribute": "true"
|
|
8424
|
+
},
|
|
8425
|
+
"stability": "experimental",
|
|
8426
|
+
"summary": "The name of the game server group."
|
|
8427
|
+
},
|
|
8428
|
+
"immutable": true,
|
|
8429
|
+
"locationInModule": {
|
|
8430
|
+
"filename": "lib/game-server-group.ts",
|
|
8431
|
+
"line": 116
|
|
8432
|
+
},
|
|
8433
|
+
"name": "gameServerGroupName",
|
|
8434
|
+
"type": {
|
|
8435
|
+
"primitive": "string"
|
|
8436
|
+
}
|
|
8437
|
+
}
|
|
8438
|
+
],
|
|
8439
|
+
"symbolId": "lib/game-server-group:IGameServerGroup"
|
|
8440
|
+
},
|
|
8441
|
+
"@aws-cdk/aws-gamelift-alpha.IGameSessionQueue": {
|
|
8442
|
+
"assembly": "@aws-cdk/aws-gamelift-alpha",
|
|
8443
|
+
"docs": {
|
|
8444
|
+
"stability": "experimental",
|
|
8445
|
+
"summary": "Represents a Gamelift GameSessionQueue for a Gamelift fleet destination."
|
|
8446
|
+
},
|
|
8447
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.IGameSessionQueue",
|
|
8448
|
+
"interfaces": [
|
|
8449
|
+
"aws-cdk-lib.IResource"
|
|
8450
|
+
],
|
|
8451
|
+
"kind": "interface",
|
|
8452
|
+
"locationInModule": {
|
|
8453
|
+
"filename": "lib/game-session-queue.ts",
|
|
8454
|
+
"line": 93
|
|
8455
|
+
},
|
|
8456
|
+
"methods": [
|
|
8457
|
+
{
|
|
8458
|
+
"abstract": true,
|
|
8459
|
+
"docs": {
|
|
8460
|
+
"stability": "experimental",
|
|
8461
|
+
"summary": "Return the given named metric for this fleet."
|
|
8462
|
+
},
|
|
8463
|
+
"locationInModule": {
|
|
8464
|
+
"filename": "lib/game-session-queue.ts",
|
|
8465
|
+
"line": 112
|
|
8466
|
+
},
|
|
8467
|
+
"name": "metric",
|
|
7291
8468
|
"parameters": [
|
|
8469
|
+
{
|
|
8470
|
+
"name": "metricName",
|
|
8471
|
+
"type": {
|
|
8472
|
+
"primitive": "string"
|
|
8473
|
+
}
|
|
8474
|
+
},
|
|
7292
8475
|
{
|
|
7293
8476
|
"name": "props",
|
|
7294
8477
|
"optional": true,
|
|
@@ -7306,15 +8489,14 @@
|
|
|
7306
8489
|
{
|
|
7307
8490
|
"abstract": true,
|
|
7308
8491
|
"docs": {
|
|
7309
|
-
"remarks": "A fleet's instance minimum determines the capacity floor during manual or automatic scaling down.\nThis metric is not available when viewing data for fleet metric groups.",
|
|
7310
8492
|
"stability": "experimental",
|
|
7311
|
-
"summary": "
|
|
8493
|
+
"summary": "Average amount of time that game session placement requests in the queue with status PENDING have been waiting to be fulfilled."
|
|
7312
8494
|
},
|
|
7313
8495
|
"locationInModule": {
|
|
7314
|
-
"filename": "lib/
|
|
7315
|
-
"line":
|
|
8496
|
+
"filename": "lib/game-session-queue.ts",
|
|
8497
|
+
"line": 117
|
|
7316
8498
|
},
|
|
7317
|
-
"name": "
|
|
8499
|
+
"name": "metricAverageWaitTime",
|
|
7318
8500
|
"parameters": [
|
|
7319
8501
|
{
|
|
7320
8502
|
"name": "props",
|
|
@@ -7333,15 +8515,14 @@
|
|
|
7333
8515
|
{
|
|
7334
8516
|
"abstract": true,
|
|
7335
8517
|
"docs": {
|
|
7336
|
-
"remarks": "This metric can be used for automatic scaling.",
|
|
7337
8518
|
"stability": "experimental",
|
|
7338
|
-
"summary": "
|
|
8519
|
+
"summary": "Game session placement requests that were canceled before timing out since the last report."
|
|
7339
8520
|
},
|
|
7340
8521
|
"locationInModule": {
|
|
7341
|
-
"filename": "lib/
|
|
7342
|
-
"line":
|
|
8522
|
+
"filename": "lib/game-session-queue.ts",
|
|
8523
|
+
"line": 122
|
|
7343
8524
|
},
|
|
7344
|
-
"name": "
|
|
8525
|
+
"name": "metricPlacementsCanceled",
|
|
7345
8526
|
"parameters": [
|
|
7346
8527
|
{
|
|
7347
8528
|
"name": "props",
|
|
@@ -7356,119 +8537,97 @@
|
|
|
7356
8537
|
"fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
|
|
7357
8538
|
}
|
|
7358
8539
|
}
|
|
7359
|
-
}
|
|
7360
|
-
],
|
|
7361
|
-
"name": "IFleet",
|
|
7362
|
-
"properties": [
|
|
8540
|
+
},
|
|
7363
8541
|
{
|
|
7364
8542
|
"abstract": true,
|
|
7365
8543
|
"docs": {
|
|
7366
|
-
"custom": {
|
|
7367
|
-
"attribute": "true"
|
|
7368
|
-
},
|
|
7369
8544
|
"stability": "experimental",
|
|
7370
|
-
"summary": "
|
|
8545
|
+
"summary": "Game session placement requests that failed for any reason since the last report."
|
|
7371
8546
|
},
|
|
7372
|
-
"immutable": true,
|
|
7373
8547
|
"locationInModule": {
|
|
7374
|
-
"filename": "lib/
|
|
7375
|
-
"line":
|
|
8548
|
+
"filename": "lib/game-session-queue.ts",
|
|
8549
|
+
"line": 127
|
|
7376
8550
|
},
|
|
7377
|
-
"name": "
|
|
7378
|
-
"
|
|
7379
|
-
|
|
8551
|
+
"name": "metricPlacementsFailed",
|
|
8552
|
+
"parameters": [
|
|
8553
|
+
{
|
|
8554
|
+
"name": "props",
|
|
8555
|
+
"optional": true,
|
|
8556
|
+
"type": {
|
|
8557
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.MetricOptions"
|
|
8558
|
+
}
|
|
8559
|
+
}
|
|
8560
|
+
],
|
|
8561
|
+
"returns": {
|
|
8562
|
+
"type": {
|
|
8563
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
|
|
8564
|
+
}
|
|
7380
8565
|
}
|
|
7381
8566
|
},
|
|
7382
8567
|
{
|
|
7383
8568
|
"abstract": true,
|
|
7384
8569
|
"docs": {
|
|
7385
|
-
"custom": {
|
|
7386
|
-
"attribute": "true"
|
|
7387
|
-
},
|
|
7388
8570
|
"stability": "experimental",
|
|
7389
|
-
"summary": "
|
|
8571
|
+
"summary": "New game session placement requests that were added to the queue since the last report."
|
|
7390
8572
|
},
|
|
7391
|
-
"immutable": true,
|
|
7392
8573
|
"locationInModule": {
|
|
7393
|
-
"filename": "lib/
|
|
7394
|
-
"line":
|
|
8574
|
+
"filename": "lib/game-session-queue.ts",
|
|
8575
|
+
"line": 132
|
|
7395
8576
|
},
|
|
7396
|
-
"name": "
|
|
7397
|
-
"
|
|
7398
|
-
|
|
8577
|
+
"name": "metricPlacementsStarted",
|
|
8578
|
+
"parameters": [
|
|
8579
|
+
{
|
|
8580
|
+
"name": "props",
|
|
8581
|
+
"optional": true,
|
|
8582
|
+
"type": {
|
|
8583
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.MetricOptions"
|
|
8584
|
+
}
|
|
8585
|
+
}
|
|
8586
|
+
],
|
|
8587
|
+
"returns": {
|
|
8588
|
+
"type": {
|
|
8589
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
|
|
8590
|
+
}
|
|
7399
8591
|
}
|
|
7400
|
-
}
|
|
7401
|
-
],
|
|
7402
|
-
"symbolId": "lib/fleet-base:IFleet"
|
|
7403
|
-
},
|
|
7404
|
-
"@aws-cdk/aws-gamelift-alpha.IGameServerGroup": {
|
|
7405
|
-
"assembly": "@aws-cdk/aws-gamelift-alpha",
|
|
7406
|
-
"docs": {
|
|
7407
|
-
"stability": "experimental",
|
|
7408
|
-
"summary": "Represent a GameLift FleetIQ game server group."
|
|
7409
|
-
},
|
|
7410
|
-
"fqn": "@aws-cdk/aws-gamelift-alpha.IGameServerGroup",
|
|
7411
|
-
"interfaces": [
|
|
7412
|
-
"aws-cdk-lib.IResource",
|
|
7413
|
-
"aws-cdk-lib.aws_iam.IGrantable"
|
|
7414
|
-
],
|
|
7415
|
-
"kind": "interface",
|
|
7416
|
-
"locationInModule": {
|
|
7417
|
-
"filename": "lib/game-server-group.ts",
|
|
7418
|
-
"line": 96
|
|
7419
|
-
},
|
|
7420
|
-
"methods": [
|
|
8592
|
+
},
|
|
7421
8593
|
{
|
|
7422
8594
|
"abstract": true,
|
|
7423
8595
|
"docs": {
|
|
7424
8596
|
"stability": "experimental",
|
|
7425
|
-
"summary": "
|
|
8597
|
+
"summary": "Game session placement requests that resulted in a new game session since the last report."
|
|
7426
8598
|
},
|
|
7427
8599
|
"locationInModule": {
|
|
7428
|
-
"filename": "lib/game-
|
|
7429
|
-
"line":
|
|
8600
|
+
"filename": "lib/game-session-queue.ts",
|
|
8601
|
+
"line": 137
|
|
7430
8602
|
},
|
|
7431
|
-
"name": "
|
|
8603
|
+
"name": "metricPlacementsSucceeded",
|
|
7432
8604
|
"parameters": [
|
|
7433
8605
|
{
|
|
7434
|
-
"name": "
|
|
8606
|
+
"name": "props",
|
|
8607
|
+
"optional": true,
|
|
7435
8608
|
"type": {
|
|
7436
|
-
"fqn": "aws-cdk-lib.
|
|
8609
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.MetricOptions"
|
|
7437
8610
|
}
|
|
7438
|
-
},
|
|
7439
|
-
{
|
|
7440
|
-
"name": "actions",
|
|
7441
|
-
"type": {
|
|
7442
|
-
"primitive": "string"
|
|
7443
|
-
},
|
|
7444
|
-
"variadic": true
|
|
7445
8611
|
}
|
|
7446
8612
|
],
|
|
7447
8613
|
"returns": {
|
|
7448
8614
|
"type": {
|
|
7449
|
-
"fqn": "aws-cdk-lib.
|
|
8615
|
+
"fqn": "aws-cdk-lib.aws_cloudwatch.Metric"
|
|
7450
8616
|
}
|
|
7451
|
-
}
|
|
7452
|
-
"variadic": true
|
|
8617
|
+
}
|
|
7453
8618
|
},
|
|
7454
8619
|
{
|
|
7455
8620
|
"abstract": true,
|
|
7456
8621
|
"docs": {
|
|
7457
8622
|
"stability": "experimental",
|
|
7458
|
-
"summary": "
|
|
8623
|
+
"summary": "Game session placement requests that reached the queue's timeout limit without being fulfilled since the last report."
|
|
7459
8624
|
},
|
|
7460
8625
|
"locationInModule": {
|
|
7461
|
-
"filename": "lib/game-
|
|
7462
|
-
"line":
|
|
8626
|
+
"filename": "lib/game-session-queue.ts",
|
|
8627
|
+
"line": 142
|
|
7463
8628
|
},
|
|
7464
|
-
"name": "
|
|
8629
|
+
"name": "metricPlacementsTimedOut",
|
|
7465
8630
|
"parameters": [
|
|
7466
|
-
{
|
|
7467
|
-
"name": "metricName",
|
|
7468
|
-
"type": {
|
|
7469
|
-
"primitive": "string"
|
|
7470
|
-
}
|
|
7471
|
-
},
|
|
7472
8631
|
{
|
|
7473
8632
|
"name": "props",
|
|
7474
8633
|
"optional": true,
|
|
@@ -7484,7 +8643,7 @@
|
|
|
7484
8643
|
}
|
|
7485
8644
|
}
|
|
7486
8645
|
],
|
|
7487
|
-
"name": "
|
|
8646
|
+
"name": "IGameSessionQueue",
|
|
7488
8647
|
"properties": [
|
|
7489
8648
|
{
|
|
7490
8649
|
"abstract": true,
|
|
@@ -7493,14 +8652,14 @@
|
|
|
7493
8652
|
"attribute": "true"
|
|
7494
8653
|
},
|
|
7495
8654
|
"stability": "experimental",
|
|
7496
|
-
"summary": "The ARN of the
|
|
8655
|
+
"summary": "The ARN of the gameSessionQueue."
|
|
7497
8656
|
},
|
|
7498
8657
|
"immutable": true,
|
|
7499
8658
|
"locationInModule": {
|
|
7500
|
-
"filename": "lib/game-
|
|
7501
|
-
"line":
|
|
8659
|
+
"filename": "lib/game-session-queue.ts",
|
|
8660
|
+
"line": 107
|
|
7502
8661
|
},
|
|
7503
|
-
"name": "
|
|
8662
|
+
"name": "gameSessionQueueArn",
|
|
7504
8663
|
"type": {
|
|
7505
8664
|
"primitive": "string"
|
|
7506
8665
|
}
|
|
@@ -7512,39 +8671,54 @@
|
|
|
7512
8671
|
"attribute": "true"
|
|
7513
8672
|
},
|
|
7514
8673
|
"stability": "experimental",
|
|
7515
|
-
"summary": "The
|
|
8674
|
+
"summary": "The Name of the gameSessionQueue."
|
|
7516
8675
|
},
|
|
7517
8676
|
"immutable": true,
|
|
7518
8677
|
"locationInModule": {
|
|
7519
|
-
"filename": "lib/game-
|
|
7520
|
-
"line":
|
|
8678
|
+
"filename": "lib/game-session-queue.ts",
|
|
8679
|
+
"line": 100
|
|
7521
8680
|
},
|
|
7522
|
-
"name": "
|
|
8681
|
+
"name": "gameSessionQueueName",
|
|
7523
8682
|
"type": {
|
|
7524
8683
|
"primitive": "string"
|
|
7525
8684
|
}
|
|
7526
|
-
}
|
|
8685
|
+
}
|
|
8686
|
+
],
|
|
8687
|
+
"symbolId": "lib/game-session-queue:IGameSessionQueue"
|
|
8688
|
+
},
|
|
8689
|
+
"@aws-cdk/aws-gamelift-alpha.IGameSessionQueueDestination": {
|
|
8690
|
+
"assembly": "@aws-cdk/aws-gamelift-alpha",
|
|
8691
|
+
"docs": {
|
|
8692
|
+
"stability": "experimental",
|
|
8693
|
+
"summary": "Represents a game session queue destination."
|
|
8694
|
+
},
|
|
8695
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.IGameSessionQueueDestination",
|
|
8696
|
+
"kind": "interface",
|
|
8697
|
+
"locationInModule": {
|
|
8698
|
+
"filename": "lib/game-session-queue.ts",
|
|
8699
|
+
"line": 10
|
|
8700
|
+
},
|
|
8701
|
+
"name": "IGameSessionQueueDestination",
|
|
8702
|
+
"properties": [
|
|
7527
8703
|
{
|
|
7528
8704
|
"abstract": true,
|
|
7529
8705
|
"docs": {
|
|
7530
|
-
"
|
|
7531
|
-
"attribute": "true"
|
|
7532
|
-
},
|
|
8706
|
+
"remarks": "This property is for cdk modules to consume only. You should not need to use this property.\nInstead, use dedicated identifier on each components.",
|
|
7533
8707
|
"stability": "experimental",
|
|
7534
|
-
"summary": "The
|
|
8708
|
+
"summary": "The ARN(s) to put into the destination field for a game session queue."
|
|
7535
8709
|
},
|
|
7536
8710
|
"immutable": true,
|
|
7537
8711
|
"locationInModule": {
|
|
7538
|
-
"filename": "lib/game-
|
|
7539
|
-
"line":
|
|
8712
|
+
"filename": "lib/game-session-queue.ts",
|
|
8713
|
+
"line": 17
|
|
7540
8714
|
},
|
|
7541
|
-
"name": "
|
|
8715
|
+
"name": "resourceArnForDestination",
|
|
7542
8716
|
"type": {
|
|
7543
8717
|
"primitive": "string"
|
|
7544
8718
|
}
|
|
7545
8719
|
}
|
|
7546
8720
|
],
|
|
7547
|
-
"symbolId": "lib/game-
|
|
8721
|
+
"symbolId": "lib/game-session-queue:IGameSessionQueueDestination"
|
|
7548
8722
|
},
|
|
7549
8723
|
"@aws-cdk/aws-gamelift-alpha.IMatchmakingRuleSet": {
|
|
7550
8724
|
"assembly": "@aws-cdk/aws-gamelift-alpha",
|
|
@@ -8015,7 +9189,7 @@
|
|
|
8015
9189
|
"kind": "interface",
|
|
8016
9190
|
"locationInModule": {
|
|
8017
9191
|
"filename": "lib/fleet-base.ts",
|
|
8018
|
-
"line":
|
|
9192
|
+
"line": 41
|
|
8019
9193
|
},
|
|
8020
9194
|
"name": "Location",
|
|
8021
9195
|
"properties": [
|
|
@@ -8028,7 +9202,7 @@
|
|
|
8028
9202
|
"immutable": true,
|
|
8029
9203
|
"locationInModule": {
|
|
8030
9204
|
"filename": "lib/fleet-base.ts",
|
|
8031
|
-
"line":
|
|
9205
|
+
"line": 45
|
|
8032
9206
|
},
|
|
8033
9207
|
"name": "region",
|
|
8034
9208
|
"type": {
|
|
@@ -8046,7 +9220,7 @@
|
|
|
8046
9220
|
"immutable": true,
|
|
8047
9221
|
"locationInModule": {
|
|
8048
9222
|
"filename": "lib/fleet-base.ts",
|
|
8049
|
-
"line":
|
|
9223
|
+
"line": 52
|
|
8050
9224
|
},
|
|
8051
9225
|
"name": "capacity",
|
|
8052
9226
|
"optional": true,
|
|
@@ -8073,7 +9247,7 @@
|
|
|
8073
9247
|
"kind": "interface",
|
|
8074
9248
|
"locationInModule": {
|
|
8075
9249
|
"filename": "lib/fleet-base.ts",
|
|
8076
|
-
"line":
|
|
9250
|
+
"line": 16
|
|
8077
9251
|
},
|
|
8078
9252
|
"name": "LocationCapacity",
|
|
8079
9253
|
"properties": [
|
|
@@ -8088,7 +9262,7 @@
|
|
|
8088
9262
|
"immutable": true,
|
|
8089
9263
|
"locationInModule": {
|
|
8090
9264
|
"filename": "lib/fleet-base.ts",
|
|
8091
|
-
"line":
|
|
9265
|
+
"line": 23
|
|
8092
9266
|
},
|
|
8093
9267
|
"name": "desiredCapacity",
|
|
8094
9268
|
"optional": true,
|
|
@@ -8106,7 +9280,7 @@
|
|
|
8106
9280
|
"immutable": true,
|
|
8107
9281
|
"locationInModule": {
|
|
8108
9282
|
"filename": "lib/fleet-base.ts",
|
|
8109
|
-
"line":
|
|
9283
|
+
"line": 29
|
|
8110
9284
|
},
|
|
8111
9285
|
"name": "maxSize",
|
|
8112
9286
|
"optional": true,
|
|
@@ -8124,7 +9298,7 @@
|
|
|
8124
9298
|
"immutable": true,
|
|
8125
9299
|
"locationInModule": {
|
|
8126
9300
|
"filename": "lib/fleet-base.ts",
|
|
8127
|
-
"line":
|
|
9301
|
+
"line": 35
|
|
8128
9302
|
},
|
|
8129
9303
|
"name": "minSize",
|
|
8130
9304
|
"optional": true,
|
|
@@ -8731,6 +9905,64 @@
|
|
|
8731
9905
|
"name": "Peer",
|
|
8732
9906
|
"symbolId": "lib/ingress-rule:Peer"
|
|
8733
9907
|
},
|
|
9908
|
+
"@aws-cdk/aws-gamelift-alpha.PlayerLatencyPolicy": {
|
|
9909
|
+
"assembly": "@aws-cdk/aws-gamelift-alpha",
|
|
9910
|
+
"datatype": true,
|
|
9911
|
+
"docs": {
|
|
9912
|
+
"remarks": "When a latency policy is in force, a game session cannot be placed with any fleet in a Region where a player reports latency higher than the cap.\n\nLatency policies are only enforced when the placement request contains player latency information.",
|
|
9913
|
+
"stability": "experimental",
|
|
9914
|
+
"summary": "The queue setting that determines the highest latency allowed for individual players when placing a game session.",
|
|
9915
|
+
"example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as gamelift_alpha from '@aws-cdk/aws-gamelift-alpha';\nimport * as cdk from 'aws-cdk-lib';\nconst playerLatencyPolicy: gamelift_alpha.PlayerLatencyPolicy = {\n maximumIndividualPlayerLatency: cdk.Duration.minutes(30),\n\n // the properties below are optional\n policyDuration: cdk.Duration.minutes(30),\n};",
|
|
9916
|
+
"custom": {
|
|
9917
|
+
"exampleMetadata": "fixture=_generated"
|
|
9918
|
+
}
|
|
9919
|
+
},
|
|
9920
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.PlayerLatencyPolicy",
|
|
9921
|
+
"kind": "interface",
|
|
9922
|
+
"locationInModule": {
|
|
9923
|
+
"filename": "lib/game-session-queue.ts",
|
|
9924
|
+
"line": 74
|
|
9925
|
+
},
|
|
9926
|
+
"name": "PlayerLatencyPolicy",
|
|
9927
|
+
"properties": [
|
|
9928
|
+
{
|
|
9929
|
+
"abstract": true,
|
|
9930
|
+
"docs": {
|
|
9931
|
+
"remarks": "All policies must have a value set for this property.",
|
|
9932
|
+
"stability": "experimental",
|
|
9933
|
+
"summary": "The maximum latency value that is allowed for any player, in milliseconds."
|
|
9934
|
+
},
|
|
9935
|
+
"immutable": true,
|
|
9936
|
+
"locationInModule": {
|
|
9937
|
+
"filename": "lib/game-session-queue.ts",
|
|
9938
|
+
"line": 80
|
|
9939
|
+
},
|
|
9940
|
+
"name": "maximumIndividualPlayerLatency",
|
|
9941
|
+
"type": {
|
|
9942
|
+
"fqn": "aws-cdk-lib.Duration"
|
|
9943
|
+
}
|
|
9944
|
+
},
|
|
9945
|
+
{
|
|
9946
|
+
"abstract": true,
|
|
9947
|
+
"docs": {
|
|
9948
|
+
"default": "the policy is enforced until the queue times out.",
|
|
9949
|
+
"stability": "experimental",
|
|
9950
|
+
"summary": "The length of time, in seconds, that the policy is enforced while placing a new game session."
|
|
9951
|
+
},
|
|
9952
|
+
"immutable": true,
|
|
9953
|
+
"locationInModule": {
|
|
9954
|
+
"filename": "lib/game-session-queue.ts",
|
|
9955
|
+
"line": 87
|
|
9956
|
+
},
|
|
9957
|
+
"name": "policyDuration",
|
|
9958
|
+
"optional": true,
|
|
9959
|
+
"type": {
|
|
9960
|
+
"fqn": "aws-cdk-lib.Duration"
|
|
9961
|
+
}
|
|
9962
|
+
}
|
|
9963
|
+
],
|
|
9964
|
+
"symbolId": "lib/game-session-queue:PlayerLatencyPolicy"
|
|
9965
|
+
},
|
|
8734
9966
|
"@aws-cdk/aws-gamelift-alpha.Port": {
|
|
8735
9967
|
"assembly": "@aws-cdk/aws-gamelift-alpha",
|
|
8736
9968
|
"docs": {
|
|
@@ -9005,6 +10237,123 @@
|
|
|
9005
10237
|
],
|
|
9006
10238
|
"symbolId": "lib/ingress-rule:PortProps"
|
|
9007
10239
|
},
|
|
10240
|
+
"@aws-cdk/aws-gamelift-alpha.PriorityConfiguration": {
|
|
10241
|
+
"assembly": "@aws-cdk/aws-gamelift-alpha",
|
|
10242
|
+
"datatype": true,
|
|
10243
|
+
"docs": {
|
|
10244
|
+
"remarks": "When defined, this configuration replaces the default FleetIQ prioritization process, which is as follows:\n\n- If player latency data is included in a game session request, destinations and locations are prioritized first based on lowest average latency (1), then on lowest hosting cost (2), then on destination list order (3), and finally on location (alphabetical) (4).\nThis approach ensures that the queue's top priority is to place game sessions where average player latency is lowest, and--if latency is the same--where the hosting cost is less, etc.\n\n- If player latency data is not included, destinations and locations are prioritized first on destination list order (1), and then on location (alphabetical) (2).\nThis approach ensures that the queue's top priority is to place game sessions on the first destination fleet listed. If that fleet has multiple locations, the game session is placed on the first location (when listed alphabetically).\n\nChanging the priority order will affect how game sessions are placed.",
|
|
10245
|
+
"stability": "experimental",
|
|
10246
|
+
"summary": "Custom prioritization settings for use by a game session queue when placing new game sessions with available game servers.",
|
|
10247
|
+
"example": "declare const fleet: gamelift.BuildFleet;\ndeclare const topic: sns.Topic;\n\nnew gamelift.GameSessionQueue(this, 'MyGameSessionQueue', {\n gameSessionQueueName: 'test-gameSessionQueue',\n customEventData: 'test-event-data',\n allowedLocations: ['eu-west-1', 'eu-west-2'],\n destinations: [fleet],\n notificationTarget: topic,\n playerLatencyPolicies: [{\n maximumIndividualPlayerLatency: Duration.millis(100),\n policyDuration: Duration.seconds(300),\n }],\n priorityConfiguration: {\n locationOrder: [\n 'eu-west-1',\n 'eu-west-2',\n ],\n priorityOrder: [\n gamelift.PriorityType.LATENCY,\n gamelift.PriorityType.COST,\n gamelift.PriorityType.DESTINATION,\n gamelift.PriorityType.LOCATION,\n ],\n },\n timeout: Duration.seconds(300),\n });",
|
|
10248
|
+
"custom": {
|
|
10249
|
+
"exampleMetadata": "infused"
|
|
10250
|
+
}
|
|
10251
|
+
},
|
|
10252
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.PriorityConfiguration",
|
|
10253
|
+
"kind": "interface",
|
|
10254
|
+
"locationInModule": {
|
|
10255
|
+
"filename": "lib/game-session-queue.ts",
|
|
10256
|
+
"line": 54
|
|
10257
|
+
},
|
|
10258
|
+
"name": "PriorityConfiguration",
|
|
10259
|
+
"properties": [
|
|
10260
|
+
{
|
|
10261
|
+
"abstract": true,
|
|
10262
|
+
"docs": {
|
|
10263
|
+
"remarks": "Locations are identified by AWS Region codes such as `us-west-2.\n\nEach location can only be listed once.",
|
|
10264
|
+
"stability": "experimental",
|
|
10265
|
+
"summary": "The prioritization order to use for fleet locations, when the PriorityOrder property includes LOCATION."
|
|
10266
|
+
},
|
|
10267
|
+
"immutable": true,
|
|
10268
|
+
"locationInModule": {
|
|
10269
|
+
"filename": "lib/game-session-queue.ts",
|
|
10270
|
+
"line": 60
|
|
10271
|
+
},
|
|
10272
|
+
"name": "locationOrder",
|
|
10273
|
+
"type": {
|
|
10274
|
+
"collection": {
|
|
10275
|
+
"elementtype": {
|
|
10276
|
+
"primitive": "string"
|
|
10277
|
+
},
|
|
10278
|
+
"kind": "array"
|
|
10279
|
+
}
|
|
10280
|
+
}
|
|
10281
|
+
},
|
|
10282
|
+
{
|
|
10283
|
+
"abstract": true,
|
|
10284
|
+
"docs": {
|
|
10285
|
+
"remarks": "Each type can only be listed once.",
|
|
10286
|
+
"stability": "experimental",
|
|
10287
|
+
"summary": "The recommended sequence to use when prioritizing where to place new game sessions."
|
|
10288
|
+
},
|
|
10289
|
+
"immutable": true,
|
|
10290
|
+
"locationInModule": {
|
|
10291
|
+
"filename": "lib/game-session-queue.ts",
|
|
10292
|
+
"line": 65
|
|
10293
|
+
},
|
|
10294
|
+
"name": "priorityOrder",
|
|
10295
|
+
"type": {
|
|
10296
|
+
"collection": {
|
|
10297
|
+
"elementtype": {
|
|
10298
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.PriorityType"
|
|
10299
|
+
},
|
|
10300
|
+
"kind": "array"
|
|
10301
|
+
}
|
|
10302
|
+
}
|
|
10303
|
+
}
|
|
10304
|
+
],
|
|
10305
|
+
"symbolId": "lib/game-session-queue:PriorityConfiguration"
|
|
10306
|
+
},
|
|
10307
|
+
"@aws-cdk/aws-gamelift-alpha.PriorityType": {
|
|
10308
|
+
"assembly": "@aws-cdk/aws-gamelift-alpha",
|
|
10309
|
+
"docs": {
|
|
10310
|
+
"stability": "experimental",
|
|
10311
|
+
"summary": "Priority to condider when placing new game sessions.",
|
|
10312
|
+
"example": "declare const fleet: gamelift.BuildFleet;\ndeclare const topic: sns.Topic;\n\nnew gamelift.GameSessionQueue(this, 'MyGameSessionQueue', {\n gameSessionQueueName: 'test-gameSessionQueue',\n customEventData: 'test-event-data',\n allowedLocations: ['eu-west-1', 'eu-west-2'],\n destinations: [fleet],\n notificationTarget: topic,\n playerLatencyPolicies: [{\n maximumIndividualPlayerLatency: Duration.millis(100),\n policyDuration: Duration.seconds(300),\n }],\n priorityConfiguration: {\n locationOrder: [\n 'eu-west-1',\n 'eu-west-2',\n ],\n priorityOrder: [\n gamelift.PriorityType.LATENCY,\n gamelift.PriorityType.COST,\n gamelift.PriorityType.DESTINATION,\n gamelift.PriorityType.LOCATION,\n ],\n },\n timeout: Duration.seconds(300),\n });",
|
|
10313
|
+
"custom": {
|
|
10314
|
+
"exampleMetadata": "infused"
|
|
10315
|
+
}
|
|
10316
|
+
},
|
|
10317
|
+
"fqn": "@aws-cdk/aws-gamelift-alpha.PriorityType",
|
|
10318
|
+
"kind": "enum",
|
|
10319
|
+
"locationInModule": {
|
|
10320
|
+
"filename": "lib/game-session-queue.ts",
|
|
10321
|
+
"line": 23
|
|
10322
|
+
},
|
|
10323
|
+
"members": [
|
|
10324
|
+
{
|
|
10325
|
+
"docs": {
|
|
10326
|
+
"stability": "experimental",
|
|
10327
|
+
"summary": "FleetIQ prioritizes locations where the average player latency (provided in each game session request) is lowest."
|
|
10328
|
+
},
|
|
10329
|
+
"name": "LATENCY"
|
|
10330
|
+
},
|
|
10331
|
+
{
|
|
10332
|
+
"docs": {
|
|
10333
|
+
"remarks": "Cost is evaluated based on the location, instance type, and fleet type (Spot or On-Demand) for each destination in the queue.",
|
|
10334
|
+
"stability": "experimental",
|
|
10335
|
+
"summary": "FleetIQ prioritizes destinations with the lowest current hosting costs."
|
|
10336
|
+
},
|
|
10337
|
+
"name": "COST"
|
|
10338
|
+
},
|
|
10339
|
+
{
|
|
10340
|
+
"docs": {
|
|
10341
|
+
"stability": "experimental",
|
|
10342
|
+
"summary": "FleetIQ prioritizes based on the order that destinations are listed in the queue configuration."
|
|
10343
|
+
},
|
|
10344
|
+
"name": "DESTINATION"
|
|
10345
|
+
},
|
|
10346
|
+
{
|
|
10347
|
+
"docs": {
|
|
10348
|
+
"stability": "experimental",
|
|
10349
|
+
"summary": "FleetIQ prioritizes based on the provided order of locations, as defined in `LocationOrder`."
|
|
10350
|
+
},
|
|
10351
|
+
"name": "LOCATION"
|
|
10352
|
+
}
|
|
10353
|
+
],
|
|
10354
|
+
"name": "PriorityType",
|
|
10355
|
+
"symbolId": "lib/game-session-queue:PriorityType"
|
|
10356
|
+
},
|
|
9008
10357
|
"@aws-cdk/aws-gamelift-alpha.Protocol": {
|
|
9009
10358
|
"assembly": "@aws-cdk/aws-gamelift-alpha",
|
|
9010
10359
|
"docs": {
|
|
@@ -9051,7 +10400,7 @@
|
|
|
9051
10400
|
"kind": "interface",
|
|
9052
10401
|
"locationInModule": {
|
|
9053
10402
|
"filename": "lib/fleet-base.ts",
|
|
9054
|
-
"line":
|
|
10403
|
+
"line": 126
|
|
9055
10404
|
},
|
|
9056
10405
|
"name": "ResourceCreationLimitPolicy",
|
|
9057
10406
|
"properties": [
|
|
@@ -9065,7 +10414,7 @@
|
|
|
9065
10414
|
"immutable": true,
|
|
9066
10415
|
"locationInModule": {
|
|
9067
10416
|
"filename": "lib/fleet-base.ts",
|
|
9068
|
-
"line":
|
|
10417
|
+
"line": 132
|
|
9069
10418
|
},
|
|
9070
10419
|
"name": "newGameSessionsPerCreator",
|
|
9071
10420
|
"optional": true,
|
|
@@ -9083,7 +10432,7 @@
|
|
|
9083
10432
|
"immutable": true,
|
|
9084
10433
|
"locationInModule": {
|
|
9085
10434
|
"filename": "lib/fleet-base.ts",
|
|
9086
|
-
"line":
|
|
10435
|
+
"line": 138
|
|
9087
10436
|
},
|
|
9088
10437
|
"name": "policyPeriod",
|
|
9089
10438
|
"optional": true,
|
|
@@ -9335,7 +10684,7 @@
|
|
|
9335
10684
|
"kind": "interface",
|
|
9336
10685
|
"locationInModule": {
|
|
9337
10686
|
"filename": "lib/fleet-base.ts",
|
|
9338
|
-
"line":
|
|
10687
|
+
"line": 92
|
|
9339
10688
|
},
|
|
9340
10689
|
"name": "RuntimeConfiguration",
|
|
9341
10690
|
"properties": [
|
|
@@ -9348,7 +10697,7 @@
|
|
|
9348
10697
|
"immutable": true,
|
|
9349
10698
|
"locationInModule": {
|
|
9350
10699
|
"filename": "lib/fleet-base.ts",
|
|
9351
|
-
"line":
|
|
10700
|
+
"line": 114
|
|
9352
10701
|
},
|
|
9353
10702
|
"name": "serverProcesses",
|
|
9354
10703
|
"type": {
|
|
@@ -9371,7 +10720,7 @@
|
|
|
9371
10720
|
"immutable": true,
|
|
9372
10721
|
"locationInModule": {
|
|
9373
10722
|
"filename": "lib/fleet-base.ts",
|
|
9374
|
-
"line":
|
|
10723
|
+
"line": 101
|
|
9375
10724
|
},
|
|
9376
10725
|
"name": "gameSessionActivationTimeout",
|
|
9377
10726
|
"optional": true,
|
|
@@ -9390,7 +10739,7 @@
|
|
|
9390
10739
|
"immutable": true,
|
|
9391
10740
|
"locationInModule": {
|
|
9392
10741
|
"filename": "lib/fleet-base.ts",
|
|
9393
|
-
"line":
|
|
10742
|
+
"line": 109
|
|
9394
10743
|
},
|
|
9395
10744
|
"name": "maxConcurrentGameSessionActivations",
|
|
9396
10745
|
"optional": true,
|
|
@@ -10039,7 +11388,7 @@
|
|
|
10039
11388
|
"kind": "interface",
|
|
10040
11389
|
"locationInModule": {
|
|
10041
11390
|
"filename": "lib/fleet-base.ts",
|
|
10042
|
-
"line":
|
|
11391
|
+
"line": 58
|
|
10043
11392
|
},
|
|
10044
11393
|
"name": "ServerProcess",
|
|
10045
11394
|
"properties": [
|
|
@@ -10053,7 +11402,7 @@
|
|
|
10053
11402
|
"immutable": true,
|
|
10054
11403
|
"locationInModule": {
|
|
10055
11404
|
"filename": "lib/fleet-base.ts",
|
|
10056
|
-
"line":
|
|
11405
|
+
"line": 71
|
|
10057
11406
|
},
|
|
10058
11407
|
"name": "launchPath",
|
|
10059
11408
|
"type": {
|
|
@@ -10071,7 +11420,7 @@
|
|
|
10071
11420
|
"immutable": true,
|
|
10072
11421
|
"locationInModule": {
|
|
10073
11422
|
"filename": "lib/fleet-base.ts",
|
|
10074
|
-
"line":
|
|
11423
|
+
"line": 65
|
|
10075
11424
|
},
|
|
10076
11425
|
"name": "concurrentExecutions",
|
|
10077
11426
|
"optional": true,
|
|
@@ -10089,7 +11438,7 @@
|
|
|
10089
11438
|
"immutable": true,
|
|
10090
11439
|
"locationInModule": {
|
|
10091
11440
|
"filename": "lib/fleet-base.ts",
|
|
10092
|
-
"line":
|
|
11441
|
+
"line": 78
|
|
10093
11442
|
},
|
|
10094
11443
|
"name": "parameters",
|
|
10095
11444
|
"optional": true,
|
|
@@ -10101,6 +11450,6 @@
|
|
|
10101
11450
|
"symbolId": "lib/fleet-base:ServerProcess"
|
|
10102
11451
|
}
|
|
10103
11452
|
},
|
|
10104
|
-
"version": "2.
|
|
11453
|
+
"version": "2.55.1-alpha.0",
|
|
10105
11454
|
"fingerprint": "**********"
|
|
10106
11455
|
}
|