aws-sdk-gamelift 1.3.0 → 1.4.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.
@@ -115,6 +115,8 @@ module Aws::GameLift
115
115
  Event = Shapes::StructureShape.new(name: 'Event')
116
116
  EventCode = Shapes::StringShape.new(name: 'EventCode')
117
117
  EventList = Shapes::ListShape.new(name: 'EventList')
118
+ FleetAction = Shapes::StringShape.new(name: 'FleetAction')
119
+ FleetActionList = Shapes::ListShape.new(name: 'FleetActionList')
118
120
  FleetAttributes = Shapes::StructureShape.new(name: 'FleetAttributes')
119
121
  FleetAttributesList = Shapes::ListShape.new(name: 'FleetAttributesList')
120
122
  FleetCapacity = Shapes::StructureShape.new(name: 'FleetCapacity')
@@ -221,6 +223,7 @@ module Aws::GameLift
221
223
  PlayerSessionId = Shapes::StringShape.new(name: 'PlayerSessionId')
222
224
  PlayerSessionList = Shapes::ListShape.new(name: 'PlayerSessionList')
223
225
  PlayerSessionStatus = Shapes::StringShape.new(name: 'PlayerSessionStatus')
226
+ PolicyType = Shapes::StringShape.new(name: 'PolicyType')
224
227
  PortNumber = Shapes::IntegerShape.new(name: 'PortNumber')
225
228
  PositiveInteger = Shapes::IntegerShape.new(name: 'PositiveInteger')
226
229
  PositiveLong = Shapes::IntegerShape.new(name: 'PositiveLong')
@@ -248,12 +251,16 @@ module Aws::GameLift
248
251
  ServerProcess = Shapes::StructureShape.new(name: 'ServerProcess')
249
252
  ServerProcessList = Shapes::ListShape.new(name: 'ServerProcessList')
250
253
  SnsArnStringModel = Shapes::StringShape.new(name: 'SnsArnStringModel')
254
+ StartFleetActionsInput = Shapes::StructureShape.new(name: 'StartFleetActionsInput')
255
+ StartFleetActionsOutput = Shapes::StructureShape.new(name: 'StartFleetActionsOutput')
251
256
  StartGameSessionPlacementInput = Shapes::StructureShape.new(name: 'StartGameSessionPlacementInput')
252
257
  StartGameSessionPlacementOutput = Shapes::StructureShape.new(name: 'StartGameSessionPlacementOutput')
253
258
  StartMatchBackfillInput = Shapes::StructureShape.new(name: 'StartMatchBackfillInput')
254
259
  StartMatchBackfillOutput = Shapes::StructureShape.new(name: 'StartMatchBackfillOutput')
255
260
  StartMatchmakingInput = Shapes::StructureShape.new(name: 'StartMatchmakingInput')
256
261
  StartMatchmakingOutput = Shapes::StructureShape.new(name: 'StartMatchmakingOutput')
262
+ StopFleetActionsInput = Shapes::StructureShape.new(name: 'StopFleetActionsInput')
263
+ StopFleetActionsOutput = Shapes::StructureShape.new(name: 'StopFleetActionsOutput')
257
264
  StopGameSessionPlacementInput = Shapes::StructureShape.new(name: 'StopGameSessionPlacementInput')
258
265
  StopGameSessionPlacementOutput = Shapes::StructureShape.new(name: 'StopGameSessionPlacementOutput')
259
266
  StopMatchmakingInput = Shapes::StructureShape.new(name: 'StopMatchmakingInput')
@@ -261,6 +268,7 @@ module Aws::GameLift
261
268
  StringDoubleMap = Shapes::MapShape.new(name: 'StringDoubleMap')
262
269
  StringList = Shapes::ListShape.new(name: 'StringList')
263
270
  StringModel = Shapes::StringShape.new(name: 'StringModel')
271
+ TargetConfiguration = Shapes::StructureShape.new(name: 'TargetConfiguration')
264
272
  TerminalRoutingStrategyException = Shapes::StructureShape.new(name: 'TerminalRoutingStrategyException')
265
273
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
266
274
  UnauthorizedException = Shapes::StructureShape.new(name: 'UnauthorizedException')
@@ -690,6 +698,8 @@ module Aws::GameLift
690
698
 
691
699
  EventList.member = Shapes::ShapeRef.new(shape: Event)
692
700
 
701
+ FleetActionList.member = Shapes::ShapeRef.new(shape: FleetAction)
702
+
693
703
  FleetAttributes.add_member(:fleet_id, Shapes::ShapeRef.new(shape: FleetId, location_name: "FleetId"))
694
704
  FleetAttributes.add_member(:fleet_arn, Shapes::ShapeRef.new(shape: ArnStringModel, location_name: "FleetArn"))
695
705
  FleetAttributes.add_member(:fleet_type, Shapes::ShapeRef.new(shape: FleetType, location_name: "FleetType"))
@@ -707,6 +717,7 @@ module Aws::GameLift
707
717
  FleetAttributes.add_member(:operating_system, Shapes::ShapeRef.new(shape: OperatingSystem, location_name: "OperatingSystem"))
708
718
  FleetAttributes.add_member(:resource_creation_limit_policy, Shapes::ShapeRef.new(shape: ResourceCreationLimitPolicy, location_name: "ResourceCreationLimitPolicy"))
709
719
  FleetAttributes.add_member(:metric_groups, Shapes::ShapeRef.new(shape: MetricGroupList, location_name: "MetricGroups"))
720
+ FleetAttributes.add_member(:stopped_actions, Shapes::ShapeRef.new(shape: FleetActionList, location_name: "StoppedActions"))
710
721
  FleetAttributes.struct_class = Types::FleetAttributes
711
722
 
712
723
  FleetAttributesList.member = Shapes::ShapeRef.new(shape: FleetAttributes)
@@ -977,12 +988,14 @@ module Aws::GameLift
977
988
 
978
989
  PutScalingPolicyInput.add_member(:name, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, required: true, location_name: "Name"))
979
990
  PutScalingPolicyInput.add_member(:fleet_id, Shapes::ShapeRef.new(shape: FleetId, required: true, location_name: "FleetId"))
980
- PutScalingPolicyInput.add_member(:scaling_adjustment, Shapes::ShapeRef.new(shape: Integer, required: true, location_name: "ScalingAdjustment"))
981
- PutScalingPolicyInput.add_member(:scaling_adjustment_type, Shapes::ShapeRef.new(shape: ScalingAdjustmentType, required: true, location_name: "ScalingAdjustmentType"))
982
- PutScalingPolicyInput.add_member(:threshold, Shapes::ShapeRef.new(shape: Double, required: true, location_name: "Threshold"))
983
- PutScalingPolicyInput.add_member(:comparison_operator, Shapes::ShapeRef.new(shape: ComparisonOperatorType, required: true, location_name: "ComparisonOperator"))
984
- PutScalingPolicyInput.add_member(:evaluation_periods, Shapes::ShapeRef.new(shape: PositiveInteger, required: true, location_name: "EvaluationPeriods"))
991
+ PutScalingPolicyInput.add_member(:scaling_adjustment, Shapes::ShapeRef.new(shape: Integer, location_name: "ScalingAdjustment"))
992
+ PutScalingPolicyInput.add_member(:scaling_adjustment_type, Shapes::ShapeRef.new(shape: ScalingAdjustmentType, location_name: "ScalingAdjustmentType"))
993
+ PutScalingPolicyInput.add_member(:threshold, Shapes::ShapeRef.new(shape: Double, location_name: "Threshold"))
994
+ PutScalingPolicyInput.add_member(:comparison_operator, Shapes::ShapeRef.new(shape: ComparisonOperatorType, location_name: "ComparisonOperator"))
995
+ PutScalingPolicyInput.add_member(:evaluation_periods, Shapes::ShapeRef.new(shape: PositiveInteger, location_name: "EvaluationPeriods"))
985
996
  PutScalingPolicyInput.add_member(:metric_name, Shapes::ShapeRef.new(shape: MetricName, required: true, location_name: "MetricName"))
997
+ PutScalingPolicyInput.add_member(:policy_type, Shapes::ShapeRef.new(shape: PolicyType, location_name: "PolicyType"))
998
+ PutScalingPolicyInput.add_member(:target_configuration, Shapes::ShapeRef.new(shape: TargetConfiguration, location_name: "TargetConfiguration"))
986
999
  PutScalingPolicyInput.struct_class = Types::PutScalingPolicyInput
987
1000
 
988
1001
  PutScalingPolicyOutput.add_member(:name, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, location_name: "Name"))
@@ -1031,6 +1044,8 @@ module Aws::GameLift
1031
1044
  ScalingPolicy.add_member(:threshold, Shapes::ShapeRef.new(shape: Double, location_name: "Threshold"))
1032
1045
  ScalingPolicy.add_member(:evaluation_periods, Shapes::ShapeRef.new(shape: PositiveInteger, location_name: "EvaluationPeriods"))
1033
1046
  ScalingPolicy.add_member(:metric_name, Shapes::ShapeRef.new(shape: MetricName, location_name: "MetricName"))
1047
+ ScalingPolicy.add_member(:policy_type, Shapes::ShapeRef.new(shape: PolicyType, location_name: "PolicyType"))
1048
+ ScalingPolicy.add_member(:target_configuration, Shapes::ShapeRef.new(shape: TargetConfiguration, location_name: "TargetConfiguration"))
1034
1049
  ScalingPolicy.struct_class = Types::ScalingPolicy
1035
1050
 
1036
1051
  ScalingPolicyList.member = Shapes::ShapeRef.new(shape: ScalingPolicy)
@@ -1054,6 +1069,12 @@ module Aws::GameLift
1054
1069
 
1055
1070
  ServerProcessList.member = Shapes::ShapeRef.new(shape: ServerProcess)
1056
1071
 
1072
+ StartFleetActionsInput.add_member(:fleet_id, Shapes::ShapeRef.new(shape: FleetId, required: true, location_name: "FleetId"))
1073
+ StartFleetActionsInput.add_member(:actions, Shapes::ShapeRef.new(shape: FleetActionList, required: true, location_name: "Actions"))
1074
+ StartFleetActionsInput.struct_class = Types::StartFleetActionsInput
1075
+
1076
+ StartFleetActionsOutput.struct_class = Types::StartFleetActionsOutput
1077
+
1057
1078
  StartGameSessionPlacementInput.add_member(:placement_id, Shapes::ShapeRef.new(shape: IdStringModel, required: true, location_name: "PlacementId"))
1058
1079
  StartGameSessionPlacementInput.add_member(:game_session_queue_name, Shapes::ShapeRef.new(shape: GameSessionQueueName, required: true, location_name: "GameSessionQueueName"))
1059
1080
  StartGameSessionPlacementInput.add_member(:game_properties, Shapes::ShapeRef.new(shape: GamePropertyList, location_name: "GameProperties"))
@@ -1084,6 +1105,12 @@ module Aws::GameLift
1084
1105
  StartMatchmakingOutput.add_member(:matchmaking_ticket, Shapes::ShapeRef.new(shape: MatchmakingTicket, location_name: "MatchmakingTicket"))
1085
1106
  StartMatchmakingOutput.struct_class = Types::StartMatchmakingOutput
1086
1107
 
1108
+ StopFleetActionsInput.add_member(:fleet_id, Shapes::ShapeRef.new(shape: FleetId, required: true, location_name: "FleetId"))
1109
+ StopFleetActionsInput.add_member(:actions, Shapes::ShapeRef.new(shape: FleetActionList, required: true, location_name: "Actions"))
1110
+ StopFleetActionsInput.struct_class = Types::StopFleetActionsInput
1111
+
1112
+ StopFleetActionsOutput.struct_class = Types::StopFleetActionsOutput
1113
+
1087
1114
  StopGameSessionPlacementInput.add_member(:placement_id, Shapes::ShapeRef.new(shape: IdStringModel, required: true, location_name: "PlacementId"))
1088
1115
  StopGameSessionPlacementInput.struct_class = Types::StopGameSessionPlacementInput
1089
1116
 
@@ -1100,6 +1127,9 @@ module Aws::GameLift
1100
1127
 
1101
1128
  StringList.member = Shapes::ShapeRef.new(shape: NonZeroAndMaxString)
1102
1129
 
1130
+ TargetConfiguration.add_member(:target_value, Shapes::ShapeRef.new(shape: Double, required: true, location_name: "TargetValue"))
1131
+ TargetConfiguration.struct_class = Types::TargetConfiguration
1132
+
1103
1133
  UpdateAliasInput.add_member(:alias_id, Shapes::ShapeRef.new(shape: AliasId, required: true, location_name: "AliasId"))
1104
1134
  UpdateAliasInput.add_member(:name, Shapes::ShapeRef.new(shape: NonBlankAndLengthConstraintString, location_name: "Name"))
1105
1135
  UpdateAliasInput.add_member(:description, Shapes::ShapeRef.new(shape: NonZeroAndMaxString, location_name: "Description"))
@@ -1846,6 +1876,18 @@ module Aws::GameLift
1846
1876
  o.errors << Shapes::ShapeRef.new(shape: TerminalRoutingStrategyException)
1847
1877
  end)
1848
1878
 
1879
+ api.add_operation(:start_fleet_actions, Seahorse::Model::Operation.new.tap do |o|
1880
+ o.name = "StartFleetActions"
1881
+ o.http_method = "POST"
1882
+ o.http_request_uri = "/"
1883
+ o.input = Shapes::ShapeRef.new(shape: StartFleetActionsInput)
1884
+ o.output = Shapes::ShapeRef.new(shape: StartFleetActionsOutput)
1885
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
1886
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1887
+ o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
1888
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1889
+ end)
1890
+
1849
1891
  api.add_operation(:start_game_session_placement, Seahorse::Model::Operation.new.tap do |o|
1850
1892
  o.name = "StartGameSessionPlacement"
1851
1893
  o.http_method = "POST"
@@ -1882,6 +1924,18 @@ module Aws::GameLift
1882
1924
  o.errors << Shapes::ShapeRef.new(shape: UnsupportedRegionException)
1883
1925
  end)
1884
1926
 
1927
+ api.add_operation(:stop_fleet_actions, Seahorse::Model::Operation.new.tap do |o|
1928
+ o.name = "StopFleetActions"
1929
+ o.http_method = "POST"
1930
+ o.http_request_uri = "/"
1931
+ o.input = Shapes::ShapeRef.new(shape: StopFleetActionsInput)
1932
+ o.output = Shapes::ShapeRef.new(shape: StopFleetActionsOutput)
1933
+ o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
1934
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1935
+ o.errors << Shapes::ShapeRef.new(shape: UnauthorizedException)
1936
+ o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
1937
+ end)
1938
+
1885
1939
  api.add_operation(:stop_game_session_placement, Seahorse::Model::Operation.new.tap do |o|
1886
1940
  o.name = "StopGameSessionPlacement"
1887
1941
  o.http_method = "POST"
@@ -2567,16 +2567,22 @@ module Aws::GameLift
2567
2567
  #
2568
2568
  # * ListFleets
2569
2569
  #
2570
+ # * DeleteFleet
2571
+ #
2570
2572
  # * Describe fleets:
2571
2573
  #
2572
2574
  # * DescribeFleetAttributes
2573
2575
  #
2576
+ # * DescribeFleetCapacity
2577
+ #
2574
2578
  # * DescribeFleetPortSettings
2575
2579
  #
2576
2580
  # * DescribeFleetUtilization
2577
2581
  #
2578
2582
  # * DescribeRuntimeConfiguration
2579
2583
  #
2584
+ # * DescribeEC2InstanceLimits
2585
+ #
2580
2586
  # * DescribeFleetEvents
2581
2587
  #
2582
2588
  # * Update fleets:
@@ -2589,21 +2595,11 @@ module Aws::GameLift
2589
2595
  #
2590
2596
  # * UpdateRuntimeConfiguration
2591
2597
  #
2592
- # * Manage fleet capacity:
2593
- #
2594
- # * DescribeFleetCapacity
2595
- #
2596
- # * UpdateFleetCapacity
2597
- #
2598
- # * PutScalingPolicy (automatic scaling)
2599
- #
2600
- # * DescribeScalingPolicies (automatic scaling)
2601
- #
2602
- # * DeleteScalingPolicy (automatic scaling)
2598
+ # * Manage fleet actions:
2603
2599
  #
2604
- # * DescribeEC2InstanceLimits
2600
+ # * StartFleetActions
2605
2601
  #
2606
- # * DeleteFleet
2602
+ # * StopFleetActions
2607
2603
  #
2608
2604
  # @!attribute [rw] desired
2609
2605
  # Ideal number of active instances in the fleet.
@@ -2850,16 +2846,22 @@ module Aws::GameLift
2850
2846
  #
2851
2847
  # * ListFleets
2852
2848
  #
2849
+ # * DeleteFleet
2850
+ #
2853
2851
  # * Describe fleets:
2854
2852
  #
2855
2853
  # * DescribeFleetAttributes
2856
2854
  #
2855
+ # * DescribeFleetCapacity
2856
+ #
2857
2857
  # * DescribeFleetPortSettings
2858
2858
  #
2859
2859
  # * DescribeFleetUtilization
2860
2860
  #
2861
2861
  # * DescribeRuntimeConfiguration
2862
2862
  #
2863
+ # * DescribeEC2InstanceLimits
2864
+ #
2863
2865
  # * DescribeFleetEvents
2864
2866
  #
2865
2867
  # * Update fleets:
@@ -2872,21 +2874,11 @@ module Aws::GameLift
2872
2874
  #
2873
2875
  # * UpdateRuntimeConfiguration
2874
2876
  #
2875
- # * Manage fleet capacity:
2876
- #
2877
- # * DescribeFleetCapacity
2878
- #
2879
- # * UpdateFleetCapacity
2880
- #
2881
- # * PutScalingPolicy (automatic scaling)
2877
+ # * Manage fleet actions:
2882
2878
  #
2883
- # * DescribeScalingPolicies (automatic scaling)
2879
+ # * StartFleetActions
2884
2880
  #
2885
- # * DeleteScalingPolicy (automatic scaling)
2886
- #
2887
- # * DescribeEC2InstanceLimits
2888
- #
2889
- # * DeleteFleet
2881
+ # * StopFleetActions
2890
2882
  #
2891
2883
  # @!attribute [rw] fleet_id
2892
2884
  # Unique identifier for a fleet.
@@ -3017,6 +3009,11 @@ module Aws::GameLift
3017
3009
  # fleet can be included in only one metric group at a time.
3018
3010
  # @return [Array<String>]
3019
3011
  #
3012
+ # @!attribute [rw] stopped_actions
3013
+ # List of fleet actions that have been suspended using
3014
+ # StopFleetActions. This includes auto-scaling.
3015
+ # @return [Array<String>]
3016
+ #
3020
3017
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/FleetAttributes AWS API Documentation
3021
3018
  #
3022
3019
  class FleetAttributes < Struct.new(
@@ -3036,7 +3033,8 @@ module Aws::GameLift
3036
3033
  :new_game_session_protection_policy,
3037
3034
  :operating_system,
3038
3035
  :resource_creation_limit_policy,
3039
- :metric_groups)
3036
+ :metric_groups,
3037
+ :stopped_actions)
3040
3038
  include Aws::Structure
3041
3039
  end
3042
3040
 
@@ -3051,16 +3049,22 @@ module Aws::GameLift
3051
3049
  #
3052
3050
  # * ListFleets
3053
3051
  #
3052
+ # * DeleteFleet
3053
+ #
3054
3054
  # * Describe fleets:
3055
3055
  #
3056
3056
  # * DescribeFleetAttributes
3057
3057
  #
3058
+ # * DescribeFleetCapacity
3059
+ #
3058
3060
  # * DescribeFleetPortSettings
3059
3061
  #
3060
3062
  # * DescribeFleetUtilization
3061
3063
  #
3062
3064
  # * DescribeRuntimeConfiguration
3063
3065
  #
3066
+ # * DescribeEC2InstanceLimits
3067
+ #
3064
3068
  # * DescribeFleetEvents
3065
3069
  #
3066
3070
  # * Update fleets:
@@ -3073,21 +3077,11 @@ module Aws::GameLift
3073
3077
  #
3074
3078
  # * UpdateRuntimeConfiguration
3075
3079
  #
3076
- # * Manage fleet capacity:
3077
- #
3078
- # * DescribeFleetCapacity
3080
+ # * Manage fleet actions:
3079
3081
  #
3080
- # * UpdateFleetCapacity
3082
+ # * StartFleetActions
3081
3083
  #
3082
- # * PutScalingPolicy (automatic scaling)
3083
- #
3084
- # * DescribeScalingPolicies (automatic scaling)
3085
- #
3086
- # * DeleteScalingPolicy (automatic scaling)
3087
- #
3088
- # * DescribeEC2InstanceLimits
3089
- #
3090
- # * DeleteFleet
3084
+ # * StopFleetActions
3091
3085
  #
3092
3086
  # @!attribute [rw] fleet_id
3093
3087
  # Unique identifier for a fleet.
@@ -3128,16 +3122,22 @@ module Aws::GameLift
3128
3122
  #
3129
3123
  # * ListFleets
3130
3124
  #
3125
+ # * DeleteFleet
3126
+ #
3131
3127
  # * Describe fleets:
3132
3128
  #
3133
3129
  # * DescribeFleetAttributes
3134
3130
  #
3131
+ # * DescribeFleetCapacity
3132
+ #
3135
3133
  # * DescribeFleetPortSettings
3136
3134
  #
3137
3135
  # * DescribeFleetUtilization
3138
3136
  #
3139
3137
  # * DescribeRuntimeConfiguration
3140
3138
  #
3139
+ # * DescribeEC2InstanceLimits
3140
+ #
3141
3141
  # * DescribeFleetEvents
3142
3142
  #
3143
3143
  # * Update fleets:
@@ -3150,21 +3150,11 @@ module Aws::GameLift
3150
3150
  #
3151
3151
  # * UpdateRuntimeConfiguration
3152
3152
  #
3153
- # * Manage fleet capacity:
3154
- #
3155
- # * DescribeFleetCapacity
3156
- #
3157
- # * UpdateFleetCapacity
3153
+ # * Manage fleet actions:
3158
3154
  #
3159
- # * PutScalingPolicy (automatic scaling)
3155
+ # * StartFleetActions
3160
3156
  #
3161
- # * DescribeScalingPolicies (automatic scaling)
3162
- #
3163
- # * DeleteScalingPolicy (automatic scaling)
3164
- #
3165
- # * DescribeEC2InstanceLimits
3166
- #
3167
- # * DeleteFleet
3157
+ # * StopFleetActions
3168
3158
  #
3169
3159
  # @!attribute [rw] fleet_id
3170
3160
  # Unique identifier for a fleet.
@@ -3361,7 +3351,7 @@ module Aws::GameLift
3361
3351
  #
3362
3352
  # @!attribute [rw] matchmaker_data
3363
3353
  # Information about the matchmaking process that was used to create
3364
- # the game session. It is in JSON syntax, formated as a string. In
3354
+ # the game session. It is in JSON syntax, formatted as a string. In
3365
3355
  # addition the matchmaking configuration used, it contains data on all
3366
3356
  # players assigned to the match, including player attributes and team
3367
3357
  # assignments. For more details on matchmaker data, see [Match
@@ -3595,7 +3585,7 @@ module Aws::GameLift
3595
3585
  #
3596
3586
  # @!attribute [rw] matchmaker_data
3597
3587
  # Information on the matchmaking process for this game. Data is in
3598
- # JSON syntax, formated as a string. It identifies the matchmaking
3588
+ # JSON syntax, formatted as a string. It identifies the matchmaking
3599
3589
  # configuration used to create the match, and contains data on all
3600
3590
  # players assigned to the match, including player attributes and team
3601
3591
  # assignments. For more details on matchmaker data, see [Match
@@ -4806,12 +4796,16 @@ module Aws::GameLift
4806
4796
  # {
4807
4797
  # name: "NonZeroAndMaxString", # required
4808
4798
  # fleet_id: "FleetId", # required
4809
- # scaling_adjustment: 1, # required
4810
- # scaling_adjustment_type: "ChangeInCapacity", # required, accepts ChangeInCapacity, ExactCapacity, PercentChangeInCapacity
4811
- # threshold: 1.0, # required
4812
- # comparison_operator: "GreaterThanOrEqualToThreshold", # required, accepts GreaterThanOrEqualToThreshold, GreaterThanThreshold, LessThanThreshold, LessThanOrEqualToThreshold
4813
- # evaluation_periods: 1, # required
4799
+ # scaling_adjustment: 1,
4800
+ # scaling_adjustment_type: "ChangeInCapacity", # accepts ChangeInCapacity, ExactCapacity, PercentChangeInCapacity
4801
+ # threshold: 1.0,
4802
+ # comparison_operator: "GreaterThanOrEqualToThreshold", # accepts GreaterThanOrEqualToThreshold, GreaterThanThreshold, LessThanThreshold, LessThanOrEqualToThreshold
4803
+ # evaluation_periods: 1,
4814
4804
  # metric_name: "ActivatingGameSessions", # required, accepts ActivatingGameSessions, ActiveGameSessions, ActiveInstances, AvailableGameSessions, AvailablePlayerSessions, CurrentPlayerSessions, IdleInstances, PercentAvailableGameSessions, PercentIdleInstances, QueueDepth, WaitTime
4805
+ # policy_type: "RuleBased", # accepts RuleBased, TargetBased
4806
+ # target_configuration: {
4807
+ # target_value: 1.0, # required
4808
+ # },
4815
4809
  # }
4816
4810
  #
4817
4811
  # @!attribute [rw] name
@@ -4821,7 +4815,8 @@ module Aws::GameLift
4821
4815
  # @return [String]
4822
4816
  #
4823
4817
  # @!attribute [rw] fleet_id
4824
- # Unique identifier for a fleet to apply this policy to.
4818
+ # Unique identifier for a fleet to apply this policy to. The fleet
4819
+ # cannot be in any of the following statuses: ERROR or DELETING.
4825
4820
  # @return [String]
4826
4821
  #
4827
4822
  # @!attribute [rw] scaling_adjustment
@@ -4860,32 +4855,66 @@ module Aws::GameLift
4860
4855
  # @return [Integer]
4861
4856
  #
4862
4857
  # @!attribute [rw] metric_name
4863
- # Name of the Amazon GameLift-defined metric that is used to trigger
4864
- # an adjustment.
4858
+ # Name of the Amazon GameLift-defined metric that is used to trigger a
4859
+ # scaling adjustment. For detailed descriptions of fleet metrics, see
4860
+ # [Monitor Amazon GameLift with Amazon CloudWatch][1].
4865
4861
  #
4866
- # * **ActivatingGameSessions** -- number of game sessions in the
4867
- # process of being created (game session status = `ACTIVATING`).
4862
+ # * **ActivatingGameSessions** -- Game sessions in the process of
4863
+ # being created.
4868
4864
  #
4869
- # * **ActiveGameSessions** -- number of game sessions currently
4870
- # running (game session status = `ACTIVE`).
4865
+ # * **ActiveGameSessions** -- Game sessions that are currently
4866
+ # running.
4871
4867
  #
4872
- # * **CurrentPlayerSessions** -- number of active or reserved player
4873
- # sessions (player session status = `ACTIVE` or `RESERVED`).
4868
+ # * **ActiveInstances** -- Fleet instances that are currently running
4869
+ # at least one game session.
4874
4870
  #
4875
- # * **AvailablePlayerSessions** -- number of player session slots
4876
- # currently available in active game sessions across the fleet,
4877
- # calculated by subtracting a game session's current player session
4878
- # count from its maximum player session count. This number includes
4879
- # game sessions that are not currently accepting players (game
4880
- # session `PlayerSessionCreationPolicy` = `DENY_ALL`).
4871
+ # * **AvailableGameSessions** -- Additional game sessions that fleet
4872
+ # could host simultaneously, given current capacity.
4881
4873
  #
4882
- # * **ActiveInstances** -- number of instances currently running a
4883
- # game session.
4874
+ # * **AvailablePlayerSessions** -- Empty player slots in currently
4875
+ # active game sessions. This includes game sessions that are not
4876
+ # currently accepting players. Reserved player slots are not
4877
+ # included.
4884
4878
  #
4885
- # * **IdleInstances** -- number of instances not currently running a
4886
- # game session.
4879
+ # * **CurrentPlayerSessions** -- Player slots in active game sessions
4880
+ # that are being used by a player or are reserved for a player.
4881
+ #
4882
+ # * **IdleInstances** -- Active instances that are currently hosting
4883
+ # zero game sessions.
4884
+ #
4885
+ # * **PercentAvailableGameSessions** -- Unused percentage of the total
4886
+ # number of game sessions that a fleet could host simultaneously,
4887
+ # given current capacity. Use this metric for a target-based scaling
4888
+ # policy.
4889
+ #
4890
+ # * **PercentIdleInstances** -- Percentage of the total number of
4891
+ # active instances that are hosting zero game sessions.
4892
+ #
4893
+ # * **QueueDepth** -- Pending game session placement requests, in any
4894
+ # queue, where the current fleet is the top-priority destination.
4895
+ #
4896
+ # * **WaitTime** -- Current wait time for pending game session
4897
+ # placement requests, in any queue, where the current fleet is the
4898
+ # top-priority destination.
4899
+ #
4900
+ #
4901
+ #
4902
+ # [1]: http://docs.aws.amazon.com/gamelift/latest/developerguide/monitoring-cloudwatch.html
4903
+ # @return [String]
4904
+ #
4905
+ # @!attribute [rw] policy_type
4906
+ # Type of scaling policy to create. For a target-based policy, set the
4907
+ # parameter *MetricName* to 'PercentAvailableGameSessions' and
4908
+ # specify a *TargetConfiguration*. For a rule-based policy set the
4909
+ # following parameters: *MetricName*, *ComparisonOperator*,
4910
+ # *Threshold*, *EvaluationPeriods*, *ScalingAdjustmentType*, and
4911
+ # *ScalingAdjustment*.
4887
4912
  # @return [String]
4888
4913
  #
4914
+ # @!attribute [rw] target_configuration
4915
+ # Object that contains settings for a target-based scaling policy.
4916
+ # @return [Types::TargetConfiguration]
4917
+ #
4889
4918
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/PutScalingPolicyInput AWS API Documentation
4890
4919
  #
4891
4920
  class PutScalingPolicyInput < Struct.new(
@@ -4896,7 +4925,9 @@ module Aws::GameLift
4896
4925
  :threshold,
4897
4926
  :comparison_operator,
4898
4927
  :evaluation_periods,
4899
- :metric_name)
4928
+ :metric_name,
4929
+ :policy_type,
4930
+ :target_configuration)
4900
4931
  include Aws::Structure
4901
4932
  end
4902
4933
 
@@ -5034,16 +5065,22 @@ module Aws::GameLift
5034
5065
  #
5035
5066
  # * ListFleets
5036
5067
  #
5068
+ # * DeleteFleet
5069
+ #
5037
5070
  # * Describe fleets:
5038
5071
  #
5039
5072
  # * DescribeFleetAttributes
5040
5073
  #
5074
+ # * DescribeFleetCapacity
5075
+ #
5041
5076
  # * DescribeFleetPortSettings
5042
5077
  #
5043
5078
  # * DescribeFleetUtilization
5044
5079
  #
5045
5080
  # * DescribeRuntimeConfiguration
5046
5081
  #
5082
+ # * DescribeEC2InstanceLimits
5083
+ #
5047
5084
  # * DescribeFleetEvents
5048
5085
  #
5049
5086
  # * Update fleets:
@@ -5056,21 +5093,11 @@ module Aws::GameLift
5056
5093
  #
5057
5094
  # * UpdateRuntimeConfiguration
5058
5095
  #
5059
- # * Manage fleet capacity:
5096
+ # * Manage fleet actions:
5060
5097
  #
5061
- # * DescribeFleetCapacity
5062
- #
5063
- # * UpdateFleetCapacity
5098
+ # * StartFleetActions
5064
5099
  #
5065
- # * PutScalingPolicy (automatic scaling)
5066
- #
5067
- # * DescribeScalingPolicies (automatic scaling)
5068
- #
5069
- # * DeleteScalingPolicy (automatic scaling)
5070
- #
5071
- # * DescribeEC2InstanceLimits
5072
- #
5073
- # * DeleteFleet
5100
+ # * StopFleetActions
5074
5101
  #
5075
5102
  # @note When making an API call, you may pass RoutingStrategy
5076
5103
  # data as a hash:
@@ -5142,16 +5169,22 @@ module Aws::GameLift
5142
5169
  #
5143
5170
  # * ListFleets
5144
5171
  #
5172
+ # * DeleteFleet
5173
+ #
5145
5174
  # * Describe fleets:
5146
5175
  #
5147
5176
  # * DescribeFleetAttributes
5148
5177
  #
5178
+ # * DescribeFleetCapacity
5179
+ #
5149
5180
  # * DescribeFleetPortSettings
5150
5181
  #
5151
5182
  # * DescribeFleetUtilization
5152
5183
  #
5153
5184
  # * DescribeRuntimeConfiguration
5154
5185
  #
5186
+ # * DescribeEC2InstanceLimits
5187
+ #
5155
5188
  # * DescribeFleetEvents
5156
5189
  #
5157
5190
  # * Update fleets:
@@ -5164,21 +5197,11 @@ module Aws::GameLift
5164
5197
  #
5165
5198
  # * UpdateRuntimeConfiguration
5166
5199
  #
5167
- # * Manage fleet capacity:
5168
- #
5169
- # * DescribeFleetCapacity
5170
- #
5171
- # * UpdateFleetCapacity
5172
- #
5173
- # * PutScalingPolicy (automatic scaling)
5174
- #
5175
- # * DescribeScalingPolicies (automatic scaling)
5200
+ # * Manage fleet actions:
5176
5201
  #
5177
- # * DeleteScalingPolicy (automatic scaling)
5202
+ # * StartFleetActions
5178
5203
  #
5179
- # * DescribeEC2InstanceLimits
5180
- #
5181
- # * DeleteFleet
5204
+ # * StopFleetActions
5182
5205
  #
5183
5206
  # @note When making an API call, you may pass RuntimeConfiguration
5184
5207
  # data as a hash:
@@ -5270,49 +5293,27 @@ module Aws::GameLift
5270
5293
  # Rule that controls how a fleet is scaled. Scaling policies are
5271
5294
  # uniquely identified by the combination of name and fleet ID.
5272
5295
  #
5273
- # Fleet-related operations include:
5274
- #
5275
- # * CreateFleet
5276
- #
5277
- # * ListFleets
5278
- #
5279
- # * Describe fleets:
5280
- #
5281
- # * DescribeFleetAttributes
5282
- #
5283
- # * DescribeFleetPortSettings
5284
- #
5285
- # * DescribeFleetUtilization
5286
- #
5287
- # * DescribeRuntimeConfiguration
5288
- #
5289
- # * DescribeFleetEvents
5290
- #
5291
- # * Update fleets:
5292
- #
5293
- # * UpdateFleetAttributes
5294
- #
5295
- # * UpdateFleetCapacity
5296
+ # Operations related to fleet capacity scaling include:
5296
5297
  #
5297
- # * UpdateFleetPortSettings
5298
+ # * DescribeFleetCapacity
5298
5299
  #
5299
- # * UpdateRuntimeConfiguration
5300
+ # * UpdateFleetCapacity
5300
5301
  #
5301
- # * Manage fleet capacity:
5302
+ # * DescribeEC2InstanceLimits
5302
5303
  #
5303
- # * DescribeFleetCapacity
5304
+ # * Manage scaling policies:
5304
5305
  #
5305
- # * UpdateFleetCapacity
5306
+ # * PutScalingPolicy (auto-scaling)
5306
5307
  #
5307
- # * PutScalingPolicy (automatic scaling)
5308
+ # * DescribeScalingPolicies (auto-scaling)
5308
5309
  #
5309
- # * DescribeScalingPolicies (automatic scaling)
5310
+ # * DeleteScalingPolicy (auto-scaling)
5310
5311
  #
5311
- # * DeleteScalingPolicy (automatic scaling)
5312
+ # * Manage fleet actions:
5312
5313
  #
5313
- # * DescribeEC2InstanceLimits
5314
+ # * StartFleetActions
5314
5315
  #
5315
- # * DeleteFleet
5316
+ # * StopFleetActions
5316
5317
  #
5317
5318
  # @!attribute [rw] fleet_id
5318
5319
  # Unique identifier for a fleet that is associated with this scaling
@@ -5325,10 +5326,14 @@ module Aws::GameLift
5325
5326
  # @return [String]
5326
5327
  #
5327
5328
  # @!attribute [rw] status
5328
- # Current status of the scaling policy. The scaling policy is only in
5329
- # force when in an `ACTIVE` status.
5329
+ # Current status of the scaling policy. The scaling policy can be in
5330
+ # force only when in an `ACTIVE` status. Scaling policies can be
5331
+ # suspended for individual fleets (see StopFleetActions; if suspended
5332
+ # for a fleet, the policy status does not change. View a fleet's
5333
+ # stopped actions by calling DescribeFleetCapacity.
5330
5334
  #
5331
- # * **ACTIVE** -- The scaling policy is currently in force.
5335
+ # * **ACTIVE** -- The scaling policy can be used for auto-scaling a
5336
+ # fleet.
5332
5337
  #
5333
5338
  # * **UPDATE\_REQUESTED** -- A request to update the scaling policy
5334
5339
  # has been received.
@@ -5381,32 +5386,66 @@ module Aws::GameLift
5381
5386
  # @return [Integer]
5382
5387
  #
5383
5388
  # @!attribute [rw] metric_name
5384
- # Name of the Amazon GameLift-defined metric that is used to trigger
5385
- # an adjustment.
5389
+ # Name of the Amazon GameLift-defined metric that is used to trigger a
5390
+ # scaling adjustment. For detailed descriptions of fleet metrics, see
5391
+ # [Monitor Amazon GameLift with Amazon CloudWatch][1].
5392
+ #
5393
+ # * **ActivatingGameSessions** -- Game sessions in the process of
5394
+ # being created.
5395
+ #
5396
+ # * **ActiveGameSessions** -- Game sessions that are currently
5397
+ # running.
5398
+ #
5399
+ # * **ActiveInstances** -- Fleet instances that are currently running
5400
+ # at least one game session.
5401
+ #
5402
+ # * **AvailableGameSessions** -- Additional game sessions that fleet
5403
+ # could host simultaneously, given current capacity.
5404
+ #
5405
+ # * **AvailablePlayerSessions** -- Empty player slots in currently
5406
+ # active game sessions. This includes game sessions that are not
5407
+ # currently accepting players. Reserved player slots are not
5408
+ # included.
5409
+ #
5410
+ # * **CurrentPlayerSessions** -- Player slots in active game sessions
5411
+ # that are being used by a player or are reserved for a player.
5386
5412
  #
5387
- # * **ActivatingGameSessions** -- number of game sessions in the
5388
- # process of being created (game session status = `ACTIVATING`).
5413
+ # * **IdleInstances** -- Active instances that are currently hosting
5414
+ # zero game sessions.
5389
5415
  #
5390
- # * **ActiveGameSessions** -- number of game sessions currently
5391
- # running (game session status = `ACTIVE`).
5416
+ # * **PercentAvailableGameSessions** -- Unused percentage of the total
5417
+ # number of game sessions that a fleet could host simultaneously,
5418
+ # given current capacity. Use this metric for a target-based scaling
5419
+ # policy.
5392
5420
  #
5393
- # * **CurrentPlayerSessions** -- number of active or reserved player
5394
- # sessions (player session status = `ACTIVE` or `RESERVED`).
5421
+ # * **PercentIdleInstances** -- Percentage of the total number of
5422
+ # active instances that are hosting zero game sessions.
5395
5423
  #
5396
- # * **AvailablePlayerSessions** -- number of player session slots
5397
- # currently available in active game sessions across the fleet,
5398
- # calculated by subtracting a game session's current player session
5399
- # count from its maximum player session count. This number does
5400
- # include game sessions that are not currently accepting players
5401
- # (game session `PlayerSessionCreationPolicy` = `DENY_ALL`).
5424
+ # * **QueueDepth** -- Pending game session placement requests, in any
5425
+ # queue, where the current fleet is the top-priority destination.
5402
5426
  #
5403
- # * **ActiveInstances** -- number of instances currently running a
5404
- # game session.
5427
+ # * **WaitTime** -- Current wait time for pending game session
5428
+ # placement requests, in any queue, where the current fleet is the
5429
+ # top-priority destination.
5405
5430
  #
5406
- # * **IdleInstances** -- number of instances not currently running a
5407
- # game session.
5431
+ #
5432
+ #
5433
+ # [1]: http://docs.aws.amazon.com/gamelift/latest/developerguide/monitoring-cloudwatch.html
5434
+ # @return [String]
5435
+ #
5436
+ # @!attribute [rw] policy_type
5437
+ # Type of scaling policy to create. For a target-based policy, set the
5438
+ # parameter *MetricName* to 'PercentAvailableGameSessions' and
5439
+ # specify a *TargetConfiguration*. For a rule-based policy set the
5440
+ # following parameters: *MetricName*, *ComparisonOperator*,
5441
+ # *Threshold*, *EvaluationPeriods*, *ScalingAdjustmentType*, and
5442
+ # *ScalingAdjustment*.
5408
5443
  # @return [String]
5409
5444
  #
5445
+ # @!attribute [rw] target_configuration
5446
+ # Object that contains settings for a target-based scaling policy.
5447
+ # @return [Types::TargetConfiguration]
5448
+ #
5410
5449
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/ScalingPolicy AWS API Documentation
5411
5450
  #
5412
5451
  class ScalingPolicy < Struct.new(
@@ -5418,7 +5457,9 @@ module Aws::GameLift
5418
5457
  :comparison_operator,
5419
5458
  :threshold,
5420
5459
  :evaluation_periods,
5421
- :metric_name)
5460
+ :metric_name,
5461
+ :policy_type,
5462
+ :target_configuration)
5422
5463
  include Aws::Structure
5423
5464
  end
5424
5465
 
@@ -5606,6 +5647,34 @@ module Aws::GameLift
5606
5647
  include Aws::Structure
5607
5648
  end
5608
5649
 
5650
+ # @note When making an API call, you may pass StartFleetActionsInput
5651
+ # data as a hash:
5652
+ #
5653
+ # {
5654
+ # fleet_id: "FleetId", # required
5655
+ # actions: ["AUTO_SCALING"], # required, accepts AUTO_SCALING
5656
+ # }
5657
+ #
5658
+ # @!attribute [rw] fleet_id
5659
+ # Unique identifier for a fleet
5660
+ # @return [String]
5661
+ #
5662
+ # @!attribute [rw] actions
5663
+ # List of actions to restart on the fleet.
5664
+ # @return [Array<String>]
5665
+ #
5666
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/StartFleetActionsInput AWS API Documentation
5667
+ #
5668
+ class StartFleetActionsInput < Struct.new(
5669
+ :fleet_id,
5670
+ :actions)
5671
+ include Aws::Structure
5672
+ end
5673
+
5674
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/StartFleetActionsOutput AWS API Documentation
5675
+ #
5676
+ class StartFleetActionsOutput < Aws::EmptyStructure; end
5677
+
5609
5678
  # Represents the input for a request action.
5610
5679
  #
5611
5680
  # @note When making an API call, you may pass StartGameSessionPlacementInput
@@ -5884,6 +5953,34 @@ module Aws::GameLift
5884
5953
  include Aws::Structure
5885
5954
  end
5886
5955
 
5956
+ # @note When making an API call, you may pass StopFleetActionsInput
5957
+ # data as a hash:
5958
+ #
5959
+ # {
5960
+ # fleet_id: "FleetId", # required
5961
+ # actions: ["AUTO_SCALING"], # required, accepts AUTO_SCALING
5962
+ # }
5963
+ #
5964
+ # @!attribute [rw] fleet_id
5965
+ # Unique identifier for a fleet
5966
+ # @return [String]
5967
+ #
5968
+ # @!attribute [rw] actions
5969
+ # List of actions to suspend on the fleet.
5970
+ # @return [Array<String>]
5971
+ #
5972
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/StopFleetActionsInput AWS API Documentation
5973
+ #
5974
+ class StopFleetActionsInput < Struct.new(
5975
+ :fleet_id,
5976
+ :actions)
5977
+ include Aws::Structure
5978
+ end
5979
+
5980
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/StopFleetActionsOutput AWS API Documentation
5981
+ #
5982
+ class StopFleetActionsOutput < Aws::EmptyStructure; end
5983
+
5887
5984
  # Represents the input for a request action.
5888
5985
  #
5889
5986
  # @note When making an API call, you may pass StopGameSessionPlacementInput
@@ -5942,6 +6039,58 @@ module Aws::GameLift
5942
6039
  #
5943
6040
  class StopMatchmakingOutput < Aws::EmptyStructure; end
5944
6041
 
6042
+ # Settings for a target-based scaling policy (see ScalingPolicy. A
6043
+ # target-based policy tracks a particular fleet metric specifies a
6044
+ # target value for the metric. As player usage changes, the policy
6045
+ # triggers Amazon GameLift to adjust capacity so that the metric returns
6046
+ # to the target value. The target configuration specifies settings as
6047
+ # needed for the target based policy, including the target value.
6048
+ #
6049
+ # Operations related to fleet capacity scaling include:
6050
+ #
6051
+ # * DescribeFleetCapacity
6052
+ #
6053
+ # * UpdateFleetCapacity
6054
+ #
6055
+ # * DescribeEC2InstanceLimits
6056
+ #
6057
+ # * Manage scaling policies:
6058
+ #
6059
+ # * PutScalingPolicy (auto-scaling)
6060
+ #
6061
+ # * DescribeScalingPolicies (auto-scaling)
6062
+ #
6063
+ # * DeleteScalingPolicy (auto-scaling)
6064
+ #
6065
+ # * Manage fleet actions:
6066
+ #
6067
+ # * StartFleetActions
6068
+ #
6069
+ # * StopFleetActions
6070
+ #
6071
+ # @note When making an API call, you may pass TargetConfiguration
6072
+ # data as a hash:
6073
+ #
6074
+ # {
6075
+ # target_value: 1.0, # required
6076
+ # }
6077
+ #
6078
+ # @!attribute [rw] target_value
6079
+ # Desired value to use with a target-based scaling policy. The value
6080
+ # must be relevant for whatever metric the scaling policy is using.
6081
+ # For example, in a policy using the metric
6082
+ # PercentAvailableGameSessions, the target value should be the
6083
+ # preferred size of the fleet's buffer (the percent of capacity that
6084
+ # should be idle and ready for new game sessions).
6085
+ # @return [Float]
6086
+ #
6087
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/TargetConfiguration AWS API Documentation
6088
+ #
6089
+ class TargetConfiguration < Struct.new(
6090
+ :target_value)
6091
+ include Aws::Structure
6092
+ end
6093
+
5945
6094
  # Represents the input for a request action.
5946
6095
  #
5947
6096
  # @note When making an API call, you may pass UpdateAliasInput