aws-sdk-gamelift 1.15.0 → 1.16.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.
@@ -45,6 +45,8 @@ module Aws::GameLift
45
45
  CreatePlayerSessionOutput = Shapes::StructureShape.new(name: 'CreatePlayerSessionOutput')
46
46
  CreatePlayerSessionsInput = Shapes::StructureShape.new(name: 'CreatePlayerSessionsInput')
47
47
  CreatePlayerSessionsOutput = Shapes::StructureShape.new(name: 'CreatePlayerSessionsOutput')
48
+ CreateScriptInput = Shapes::StructureShape.new(name: 'CreateScriptInput')
49
+ CreateScriptOutput = Shapes::StructureShape.new(name: 'CreateScriptOutput')
48
50
  CreateVpcPeeringAuthorizationInput = Shapes::StructureShape.new(name: 'CreateVpcPeeringAuthorizationInput')
49
51
  CreateVpcPeeringAuthorizationOutput = Shapes::StructureShape.new(name: 'CreateVpcPeeringAuthorizationOutput')
50
52
  CreateVpcPeeringConnectionInput = Shapes::StructureShape.new(name: 'CreateVpcPeeringConnectionInput')
@@ -60,6 +62,7 @@ module Aws::GameLift
60
62
  DeleteMatchmakingRuleSetInput = Shapes::StructureShape.new(name: 'DeleteMatchmakingRuleSetInput')
61
63
  DeleteMatchmakingRuleSetOutput = Shapes::StructureShape.new(name: 'DeleteMatchmakingRuleSetOutput')
62
64
  DeleteScalingPolicyInput = Shapes::StructureShape.new(name: 'DeleteScalingPolicyInput')
65
+ DeleteScriptInput = Shapes::StructureShape.new(name: 'DeleteScriptInput')
63
66
  DeleteVpcPeeringAuthorizationInput = Shapes::StructureShape.new(name: 'DeleteVpcPeeringAuthorizationInput')
64
67
  DeleteVpcPeeringAuthorizationOutput = Shapes::StructureShape.new(name: 'DeleteVpcPeeringAuthorizationOutput')
65
68
  DeleteVpcPeeringConnectionInput = Shapes::StructureShape.new(name: 'DeleteVpcPeeringConnectionInput')
@@ -102,6 +105,8 @@ module Aws::GameLift
102
105
  DescribeRuntimeConfigurationOutput = Shapes::StructureShape.new(name: 'DescribeRuntimeConfigurationOutput')
103
106
  DescribeScalingPoliciesInput = Shapes::StructureShape.new(name: 'DescribeScalingPoliciesInput')
104
107
  DescribeScalingPoliciesOutput = Shapes::StructureShape.new(name: 'DescribeScalingPoliciesOutput')
108
+ DescribeScriptInput = Shapes::StructureShape.new(name: 'DescribeScriptInput')
109
+ DescribeScriptOutput = Shapes::StructureShape.new(name: 'DescribeScriptOutput')
105
110
  DescribeVpcPeeringAuthorizationsInput = Shapes::StructureShape.new(name: 'DescribeVpcPeeringAuthorizationsInput')
106
111
  DescribeVpcPeeringAuthorizationsOutput = Shapes::StructureShape.new(name: 'DescribeVpcPeeringAuthorizationsOutput')
107
112
  DescribeVpcPeeringConnectionsInput = Shapes::StructureShape.new(name: 'DescribeVpcPeeringConnectionsInput')
@@ -183,6 +188,8 @@ module Aws::GameLift
183
188
  ListBuildsOutput = Shapes::StructureShape.new(name: 'ListBuildsOutput')
184
189
  ListFleetsInput = Shapes::StructureShape.new(name: 'ListFleetsInput')
185
190
  ListFleetsOutput = Shapes::StructureShape.new(name: 'ListFleetsOutput')
191
+ ListScriptsInput = Shapes::StructureShape.new(name: 'ListScriptsInput')
192
+ ListScriptsOutput = Shapes::StructureShape.new(name: 'ListScriptsOutput')
186
193
  MatchedPlayerSession = Shapes::StructureShape.new(name: 'MatchedPlayerSession')
187
194
  MatchedPlayerSessionList = Shapes::ListShape.new(name: 'MatchedPlayerSessionList')
188
195
  MatchmakerData = Shapes::StringShape.new(name: 'MatchmakerData')
@@ -248,6 +255,9 @@ module Aws::GameLift
248
255
  ScalingPolicy = Shapes::StructureShape.new(name: 'ScalingPolicy')
249
256
  ScalingPolicyList = Shapes::ListShape.new(name: 'ScalingPolicyList')
250
257
  ScalingStatusType = Shapes::StringShape.new(name: 'ScalingStatusType')
258
+ Script = Shapes::StructureShape.new(name: 'Script')
259
+ ScriptId = Shapes::StringShape.new(name: 'ScriptId')
260
+ ScriptList = Shapes::ListShape.new(name: 'ScriptList')
251
261
  SearchGameSessionsInput = Shapes::StructureShape.new(name: 'SearchGameSessionsInput')
252
262
  SearchGameSessionsOutput = Shapes::StructureShape.new(name: 'SearchGameSessionsOutput')
253
263
  ServerProcess = Shapes::StructureShape.new(name: 'ServerProcess')
@@ -293,6 +303,8 @@ module Aws::GameLift
293
303
  UpdateMatchmakingConfigurationOutput = Shapes::StructureShape.new(name: 'UpdateMatchmakingConfigurationOutput')
294
304
  UpdateRuntimeConfigurationInput = Shapes::StructureShape.new(name: 'UpdateRuntimeConfigurationInput')
295
305
  UpdateRuntimeConfigurationOutput = Shapes::StructureShape.new(name: 'UpdateRuntimeConfigurationOutput')
306
+ UpdateScriptInput = Shapes::StructureShape.new(name: 'UpdateScriptInput')
307
+ UpdateScriptOutput = Shapes::StructureShape.new(name: 'UpdateScriptOutput')
296
308
  ValidateMatchmakingRuleSetInput = Shapes::StructureShape.new(name: 'ValidateMatchmakingRuleSetInput')
297
309
  ValidateMatchmakingRuleSetOutput = Shapes::StructureShape.new(name: 'ValidateMatchmakingRuleSetOutput')
298
310
  VpcPeeringAuthorization = Shapes::StructureShape.new(name: 'VpcPeeringAuthorization')
@@ -301,6 +313,7 @@ module Aws::GameLift
301
313
  VpcPeeringConnectionList = Shapes::ListShape.new(name: 'VpcPeeringConnectionList')
302
314
  VpcPeeringConnectionStatus = Shapes::StructureShape.new(name: 'VpcPeeringConnectionStatus')
303
315
  WholeNumber = Shapes::IntegerShape.new(name: 'WholeNumber')
316
+ ZipBlob = Shapes::BlobShape.new(name: 'ZipBlob')
304
317
 
305
318
  AcceptMatchInput.add_member(:ticket_id, Shapes::ShapeRef.new(shape: MatchmakingIdStringModel, required: true, location_name: "TicketId"))
306
319
  AcceptMatchInput.add_member(:player_ids, Shapes::ShapeRef.new(shape: StringList, required: true, location_name: "PlayerIds"))
@@ -363,7 +376,8 @@ module Aws::GameLift
363
376
 
364
377
  CreateFleetInput.add_member(:name, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, required: true, location_name: "Name"))
365
378
  CreateFleetInput.add_member(:description, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, location_name: "Description"))
366
- CreateFleetInput.add_member(:build_id, Shapes::ShapeRef.new(shape: BuildId, required: true, location_name: "BuildId"))
379
+ CreateFleetInput.add_member(:build_id, Shapes::ShapeRef.new(shape: BuildId, location_name: "BuildId"))
380
+ CreateFleetInput.add_member(:script_id, Shapes::ShapeRef.new(shape: ScriptId, location_name: "ScriptId"))
367
381
  CreateFleetInput.add_member(:server_launch_path, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, location_name: "ServerLaunchPath"))
368
382
  CreateFleetInput.add_member(:server_launch_parameters, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, location_name: "ServerLaunchParameters"))
369
383
  CreateFleetInput.add_member(:log_paths, Shapes::ShapeRef.new(shape: StringList, location_name: "LogPaths"))
@@ -445,6 +459,15 @@ module Aws::GameLift
445
459
  CreatePlayerSessionsOutput.add_member(:player_sessions, Shapes::ShapeRef.new(shape: PlayerSessionList, location_name: "PlayerSessions"))
446
460
  CreatePlayerSessionsOutput.struct_class = Types::CreatePlayerSessionsOutput
447
461
 
462
+ CreateScriptInput.add_member(:name, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, location_name: "Name"))
463
+ CreateScriptInput.add_member(:version, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, location_name: "Version"))
464
+ CreateScriptInput.add_member(:storage_location, Shapes::ShapeRef.new(shape: S3Location, location_name: "StorageLocation"))
465
+ CreateScriptInput.add_member(:zip_file, Shapes::ShapeRef.new(shape: ZipBlob, location_name: "ZipFile"))
466
+ CreateScriptInput.struct_class = Types::CreateScriptInput
467
+
468
+ CreateScriptOutput.add_member(:script, Shapes::ShapeRef.new(shape: Script, location_name: "Script"))
469
+ CreateScriptOutput.struct_class = Types::CreateScriptOutput
470
+
448
471
  CreateVpcPeeringAuthorizationInput.add_member(:game_lift_aws_account_id, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, required: true, location_name: "GameLiftAwsAccountId"))
449
472
  CreateVpcPeeringAuthorizationInput.add_member(:peer_vpc_id, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, required: true, location_name: "PeerVpcId"))
450
473
  CreateVpcPeeringAuthorizationInput.struct_class = Types::CreateVpcPeeringAuthorizationInput
@@ -487,6 +510,9 @@ module Aws::GameLift
487
510
  DeleteScalingPolicyInput.add_member(:fleet_id, Shapes::ShapeRef.new(shape: FleetId, required: true, location_name: "FleetId"))
488
511
  DeleteScalingPolicyInput.struct_class = Types::DeleteScalingPolicyInput
489
512
 
513
+ DeleteScriptInput.add_member(:script_id, Shapes::ShapeRef.new(shape: ScriptId, required: true, location_name: "ScriptId"))
514
+ DeleteScriptInput.struct_class = Types::DeleteScriptInput
515
+
490
516
  DeleteVpcPeeringAuthorizationInput.add_member(:game_lift_aws_account_id, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, required: true, location_name: "GameLiftAwsAccountId"))
491
517
  DeleteVpcPeeringAuthorizationInput.add_member(:peer_vpc_id, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, required: true, location_name: "PeerVpcId"))
492
518
  DeleteVpcPeeringAuthorizationInput.struct_class = Types::DeleteVpcPeeringAuthorizationInput
@@ -663,6 +689,12 @@ module Aws::GameLift
663
689
  DescribeScalingPoliciesOutput.add_member(:next_token, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, location_name: "NextToken"))
664
690
  DescribeScalingPoliciesOutput.struct_class = Types::DescribeScalingPoliciesOutput
665
691
 
692
+ DescribeScriptInput.add_member(:script_id, Shapes::ShapeRef.new(shape: ScriptId, required: true, location_name: "ScriptId"))
693
+ DescribeScriptInput.struct_class = Types::DescribeScriptInput
694
+
695
+ DescribeScriptOutput.add_member(:script, Shapes::ShapeRef.new(shape: Script, location_name: "Script"))
696
+ DescribeScriptOutput.struct_class = Types::DescribeScriptOutput
697
+
666
698
  DescribeVpcPeeringAuthorizationsInput.struct_class = Types::DescribeVpcPeeringAuthorizationsInput
667
699
 
668
700
  DescribeVpcPeeringAuthorizationsOutput.add_member(:vpc_peering_authorizations, Shapes::ShapeRef.new(shape: VpcPeeringAuthorizationList, location_name: "VpcPeeringAuthorizations"))
@@ -718,6 +750,7 @@ module Aws::GameLift
718
750
  FleetAttributes.add_member(:termination_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "TerminationTime"))
719
751
  FleetAttributes.add_member(:status, Shapes::ShapeRef.new(shape: FleetStatus, location_name: "Status"))
720
752
  FleetAttributes.add_member(:build_id, Shapes::ShapeRef.new(shape: BuildId, location_name: "BuildId"))
753
+ FleetAttributes.add_member(:script_id, Shapes::ShapeRef.new(shape: ScriptId, location_name: "ScriptId"))
721
754
  FleetAttributes.add_member(:server_launch_path, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, location_name: "ServerLaunchPath"))
722
755
  FleetAttributes.add_member(:server_launch_parameters, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, location_name: "ServerLaunchParameters"))
723
756
  FleetAttributes.add_member(:log_paths, Shapes::ShapeRef.new(shape: StringList, location_name: "LogPaths"))
@@ -888,6 +921,7 @@ module Aws::GameLift
888
921
  ListBuildsOutput.struct_class = Types::ListBuildsOutput
889
922
 
890
923
  ListFleetsInput.add_member(:build_id, Shapes::ShapeRef.new(shape: BuildId, location_name: "BuildId"))
924
+ ListFleetsInput.add_member(:script_id, Shapes::ShapeRef.new(shape: ScriptId, location_name: "ScriptId"))
891
925
  ListFleetsInput.add_member(:limit, Shapes::ShapeRef.new(shape: PositiveInteger, location_name: "Limit"))
892
926
  ListFleetsInput.add_member(:next_token, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, location_name: "NextToken"))
893
927
  ListFleetsInput.struct_class = Types::ListFleetsInput
@@ -896,6 +930,14 @@ module Aws::GameLift
896
930
  ListFleetsOutput.add_member(:next_token, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, location_name: "NextToken"))
897
931
  ListFleetsOutput.struct_class = Types::ListFleetsOutput
898
932
 
933
+ ListScriptsInput.add_member(:limit, Shapes::ShapeRef.new(shape: PositiveInteger, location_name: "Limit"))
934
+ ListScriptsInput.add_member(:next_token, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "NextToken"))
935
+ ListScriptsInput.struct_class = Types::ListScriptsInput
936
+
937
+ ListScriptsOutput.add_member(:scripts, Shapes::ShapeRef.new(shape: ScriptList, location_name: "Scripts"))
938
+ ListScriptsOutput.add_member(:next_token, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "NextToken"))
939
+ ListScriptsOutput.struct_class = Types::ListScriptsOutput
940
+
899
941
  MatchedPlayerSession.add_member(:player_id, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, location_name: "PlayerId"))
900
942
  MatchedPlayerSession.add_member(:player_session_id, Shapes::ShapeRef.new(shape: PlayerSessionId, location_name: "PlayerSessionId"))
901
943
  MatchedPlayerSession.struct_class = Types::MatchedPlayerSession
@@ -1042,6 +1084,7 @@ module Aws::GameLift
1042
1084
  S3Location.add_member(:bucket, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Bucket"))
1043
1085
  S3Location.add_member(:key, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "Key"))
1044
1086
  S3Location.add_member(:role_arn, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "RoleArn"))
1087
+ S3Location.add_member(:object_version, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "ObjectVersion"))
1045
1088
  S3Location.struct_class = Types::S3Location
1046
1089
 
1047
1090
  ScalingPolicy.add_member(:fleet_id, Shapes::ShapeRef.new(shape: FleetId, location_name: "FleetId"))
@@ -1059,6 +1102,16 @@ module Aws::GameLift
1059
1102
 
1060
1103
  ScalingPolicyList.member = Shapes::ShapeRef.new(shape: ScalingPolicy)
1061
1104
 
1105
+ Script.add_member(:script_id, Shapes::ShapeRef.new(shape: ScriptId, location_name: "ScriptId"))
1106
+ Script.add_member(:name, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, location_name: "Name"))
1107
+ Script.add_member(:version, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, location_name: "Version"))
1108
+ Script.add_member(:size_on_disk, Shapes::ShapeRef.new(shape: PositiveLong, location_name: "SizeOnDisk"))
1109
+ Script.add_member(:creation_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "CreationTime"))
1110
+ Script.add_member(:storage_location, Shapes::ShapeRef.new(shape: S3Location, location_name: "StorageLocation"))
1111
+ Script.struct_class = Types::Script
1112
+
1113
+ ScriptList.member = Shapes::ShapeRef.new(shape: Script)
1114
+
1062
1115
  SearchGameSessionsInput.add_member(:fleet_id, Shapes::ShapeRef.new(shape: FleetId, location_name: "FleetId"))
1063
1116
  SearchGameSessionsInput.add_member(:alias_id, Shapes::ShapeRef.new(shape: AliasId, location_name: "AliasId"))
1064
1117
  SearchGameSessionsInput.add_member(:filter_expression, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, location_name: "FilterExpression"))
@@ -1227,6 +1280,16 @@ module Aws::GameLift
1227
1280
  UpdateRuntimeConfigurationOutput.add_member(:runtime_configuration, Shapes::ShapeRef.new(shape: RuntimeConfiguration, location_name: "RuntimeConfiguration"))
1228
1281
  UpdateRuntimeConfigurationOutput.struct_class = Types::UpdateRuntimeConfigurationOutput
1229
1282
 
1283
+ UpdateScriptInput.add_member(:script_id, Shapes::ShapeRef.new(shape: ScriptId, required: true, location_name: "ScriptId"))
1284
+ UpdateScriptInput.add_member(:name, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, location_name: "Name"))
1285
+ UpdateScriptInput.add_member(:version, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, location_name: "Version"))
1286
+ UpdateScriptInput.add_member(:storage_location, Shapes::ShapeRef.new(shape: S3Location, location_name: "StorageLocation"))
1287
+ UpdateScriptInput.add_member(:zip_file, Shapes::ShapeRef.new(shape: ZipBlob, location_name: "ZipFile"))
1288
+ UpdateScriptInput.struct_class = Types::UpdateScriptInput
1289
+
1290
+ UpdateScriptOutput.add_member(:script, Shapes::ShapeRef.new(shape: Script, location_name: "Script"))
1291
+ UpdateScriptOutput.struct_class = Types::UpdateScriptOutput
1292
+
1230
1293
  ValidateMatchmakingRuleSetInput.add_member(:rule_set_body, Shapes::ShapeRef.new(shape: RuleSetBody, required: true, location_name: "RuleSetBody"))
1231
1294
  ValidateMatchmakingRuleSetInput.struct_class = Types::ValidateMatchmakingRuleSetInput
1232
1295
 
@@ -1409,6 +1472,18 @@ module Aws::GameLift
1409
1472
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1410
1473
  end)
1411
1474
 
1475
+ api.add_operation(:create_script, Seahorse::Model::Operation.new.tap do |o|
1476
+ o.name = "CreateScript"
1477
+ o.http_method = "POST"
1478
+ o.http_request_uri = "/"
1479
+ o.input = Shapes::ShapeRef.new(shape: CreateScriptInput)
1480
+ o.output = Shapes::ShapeRef.new(shape: CreateScriptOutput)
1481
+ o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
1482
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1483
+ o.errors << Shapes::ShapeRef.new(shape: ConflictException)
1484
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
1485
+ end)
1486
+
1412
1487
  api.add_operation(:create_vpc_peering_authorization, Seahorse::Model::Operation.new.tap do |o|
1413
1488
  o.name = "CreateVpcPeeringAuthorization"
1414
1489
  o.http_method = "POST"
@@ -1518,6 +1593,18 @@ module Aws::GameLift
1518
1593
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1519
1594
  end)
1520
1595
 
1596
+ api.add_operation(:delete_script, Seahorse::Model::Operation.new.tap do |o|
1597
+ o.name = "DeleteScript"
1598
+ o.http_method = "POST"
1599
+ o.http_request_uri = "/"
1600
+ o.input = Shapes::ShapeRef.new(shape: DeleteScriptInput)
1601
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
1602
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1603
+ o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
1604
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1605
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
1606
+ end)
1607
+
1521
1608
  api.add_operation(:delete_vpc_peering_authorization, Seahorse::Model::Operation.new.tap do |o|
1522
1609
  o.name = "DeleteVpcPeeringAuthorization"
1523
1610
  o.http_method = "POST"
@@ -1769,6 +1856,18 @@ module Aws::GameLift
1769
1856
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1770
1857
  end)
1771
1858
 
1859
+ api.add_operation(:describe_script, Seahorse::Model::Operation.new.tap do |o|
1860
+ o.name = "DescribeScript"
1861
+ o.http_method = "POST"
1862
+ o.http_request_uri = "/"
1863
+ o.input = Shapes::ShapeRef.new(shape: DescribeScriptInput)
1864
+ o.output = Shapes::ShapeRef.new(shape: DescribeScriptOutput)
1865
+ o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
1866
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1867
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
1868
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1869
+ end)
1870
+
1772
1871
  api.add_operation(:describe_vpc_peering_authorizations, Seahorse::Model::Operation.new.tap do |o|
1773
1872
  o.name = "DescribeVpcPeeringAuthorizations"
1774
1873
  o.http_method = "POST"
@@ -1850,6 +1949,17 @@ module Aws::GameLift
1850
1949
  o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
1851
1950
  end)
1852
1951
 
1952
+ api.add_operation(:list_scripts, Seahorse::Model::Operation.new.tap do |o|
1953
+ o.name = "ListScripts"
1954
+ o.http_method = "POST"
1955
+ o.http_request_uri = "/"
1956
+ o.input = Shapes::ShapeRef.new(shape: ListScriptsInput)
1957
+ o.output = Shapes::ShapeRef.new(shape: ListScriptsOutput)
1958
+ o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
1959
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1960
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
1961
+ end)
1962
+
1853
1963
  api.add_operation(:put_scaling_policy, Seahorse::Model::Operation.new.tap do |o|
1854
1964
  o.name = "PutScalingPolicy"
1855
1965
  o.http_method = "POST"
@@ -2104,6 +2214,18 @@ module Aws::GameLift
2104
2214
  o.errors << Shapes::ShapeRef.new(shape: InvalidFleetStatusException)
2105
2215
  end)
2106
2216
 
2217
+ api.add_operation(:update_script, Seahorse::Model::Operation.new.tap do |o|
2218
+ o.name = "UpdateScript"
2219
+ o.http_method = "POST"
2220
+ o.http_request_uri = "/"
2221
+ o.input = Shapes::ShapeRef.new(shape: UpdateScriptInput)
2222
+ o.output = Shapes::ShapeRef.new(shape: UpdateScriptOutput)
2223
+ o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
2224
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
2225
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
2226
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
2227
+ end)
2228
+
2107
2229
  api.add_operation(:validate_matchmaking_rule_set, Seahorse::Model::Operation.new.tap do |o|
2108
2230
  o.name = "ValidateMatchmakingRuleSet"
2109
2231
  o.http_method = "POST"
@@ -184,7 +184,9 @@ module Aws::GameLift
184
184
  include Aws::Structure
185
185
  end
186
186
 
187
- # Properties describing a game build.
187
+ # Properties describing a custom game build.
188
+ #
189
+ # **Related operations**
188
190
  #
189
191
  # * CreateBuild
190
192
  #
@@ -207,8 +209,8 @@ module Aws::GameLift
207
209
  # @return [String]
208
210
  #
209
211
  # @!attribute [rw] version
210
- # Version that is associated with this build. Version strings do not
211
- # need to be unique. This value can be set using CreateBuild or
212
+ # Version that is associated with a build or script. Version strings
213
+ # do not need to be unique. This value can be set using CreateBuild or
212
214
  # UpdateBuild.
213
215
  # @return [String]
214
216
  #
@@ -322,6 +324,7 @@ module Aws::GameLift
322
324
  # bucket: "NonEmptyString",
323
325
  # key: "NonEmptyString",
324
326
  # role_arn: "NonEmptyString",
327
+ # object_version: "NonEmptyString",
325
328
  # },
326
329
  # operating_system: "WINDOWS_2012", # accepts WINDOWS_2012, AMAZON_LINUX
327
330
  # }
@@ -333,19 +336,19 @@ module Aws::GameLift
333
336
  # @return [String]
334
337
  #
335
338
  # @!attribute [rw] version
336
- # Version that is associated with this build. Version strings do not
337
- # need to be unique. You can use UpdateBuild to change this value
338
- # later.
339
+ # Version that is associated with a build or script. Version strings
340
+ # do not need to be unique. You can use UpdateBuild to change this
341
+ # value later.
339
342
  # @return [String]
340
343
  #
341
344
  # @!attribute [rw] storage_location
342
345
  # Information indicating where your game build files are stored. Use
343
346
  # this parameter only when creating a build with files stored in an
344
347
  # Amazon S3 bucket that you own. The storage location must specify an
345
- # Amazon S3 bucket name and key, as well as a role ARN that you set up
346
- # to allow Amazon GameLift to access your Amazon S3 bucket. The S3
347
- # bucket must be in the same region that you want to create a new
348
- # build in.
348
+ # Amazon S3 bucket name and key, as well as a the ARN for a role that
349
+ # you set up to allow Amazon GameLift to access your Amazon S3 bucket.
350
+ # The S3 bucket must be in the same region that you want to create a
351
+ # new build in.
349
352
  # @return [Types::S3Location]
350
353
  #
351
354
  # @!attribute [rw] operating_system
@@ -405,7 +408,8 @@ module Aws::GameLift
405
408
  # {
406
409
  # name: "NonZeroAndMaxString", # required
407
410
  # description: "NonZeroAndMaxString",
408
- # build_id: "BuildId", # required
411
+ # build_id: "BuildId",
412
+ # script_id: "ScriptId",
409
413
  # server_launch_path: "NonZeroAndMaxString",
410
414
  # server_launch_parameters: "NonZeroAndMaxString",
411
415
  # log_paths: ["NonZeroAndMaxString"],
@@ -452,9 +456,16 @@ module Aws::GameLift
452
456
  #
453
457
  # @!attribute [rw] build_id
454
458
  # Unique identifier for a build to be deployed on the new fleet. The
455
- # build must have been successfully uploaded to Amazon GameLift and be
456
- # in a `READY` status. This fleet setting cannot be changed once the
457
- # fleet is created.
459
+ # custom game server build must have been successfully uploaded to
460
+ # Amazon GameLift and be in a `READY` status. This fleet setting
461
+ # cannot be changed once the fleet is created.
462
+ # @return [String]
463
+ #
464
+ # @!attribute [rw] script_id
465
+ # Unique identifier for a Realtime script to be deployed on the new
466
+ # fleet. The Realtime script must have been successfully uploaded to
467
+ # Amazon GameLift. This fleet setting cannot be changed once the fleet
468
+ # is created.
458
469
  # @return [String]
459
470
  #
460
471
  # @!attribute [rw] server_launch_path
@@ -498,10 +509,12 @@ module Aws::GameLift
498
509
  #
499
510
  # @!attribute [rw] ec2_inbound_permissions
500
511
  # Range of IP addresses and port settings that permit inbound traffic
501
- # to access server processes running on the fleet. If no inbound
502
- # permissions are set, including both IP address range and port range,
503
- # the server processes in the fleet cannot accept connections. You can
504
- # specify one or more sets of permissions for a fleet.
512
+ # to access game sessions that running on the fleet. For fleets using
513
+ # a custom game build, this parameter is required before game sessions
514
+ # running on the fleet can accept connections. For Realtime Servers
515
+ # fleets, Amazon GameLift automatically sets TCP and UDP ranges for
516
+ # use by the Realtime servers. You can specify multiple permission
517
+ # settings or add more by updating the fleet.
505
518
  # @return [Array<Types::IpPermission>]
506
519
  #
507
520
  # @!attribute [rw] new_game_session_protection_policy
@@ -521,18 +534,14 @@ module Aws::GameLift
521
534
  #
522
535
  # @!attribute [rw] runtime_configuration
523
536
  # Instructions for launching server processes on each instance in the
524
- # fleet. The run-time configuration for a fleet has a collection of
525
- # server process configurations, one for each type of server process
526
- # to run on an instance. A server process configuration specifies the
527
- # location of the server executable, launch parameters, and the number
528
- # of concurrent processes with that configuration to maintain on each
529
- # instance. A CreateFleet request must include a run-time
530
- # configuration with at least one server process configuration;
531
- # otherwise the request fails with an invalid request exception. (This
532
- # parameter replaces the parameters `ServerLaunchPath` and
533
- # `ServerLaunchParameters`; requests that contain values for these
534
- # parameters instead of a run-time configuration will continue to
535
- # work.)
537
+ # fleet. Server processes run either a custom game build executable or
538
+ # a Realtime Servers script. The run-time configuration lists the
539
+ # types of server processes to run on an instance and includes the
540
+ # following configuration settings: the server executable or launch
541
+ # script file, launch parameters, and the number of processes to run
542
+ # concurrently on each instance. A CreateFleet request must include a
543
+ # run-time configuration with at least one server process
544
+ # configuration.
536
545
  # @return [Types::RuntimeConfiguration]
537
546
  #
538
547
  # @!attribute [rw] resource_creation_limit_policy
@@ -570,27 +579,24 @@ module Aws::GameLift
570
579
  # @!attribute [rw] fleet_type
571
580
  # Indicates whether to use on-demand instances or spot instances for
572
581
  # this fleet. If empty, the default is ON\_DEMAND. Both categories of
573
- # instances use identical hardware and configurations, based on the
574
- # instance type selected for this fleet. You can acquire on-demand
575
- # instances at any time for a fixed price and keep them as long as you
576
- # need them. Spot instances have lower prices, but spot pricing is
577
- # variable, and while in use they can be interrupted (with a
578
- # two-minute notification). Learn more about Amazon GameLift spot
579
- # instances with at [ Set up Access to External Services][1].
582
+ # instances use identical hardware and configurations based on the
583
+ # instance type selected for this fleet. Learn more about [ On-Demand
584
+ # versus Spot Instances][1].
580
585
  #
581
586
  #
582
587
  #
583
- # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-credentials.html
588
+ # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-ec2-instances.html#gamelift-ec2-instances-spot
584
589
  # @return [String]
585
590
  #
586
591
  # @!attribute [rw] instance_role_arn
587
592
  # Unique identifier for an AWS IAM role that manages access to your
588
- # AWS services. Any application that runs on an instance in this fleet
589
- # can assume the role, including install scripts, server processs,
590
- # daemons (background processes). Create a role or look up a role's
591
- # ARN using the [IAM dashboard][1] in the AWS Management Console.
592
- # Learn more about using on-box credentials for your game servers at [
593
- # Access external resources from a game server][2].
593
+ # AWS services. With an instance role ARN set, any application that
594
+ # runs on an instance in this fleet can assume the role, including
595
+ # install scripts, server processes, daemons (background processes).
596
+ # Create a role or look up a role's ARN using the [IAM dashboard][1]
597
+ # in the AWS Management Console. Learn more about using on-box
598
+ # credentials for your game servers at [ Access external resources
599
+ # from a game server][2].
594
600
  #
595
601
  #
596
602
  #
@@ -604,6 +610,7 @@ module Aws::GameLift
604
610
  :name,
605
611
  :description,
606
612
  :build_id,
613
+ :script_id,
607
614
  :server_launch_path,
608
615
  :server_launch_parameters,
609
616
  :log_paths,
@@ -1116,6 +1123,83 @@ module Aws::GameLift
1116
1123
  include Aws::Structure
1117
1124
  end
1118
1125
 
1126
+ # @note When making an API call, you may pass CreateScriptInput
1127
+ # data as a hash:
1128
+ #
1129
+ # {
1130
+ # name: "NonZeroAndMaxString",
1131
+ # version: "NonZeroAndMaxString",
1132
+ # storage_location: {
1133
+ # bucket: "NonEmptyString",
1134
+ # key: "NonEmptyString",
1135
+ # role_arn: "NonEmptyString",
1136
+ # object_version: "NonEmptyString",
1137
+ # },
1138
+ # zip_file: "data",
1139
+ # }
1140
+ #
1141
+ # @!attribute [rw] name
1142
+ # Descriptive label that is associated with a script. Script names do
1143
+ # not need to be unique. You can use UpdateScript to change this value
1144
+ # later.
1145
+ # @return [String]
1146
+ #
1147
+ # @!attribute [rw] version
1148
+ # Version that is associated with a build or script. Version strings
1149
+ # do not need to be unique. You can use UpdateScript to change this
1150
+ # value later.
1151
+ # @return [String]
1152
+ #
1153
+ # @!attribute [rw] storage_location
1154
+ # Location of the Amazon S3 bucket where a zipped file containing your
1155
+ # Realtime scripts is stored. The storage location must specify the
1156
+ # Amazon S3 bucket name, the zip file name (the "key"), and a role
1157
+ # ARN that allows Amazon GameLift to access the Amazon S3 storage
1158
+ # location. The S3 bucket must be in the same region where you want to
1159
+ # create a new script. By default, Amazon GameLift uploads the latest
1160
+ # version of the zip file; if you have S3 object versioning turned on,
1161
+ # you can use the `ObjectVersion` parameter to specify an earlier
1162
+ # version.
1163
+ # @return [Types::S3Location]
1164
+ #
1165
+ # @!attribute [rw] zip_file
1166
+ # Data object containing your Realtime scripts and dependencies as a
1167
+ # zip file. The zip file can have one or multiple files. Maximum size
1168
+ # of a zip file is 5 MB.
1169
+ #
1170
+ # When using the AWS CLI tool to create a script, this parameter is
1171
+ # set to the zip file name. It must be prepended with the string
1172
+ # "fileb://" to indicate that the file data is a binary object. For
1173
+ # example: `--zip-file fileb://myRealtimeScript.zip`.
1174
+ # @return [String]
1175
+ #
1176
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/CreateScriptInput AWS API Documentation
1177
+ #
1178
+ class CreateScriptInput < Struct.new(
1179
+ :name,
1180
+ :version,
1181
+ :storage_location,
1182
+ :zip_file)
1183
+ include Aws::Structure
1184
+ end
1185
+
1186
+ # @!attribute [rw] script
1187
+ # The newly created script record with a unique script ID. The new
1188
+ # script's storage location reflects an Amazon S3 location: (1) If
1189
+ # the script was uploaded from an S3 bucket under your account, the
1190
+ # storage location reflects the information that was provided in the
1191
+ # *CreateScript* request; (2) If the script file was uploaded from a
1192
+ # local zip file, the storage location reflects an S3 location
1193
+ # controls by the Amazon GameLift service.
1194
+ # @return [Types::Script]
1195
+ #
1196
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/CreateScriptOutput AWS API Documentation
1197
+ #
1198
+ class CreateScriptOutput < Struct.new(
1199
+ :script)
1200
+ include Aws::Structure
1201
+ end
1202
+
1119
1203
  # Represents the input for a request action.
1120
1204
  #
1121
1205
  # @note When making an API call, you may pass CreateVpcPeeringAuthorizationInput
@@ -1380,6 +1464,24 @@ module Aws::GameLift
1380
1464
  include Aws::Structure
1381
1465
  end
1382
1466
 
1467
+ # @note When making an API call, you may pass DeleteScriptInput
1468
+ # data as a hash:
1469
+ #
1470
+ # {
1471
+ # script_id: "ScriptId", # required
1472
+ # }
1473
+ #
1474
+ # @!attribute [rw] script_id
1475
+ # Unique identifier for a Realtime script to delete.
1476
+ # @return [String]
1477
+ #
1478
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/DeleteScriptInput AWS API Documentation
1479
+ #
1480
+ class DeleteScriptInput < Struct.new(
1481
+ :script_id)
1482
+ include Aws::Structure
1483
+ end
1484
+
1383
1485
  # Represents the input for a request action.
1384
1486
  #
1385
1487
  # @note When making an API call, you may pass DeleteVpcPeeringAuthorizationInput
@@ -2539,6 +2641,35 @@ module Aws::GameLift
2539
2641
  include Aws::Structure
2540
2642
  end
2541
2643
 
2644
+ # @note When making an API call, you may pass DescribeScriptInput
2645
+ # data as a hash:
2646
+ #
2647
+ # {
2648
+ # script_id: "ScriptId", # required
2649
+ # }
2650
+ #
2651
+ # @!attribute [rw] script_id
2652
+ # Unique identifier for a Realtime script to retrieve properties for.
2653
+ # @return [String]
2654
+ #
2655
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/DescribeScriptInput AWS API Documentation
2656
+ #
2657
+ class DescribeScriptInput < Struct.new(
2658
+ :script_id)
2659
+ include Aws::Structure
2660
+ end
2661
+
2662
+ # @!attribute [rw] script
2663
+ # Set of properties describing the requested script.
2664
+ # @return [Types::Script]
2665
+ #
2666
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/DescribeScriptOutput AWS API Documentation
2667
+ #
2668
+ class DescribeScriptOutput < Struct.new(
2669
+ :script)
2670
+ include Aws::Structure
2671
+ end
2672
+
2542
2673
  # @api private
2543
2674
  #
2544
2675
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/DescribeVpcPeeringAuthorizationsInput AWS API Documentation
@@ -2995,7 +3126,7 @@ module Aws::GameLift
2995
3126
  #
2996
3127
  # * **DOWNLOADING/VALIDATING/BUILDING/ACTIVATING** -- Amazon GameLift
2997
3128
  # is setting up the new fleet, creating new instances with the game
2998
- # build and starting server processes.
3129
+ # build or Realtime script and starting server processes.
2999
3130
  #
3000
3131
  # * **ACTIVE** -- Hosts can now accept game sessions.
3001
3132
  #
@@ -3011,6 +3142,10 @@ module Aws::GameLift
3011
3142
  # Unique identifier for a build.
3012
3143
  # @return [String]
3013
3144
  #
3145
+ # @!attribute [rw] script_id
3146
+ # Unique identifier for a Realtime script.
3147
+ # @return [String]
3148
+ #
3014
3149
  # @!attribute [rw] server_launch_path
3015
3150
  # Path to a game server executable in the fleet's build, specified
3016
3151
  # for fleets created before 2016-08-04 (or AWS SDK v. 0.12.16). Server
@@ -3076,12 +3211,13 @@ module Aws::GameLift
3076
3211
  #
3077
3212
  # @!attribute [rw] instance_role_arn
3078
3213
  # Unique identifier for an AWS IAM role that manages access to your
3079
- # AWS services. Any application that runs on an instance in this fleet
3080
- # can assume the role, including install scripts, server processs,
3081
- # daemons (background processes). Create a role or look up a role's
3082
- # ARN using the [IAM dashboard][1] in the AWS Management Console.
3083
- # Learn more about using on-box credentials for your game servers at [
3084
- # Access external resources from a game server][2].
3214
+ # AWS services. With an instance role ARN set, any application that
3215
+ # runs on an instance in this fleet can assume the role, including
3216
+ # install scripts, server processes, daemons (background processes).
3217
+ # Create a role or look up a role's ARN using the [IAM dashboard][1]
3218
+ # in the AWS Management Console. Learn more about using on-box
3219
+ # credentials for your game servers at [ Access external resources
3220
+ # from a game server][2].
3085
3221
  #
3086
3222
  #
3087
3223
  #
@@ -3102,6 +3238,7 @@ module Aws::GameLift
3102
3238
  :termination_time,
3103
3239
  :status,
3104
3240
  :build_id,
3241
+ :script_id,
3105
3242
  :server_launch_path,
3106
3243
  :server_launch_parameters,
3107
3244
  :log_paths,
@@ -4000,10 +4137,13 @@ module Aws::GameLift
4000
4137
  end
4001
4138
 
4002
4139
  # A range of IP addresses and port settings that allow inbound traffic
4003
- # to connect to server processes on Amazon GameLift. Each game session
4004
- # hosted on a fleet is assigned a unique combination of IP address and
4005
- # port number, which must fall into the fleet's allowed ranges. This
4006
- # combination is included in the GameSession object.
4140
+ # to connect to server processes on an Amazon GameLift. New game
4141
+ # sessions that are started on the fleet are assigned an IP address/port
4142
+ # number combination, which must fall into the fleet's allowed ranges.
4143
+ # For fleets created with a custom game server, the ranges reflect the
4144
+ # server's game session assignments. For Realtime Servers fleets,
4145
+ # Amazon GameLift automatically opens two port ranges, one for TCP
4146
+ # messaging and one for UDP for use by the Realtime servers.
4007
4147
  #
4008
4148
  # @note When making an API call, you may pass IpPermission
4009
4149
  # data as a hash:
@@ -4196,6 +4336,7 @@ module Aws::GameLift
4196
4336
  #
4197
4337
  # {
4198
4338
  # build_id: "BuildId",
4339
+ # script_id: "ScriptId",
4199
4340
  # limit: 1,
4200
4341
  # next_token: "NonZeroAndMaxString",
4201
4342
  # }
@@ -4206,6 +4347,12 @@ module Aws::GameLift
4206
4347
  # retrieve all fleets, leave this parameter empty.
4207
4348
  # @return [String]
4208
4349
  #
4350
+ # @!attribute [rw] script_id
4351
+ # Unique identifier for a Realtime script to return fleets for. Use
4352
+ # this parameter to return only fleets using the specified script. To
4353
+ # retrieve all fleets, leave this parameter empty.
4354
+ # @return [String]
4355
+ #
4209
4356
  # @!attribute [rw] limit
4210
4357
  # Maximum number of results to return. Use this parameter with
4211
4358
  # `NextToken` to get results as a set of sequential pages.
@@ -4222,6 +4369,7 @@ module Aws::GameLift
4222
4369
  #
4223
4370
  class ListFleetsInput < Struct.new(
4224
4371
  :build_id,
4372
+ :script_id,
4225
4373
  :limit,
4226
4374
  :next_token)
4227
4375
  include Aws::Structure
@@ -4250,6 +4398,52 @@ module Aws::GameLift
4250
4398
  include Aws::Structure
4251
4399
  end
4252
4400
 
4401
+ # @note When making an API call, you may pass ListScriptsInput
4402
+ # data as a hash:
4403
+ #
4404
+ # {
4405
+ # limit: 1,
4406
+ # next_token: "NonEmptyString",
4407
+ # }
4408
+ #
4409
+ # @!attribute [rw] limit
4410
+ # Maximum number of results to return. Use this parameter with
4411
+ # `NextToken` to get results as a set of sequential pages.
4412
+ # @return [Integer]
4413
+ #
4414
+ # @!attribute [rw] next_token
4415
+ # Token that indicates the start of the next sequential page of
4416
+ # results. Use the token that is returned with a previous call to this
4417
+ # action. To start at the beginning of the result set, do not specify
4418
+ # a value.
4419
+ # @return [String]
4420
+ #
4421
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/ListScriptsInput AWS API Documentation
4422
+ #
4423
+ class ListScriptsInput < Struct.new(
4424
+ :limit,
4425
+ :next_token)
4426
+ include Aws::Structure
4427
+ end
4428
+
4429
+ # @!attribute [rw] scripts
4430
+ # Set of properties describing the requested script.
4431
+ # @return [Array<Types::Script>]
4432
+ #
4433
+ # @!attribute [rw] next_token
4434
+ # Token that indicates where to resume retrieving results on the next
4435
+ # call to this action. If no token is returned, these results
4436
+ # represent the end of the list.
4437
+ # @return [String]
4438
+ #
4439
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/ListScriptsOutput AWS API Documentation
4440
+ #
4441
+ class ListScriptsOutput < Struct.new(
4442
+ :scripts,
4443
+ :next_token)
4444
+ include Aws::Structure
4445
+ end
4446
+
4253
4447
  # Represents a new player session that is created as a result of a
4254
4448
  # successful FlexMatch match. A successful match automatically creates
4255
4449
  # new player sessions for every player ID in the original matchmaking
@@ -5202,28 +5396,20 @@ module Aws::GameLift
5202
5396
  end
5203
5397
 
5204
5398
  # A collection of server process configurations that describe what
5205
- # processes to run on each instance in a fleet. All fleets must have a
5206
- # run-time configuration. Each instance in the fleet launches the server
5207
- # processes specified in the run-time configuration and launches new
5208
- # ones as existing processes end. Each instance regularly checks for an
5209
- # updated run-time configuration and follows the new instructions.
5399
+ # processes to run on each instance in a fleet. Server processes run
5400
+ # either a custom game build executable or a Realtime Servers script.
5401
+ # Each instance in the fleet starts the specified server processes and
5402
+ # continues to start new processes as existing processes end. An
5403
+ # instance regularly checks for an updated run-time configuration.
5210
5404
  #
5211
5405
  # The run-time configuration enables the instances in a fleet to run
5212
- # multiple processes simultaneously. Potential scenarios are as follows:
5213
- # (1) Run multiple processes of a single game server executable to
5214
- # maximize usage of your hosting resources. (2) Run one or more
5215
- # processes of different build executables, such as your game server
5216
- # executable and a related program, or two or more different versions of
5217
- # a game server. (3) Run multiple processes of a single game server but
5218
- # with different launch parameters, for example to run one process on
5219
- # each instance in debug mode.
5406
+ # multiple processes simultaneously. Learn more about [ Running Multiple
5407
+ # Processes on a Fleet ][1].
5220
5408
  #
5221
5409
  # A Amazon GameLift instance is limited to 50 processes running
5222
- # simultaneously. A run-time configuration must specify fewer than this
5223
- # limit. To calculate the total number of processes specified in a
5410
+ # simultaneously. To calculate the total number of processes in a
5224
5411
  # run-time configuration, add the values of the `ConcurrentExecutions`
5225
- # parameter for each ` ServerProcess ` object in the run-time
5226
- # configuration.
5412
+ # parameter for each ServerProcess object.
5227
5413
  #
5228
5414
  # * CreateFleet
5229
5415
  #
@@ -5263,6 +5449,10 @@ module Aws::GameLift
5263
5449
  #
5264
5450
  # * StopFleetActions
5265
5451
  #
5452
+ #
5453
+ #
5454
+ # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-multiprocess.html
5455
+ #
5266
5456
  # @note When making an API call, you may pass RuntimeConfiguration
5267
5457
  # data as a hash:
5268
5458
  #
@@ -5306,14 +5496,9 @@ module Aws::GameLift
5306
5496
  include Aws::Structure
5307
5497
  end
5308
5498
 
5309
- # Location in Amazon Simple Storage Service (Amazon S3) where build
5310
- # files can be stored for access by Amazon GameLift. This location is
5311
- # specified in a CreateBuild request. For more details, see the [Create
5312
- # a Build with Files in Amazon S3][1].
5313
- #
5314
- #
5315
- #
5316
- # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-build-cli-uploading.html#gamelift-build-cli-uploading-create-build
5499
+ # Location in Amazon Simple Storage Service (Amazon S3) where build or
5500
+ # script files are stored for access by Amazon GameLift. This location
5501
+ # is specified in CreateBuild, CreateScript, and UpdateScript requests.
5317
5502
  #
5318
5503
  # @note When making an API call, you may pass S3Location
5319
5504
  # data as a hash:
@@ -5322,31 +5507,41 @@ module Aws::GameLift
5322
5507
  # bucket: "NonEmptyString",
5323
5508
  # key: "NonEmptyString",
5324
5509
  # role_arn: "NonEmptyString",
5510
+ # object_version: "NonEmptyString",
5325
5511
  # }
5326
5512
  #
5327
5513
  # @!attribute [rw] bucket
5328
- # Amazon S3 bucket identifier. This is the name of your S3 bucket.
5514
+ # Amazon S3 bucket identifier. This is the name of the S3 bucket.
5329
5515
  # @return [String]
5330
5516
  #
5331
5517
  # @!attribute [rw] key
5332
- # Name of the zip file containing your build files.
5518
+ # Name of the zip file containing the build files or script files.
5333
5519
  # @return [String]
5334
5520
  #
5335
5521
  # @!attribute [rw] role_arn
5336
- # Amazon Resource Name ([ARN][1]) for the access role that allows
5337
- # Amazon GameLift to access your S3 bucket.
5522
+ # Amazon Resource Name ([ARN][1]) for an IAM role that allows Amazon
5523
+ # GameLift to access the S3 bucket.
5338
5524
  #
5339
5525
  #
5340
5526
  #
5341
5527
  # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/s3-arn-format.html
5342
5528
  # @return [String]
5343
5529
  #
5530
+ # @!attribute [rw] object_version
5531
+ # Version of the file, if object versioning is turned on for the
5532
+ # bucket. Amazon GameLift uses this information when retrieving files
5533
+ # from an S3 bucket that you own. Use this parameter to specify a
5534
+ # specific version of the file; if not set, the latest version of the
5535
+ # file is retrieved.
5536
+ # @return [String]
5537
+ #
5344
5538
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/S3Location AWS API Documentation
5345
5539
  #
5346
5540
  class S3Location < Struct.new(
5347
5541
  :bucket,
5348
5542
  :key,
5349
- :role_arn)
5543
+ :role_arn,
5544
+ :object_version)
5350
5545
  include Aws::Structure
5351
5546
  end
5352
5547
 
@@ -5521,6 +5716,64 @@ module Aws::GameLift
5521
5716
  include Aws::Structure
5522
5717
  end
5523
5718
 
5719
+ # Properties describing a Realtime script.
5720
+ #
5721
+ # **Related operations**
5722
+ #
5723
+ # * CreateScript
5724
+ #
5725
+ # * ListScripts
5726
+ #
5727
+ # * DescribeScript
5728
+ #
5729
+ # * UpdateScript
5730
+ #
5731
+ # * DeleteScript
5732
+ #
5733
+ # @!attribute [rw] script_id
5734
+ # Unique identifier for a Realtime script
5735
+ # @return [String]
5736
+ #
5737
+ # @!attribute [rw] name
5738
+ # Descriptive label that is associated with a script. Script names do
5739
+ # not need to be unique.
5740
+ # @return [String]
5741
+ #
5742
+ # @!attribute [rw] version
5743
+ # Version that is associated with a build or script. Version strings
5744
+ # do not need to be unique.
5745
+ # @return [String]
5746
+ #
5747
+ # @!attribute [rw] size_on_disk
5748
+ # File size of the uploaded Realtime script, expressed in bytes. When
5749
+ # files are uploaded from an S3 location, this value remains at "0".
5750
+ # @return [Integer]
5751
+ #
5752
+ # @!attribute [rw] creation_time
5753
+ # Time stamp indicating when this data object was created. Format is a
5754
+ # number expressed in Unix time as milliseconds (for example
5755
+ # "1469498468.057").
5756
+ # @return [Time]
5757
+ #
5758
+ # @!attribute [rw] storage_location
5759
+ # Location in Amazon Simple Storage Service (Amazon S3) where build or
5760
+ # script files are stored for access by Amazon GameLift. This location
5761
+ # is specified in CreateBuild, CreateScript, and UpdateScript
5762
+ # requests.
5763
+ # @return [Types::S3Location]
5764
+ #
5765
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/Script AWS API Documentation
5766
+ #
5767
+ class Script < Struct.new(
5768
+ :script_id,
5769
+ :name,
5770
+ :version,
5771
+ :size_on_disk,
5772
+ :creation_time,
5773
+ :storage_location)
5774
+ include Aws::Structure
5775
+ end
5776
+
5524
5777
  # Represents the input for a request action.
5525
5778
  #
5526
5779
  # @note When making an API call, you may pass SearchGameSessionsInput
@@ -5660,10 +5913,12 @@ module Aws::GameLift
5660
5913
  end
5661
5914
 
5662
5915
  # A set of instructions for launching server processes on each instance
5663
- # in a fleet. Each instruction set identifies the location of the server
5664
- # executable, optional launch parameters, and the number of server
5665
- # processes with this configuration to maintain concurrently on the
5666
- # instance. Server process configurations make up a fleet's `
5916
+ # in a fleet. Server processes run either a custom game build executable
5917
+ # or a Realtime Servers script. Each instruction set identifies the
5918
+ # location of the custom game build executable or Realtime launch
5919
+ # script, optional launch parameters, and the number of server processes
5920
+ # with this configuration to maintain concurrently on the instance.
5921
+ # Server process configurations make up a fleet's `
5667
5922
  # RuntimeConfiguration `.
5668
5923
  #
5669
5924
  # @note When making an API call, you may pass ServerProcess
@@ -5676,19 +5931,22 @@ module Aws::GameLift
5676
5931
  # }
5677
5932
  #
5678
5933
  # @!attribute [rw] launch_path
5679
- # Location of the server executable in a game build. All game builds
5680
- # are installed on instances at the root : for Windows instances
5681
- # `C:\game`, and for Linux instances `/local/game`. A Windows game
5682
- # build with an executable file located at `MyGame\latest\server.exe`
5683
- # must have a launch path of "`C:\game\MyGame\latest\server.exe`". A
5684
- # Linux game build with an executable file located at
5685
- # `MyGame/latest/server.exe` must have a launch path of
5686
- # "`/local/game/MyGame/latest/server.exe`".
5934
+ # Location of the server executable in a custom game build or the name
5935
+ # of the Realtime script file that contains the `Init()` function.
5936
+ # Game builds and Realtime scripts are installed on instances at the
5937
+ # root:
5938
+ #
5939
+ # * Windows (for custom game builds only): `C:\game`. Example:
5940
+ # "`C:\game\MyGame\server.exe`"
5941
+ #
5942
+ # * Linux: `/local/game`. Examples:
5943
+ # "`/local/game/MyGame/server.exe`" or
5944
+ # "`/local/game/MyRealtimeScript.js`"
5687
5945
  # @return [String]
5688
5946
  #
5689
5947
  # @!attribute [rw] parameters
5690
- # Optional list of parameters to pass to the server executable on
5691
- # launch.
5948
+ # Optional list of parameters to pass to the server executable or
5949
+ # Realtime script on launch.
5692
5950
  # @return [String]
5693
5951
  #
5694
5952
  # @!attribute [rw] concurrent_executions
@@ -6226,8 +6484,8 @@ module Aws::GameLift
6226
6484
  # @return [String]
6227
6485
  #
6228
6486
  # @!attribute [rw] version
6229
- # Version that is associated with this build. Version strings do not
6230
- # need to be unique.
6487
+ # Version that is associated with a build or script. Version strings
6488
+ # do not need to be unique.
6231
6489
  # @return [String]
6232
6490
  #
6233
6491
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/UpdateBuildInput AWS API Documentation
@@ -6759,12 +7017,14 @@ module Aws::GameLift
6759
7017
  #
6760
7018
  # @!attribute [rw] runtime_configuration
6761
7019
  # Instructions for launching server processes on each instance in the
6762
- # fleet. The run-time configuration for a fleet has a collection of
6763
- # server process configurations, one for each type of server process
6764
- # to run on an instance. A server process configuration specifies the
6765
- # location of the server executable, launch parameters, and the number
6766
- # of concurrent processes with that configuration to maintain on each
6767
- # instance.
7020
+ # fleet. Server processes run either a custom game build executable or
7021
+ # a Realtime Servers script. The run-time configuration lists the
7022
+ # types of server processes to run on an instance and includes the
7023
+ # following configuration settings: the server executable or launch
7024
+ # script file, launch parameters, and the number of processes to run
7025
+ # concurrently on each instance. A CreateFleet request must include a
7026
+ # run-time configuration with at least one server process
7027
+ # configuration.
6768
7028
  # @return [Types::RuntimeConfiguration]
6769
7029
  #
6770
7030
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/UpdateRuntimeConfigurationInput AWS API Documentation
@@ -6789,6 +7049,87 @@ module Aws::GameLift
6789
7049
  include Aws::Structure
6790
7050
  end
6791
7051
 
7052
+ # @note When making an API call, you may pass UpdateScriptInput
7053
+ # data as a hash:
7054
+ #
7055
+ # {
7056
+ # script_id: "ScriptId", # required
7057
+ # name: "NonZeroAndMaxString",
7058
+ # version: "NonZeroAndMaxString",
7059
+ # storage_location: {
7060
+ # bucket: "NonEmptyString",
7061
+ # key: "NonEmptyString",
7062
+ # role_arn: "NonEmptyString",
7063
+ # object_version: "NonEmptyString",
7064
+ # },
7065
+ # zip_file: "data",
7066
+ # }
7067
+ #
7068
+ # @!attribute [rw] script_id
7069
+ # Unique identifier for a Realtime script to update.
7070
+ # @return [String]
7071
+ #
7072
+ # @!attribute [rw] name
7073
+ # Descriptive label that is associated with a script. Script names do
7074
+ # not need to be unique.
7075
+ # @return [String]
7076
+ #
7077
+ # @!attribute [rw] version
7078
+ # Version that is associated with a build or script. Version strings
7079
+ # do not need to be unique.
7080
+ # @return [String]
7081
+ #
7082
+ # @!attribute [rw] storage_location
7083
+ # Location of the Amazon S3 bucket where a zipped file containing your
7084
+ # Realtime scripts is stored. The storage location must specify the
7085
+ # Amazon S3 bucket name, the zip file name (the "key"), and a role
7086
+ # ARN that allows Amazon GameLift to access the Amazon S3 storage
7087
+ # location. The S3 bucket must be in the same region where you want to
7088
+ # create a new script. By default, Amazon GameLift uploads the latest
7089
+ # version of the zip file; if you have S3 object versioning turned on,
7090
+ # you can use the `ObjectVersion` parameter to specify an earlier
7091
+ # version.
7092
+ # @return [Types::S3Location]
7093
+ #
7094
+ # @!attribute [rw] zip_file
7095
+ # Data object containing your Realtime scripts and dependencies as a
7096
+ # zip file. The zip file can have one or multiple files. Maximum size
7097
+ # of a zip file is 5 MB.
7098
+ #
7099
+ # When using the AWS CLI tool to create a script, this parameter is
7100
+ # set to the zip file name. It must be prepended with the string
7101
+ # "fileb://" to indicate that the file data is a binary object. For
7102
+ # example: `--zip-file fileb://myRealtimeScript.zip`.
7103
+ # @return [String]
7104
+ #
7105
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/UpdateScriptInput AWS API Documentation
7106
+ #
7107
+ class UpdateScriptInput < Struct.new(
7108
+ :script_id,
7109
+ :name,
7110
+ :version,
7111
+ :storage_location,
7112
+ :zip_file)
7113
+ include Aws::Structure
7114
+ end
7115
+
7116
+ # @!attribute [rw] script
7117
+ # The newly created script record with a unique script ID. The new
7118
+ # script's storage location reflects an Amazon S3 location: (1) If
7119
+ # the script was uploaded from an S3 bucket under your account, the
7120
+ # storage location reflects the information that was provided in the
7121
+ # *CreateScript* request; (2) If the script file was uploaded from a
7122
+ # local zip file, the storage location reflects an S3 location
7123
+ # controls by the Amazon GameLift service.
7124
+ # @return [Types::Script]
7125
+ #
7126
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/UpdateScriptOutput AWS API Documentation
7127
+ #
7128
+ class UpdateScriptOutput < Struct.new(
7129
+ :script)
7130
+ include Aws::Structure
7131
+ end
7132
+
6792
7133
  # Represents the input for a request action.
6793
7134
  #
6794
7135
  # @note When making an API call, you may pass ValidateMatchmakingRuleSetInput