aws-sdk-gamelift 1.3.0 → 1.4.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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