aws-sdk-gamelift 1.93.0 → 1.95.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -718,37 +718,41 @@ module Aws::GameLift
718
718
  req.send_request(options)
719
719
  end
720
720
 
721
- # Creates a new Amazon GameLift build resource for your game server
722
- # binary files. Combine game server binaries into a zip file for use
723
- # with Amazon GameLift.
721
+ # Creates an Amazon GameLift build resource for your game server
722
+ # software and stores the software for deployment to hosting resources.
723
+ # Combine game server binaries and dependencies into a single .zip file
724
724
  #
725
- # When setting up a new game build for Amazon GameLift, we recommend
726
- # using the CLI command <b> <a
725
+ # Use the CLI command <b> <a
727
726
  # href="https://docs.aws.amazon.com/cli/latest/reference/gamelift/upload-build.html">upload-build</a>
728
- # </b>. This helper command combines two tasks: (1) it uploads your
729
- # build files from a file directory to an Amazon GameLift Amazon S3
730
- # location, and (2) it creates a new build resource.
731
- #
732
- # You can use the `CreateBuild` operation in the following scenarios:
733
- #
734
- # * Create a new game build with build files that are in an Amazon S3
735
- # location under an Amazon Web Services account that you control. To
736
- # use this option, you give Amazon GameLift access to the Amazon S3
737
- # bucket. With permissions in place, specify a build name, operating
738
- # system, and the Amazon S3 storage location of your game build.
739
- #
740
- # * Upload your build files to a Amazon GameLift Amazon S3 location. To
741
- # use this option, specify a build name and operating system. This
742
- # operation creates a new build resource and also returns an Amazon S3
743
- # location with temporary access credentials. Use the credentials to
744
- # manually upload your build files to the specified Amazon S3
745
- # location. For more information, see [Uploading Objects][1] in the
746
- # *Amazon S3 Developer Guide*. After you upload build files to the
747
- # Amazon GameLift Amazon S3 location, you can't update them.
748
- #
749
- # If successful, this operation creates a new build resource with a
750
- # unique build ID and places it in `INITIALIZED` status. A build must be
751
- # in `READY` status before you can create fleets with it.
727
+ # </b> to quickly and simply create a new build and upload your game
728
+ # build .zip file to Amazon GameLift Amazon S3. This helper command
729
+ # eliminates the need to explicitly manage access permissions.
730
+ #
731
+ # Alternatively, use the `CreateBuild` action for the following
732
+ # scenarios:
733
+ #
734
+ # * You want to create a build and upload a game build zip file from in
735
+ # an Amazon S3 location that you control. In this scenario, you need
736
+ # to give Amazon GameLift permission to access to the Amazon S3
737
+ # bucket. With permission in place, call `CreateBuild` and specify a
738
+ # build name, the build's runtime operating system, and the Amazon S3
739
+ # storage location where the build file is stored.
740
+ #
741
+ # * You want to create a build and upload a local game build zip file to
742
+ # an Amazon S3 location that's controlled by Amazon GameLift. (See
743
+ # the `upload-build` CLI command for this scenario.) In this scenario,
744
+ # you need to request temporary access credentials to the Amazon
745
+ # GameLift Amazon S3 location. Specify a build name and the build's
746
+ # runtime operating system. The response provides an Amazon S3
747
+ # location and a set of temporary access credentials. Use the
748
+ # credentials to upload your build files to the specified Amazon S3
749
+ # location (see [Uploading Objects][1] in the *Amazon S3 Developer
750
+ # Guide*). You can't update build files after uploading them to
751
+ # Amazon GameLift Amazon S3.
752
+ #
753
+ # If successful, this action creates a new build resource with a unique
754
+ # build ID and places it in `INITIALIZED` status. When the build reaches
755
+ # `READY` status, you can create fleets with it.
752
756
  #
753
757
  # **Learn more**
754
758
  #
@@ -766,12 +770,12 @@ module Aws::GameLift
766
770
  # [4]: https://docs.aws.amazon.com/gamelift/latest/developerguide/reference-awssdk.html#reference-awssdk-resources-fleets
767
771
  #
768
772
  # @option params [String] :name
769
- # A descriptive label associated with a build. Build names don't need
770
- # to be unique. You can change this value later.
773
+ # A descriptive label that is associated with a build. Build names do
774
+ # not need to be unique. You can change this value later.
771
775
  #
772
776
  # @option params [String] :version
773
- # Version information associated with a build or script. Version strings
774
- # don't need to be unique. You can change this value later.
777
+ # Version information that is associated with a build or script. Version
778
+ # strings do not need to be unique. You can change this value later.
775
779
  #
776
780
  # @option params [Types::S3Location] :storage_location
777
781
  # Information indicating where your game build files are stored. Use
@@ -786,12 +790,11 @@ module Aws::GameLift
786
790
  # `SizeOnDisk` of 0.
787
791
  #
788
792
  # @option params [String] :operating_system
789
- # The operating system that your game server binaries run on. This value
793
+ # The environment that your game server binaries run on. This value
790
794
  # determines the type of fleet resources that you use for this build. If
791
795
  # your game build contains multiple executables, they all must run on
792
- # the same operating system. You must specify a valid operating system
793
- # in this request. There is no default value. You can't change a
794
- # build's operating system later.
796
+ # the same operating system. This parameter is required, and there's no
797
+ # default value. You can't change a build's operating system later.
795
798
  #
796
799
  # <note markdown="1"> Amazon Linux 2 (AL2) will reach end of support on 6/30/2025. See more
797
800
  # details in the [Amazon Linux 2 FAQs][1]. For game servers that are
@@ -889,39 +892,432 @@ module Aws::GameLift
889
892
  req.send_request(options)
890
893
  end
891
894
 
892
- # <b>This operation is used with the Amazon GameLift containers feature,
893
- # which is currently in public preview. </b>
895
+ # Creates a managed fleet of Amazon Elastic Compute Cloud (Amazon EC2)
896
+ # instances to host your containerized game servers. Use this operation
897
+ # to define how to deploy a container architecture onto each fleet
898
+ # instance and configure fleet settings. You can create a container
899
+ # fleet in any Amazon Web Services Regions that Amazon GameLift supports
900
+ # for multi-location fleets. A container fleet can be deployed to a
901
+ # single location or multiple locations. Container fleets are deployed
902
+ # with Amazon Linux 2023 as the instance operating system.
894
903
  #
895
- # Creates a `ContainerGroupDefinition` resource that describes a set of
904
+ # Define the fleet's container architecture using container group
905
+ # definitions. Each fleet can have one of the following container group
906
+ # types:
907
+ #
908
+ # * The game server container group runs your game server build and
909
+ # dependent software. Amazon GameLift deploys one or more replicas of
910
+ # this container group to each fleet instance. The number of replicas
911
+ # depends on the computing capabilities of the fleet instance in use.
912
+ #
913
+ # * An optional per-instance container group might be used to run other
914
+ # software that only needs to run once per instance, such as
915
+ # background services, logging, or test processes. One per-instance
916
+ # container group is deployed to each fleet instance.
917
+ #
918
+ # Each container group can include the definition for one or more
919
+ # containers. A container definition specifies a container image that is
920
+ # stored in an Amazon Elastic Container Registry (Amazon ECR) public or
921
+ # private repository.
922
+ #
923
+ # **Request options**
924
+ #
925
+ # Use this operation to make the following types of requests. Most fleet
926
+ # settings have default values, so you can create a working fleet with a
927
+ # minimal configuration and default values, which you can customize
928
+ # later.
929
+ #
930
+ # * Create a fleet with no container groups. You can configure a
931
+ # container fleet and then add container group definitions later. In
932
+ # this scenario, no fleet instances are deployed, and the fleet can't
933
+ # host game sessions until you add a game server container group
934
+ # definition. Provide the following required parameter values:
935
+ #
936
+ # * `FleetRoleArn`
937
+ #
938
+ # ^
939
+ #
940
+ # * Create a fleet with a game server container group. Provide the
941
+ # following required parameter values:
942
+ #
943
+ # * `FleetRoleArn`
944
+ #
945
+ # * `GameServerContainerGroupDefinitionName`
946
+ #
947
+ # * Create a fleet with a game server container group and a per-instance
948
+ # container group. Provide the following required parameter values:
949
+ #
950
+ # * `FleetRoleArn`
951
+ #
952
+ # * `GameServerContainerGroupDefinitionName`
953
+ #
954
+ # * `PerInstanceContainerGroupDefinitionName`
955
+ #
956
+ # **Results**
957
+ #
958
+ # If successful, this operation creates a new container fleet resource,
959
+ # places it in `PENDING` status, and initiates the [fleet creation
960
+ # workflow][1]. For fleets with container groups, this workflow starts a
961
+ # fleet deployment and transitions the status to `ACTIVE`. Fleets
962
+ # without a container group are placed in `CREATED` status.
963
+ #
964
+ # You can update most of the properties of a fleet, including container
965
+ # group definitions, and deploy the update across all fleet instances.
966
+ # Use a fleet update to deploy a new game server version update across
967
+ # the container fleet.
968
+ #
969
+ #
970
+ #
971
+ # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-creating-all.html#fleets-creation-workflow
972
+ #
973
+ # @option params [required, String] :fleet_role_arn
974
+ # The unique identifier for an Identity and Access Management (IAM) role
975
+ # with permissions to run your containers on resources that are managed
976
+ # by Amazon GameLift. Use an IAM service role with the
977
+ # `GameLiftContainerFleetPolicy` managed policy attached. For more
978
+ # information, see [Set up an IAM service role][1]. You can't change
979
+ # this fleet property after the fleet is created.
980
+ #
981
+ # IAM role ARN values use the following pattern: `arn:aws:iam::[Amazon
982
+ # Web Services account]:role/[role name]`.
983
+ #
984
+ #
985
+ #
986
+ # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/setting-up-role.html
987
+ #
988
+ # @option params [String] :description
989
+ # A meaningful description of the container fleet.
990
+ #
991
+ # @option params [String] :game_server_container_group_definition_name
992
+ # A container group definition resource that describes how to deploy
993
+ # containers with your game server build and support software onto each
994
+ # fleet instance. You can specify the container group definition's name
995
+ # to use the latest version. Alternatively, provide an ARN value with a
996
+ # specific version number.
997
+ #
998
+ # Create a container group definition by calling
999
+ # CreateContainerGroupDefinition. This operation creates a
1000
+ # ContainerGroupDefinition resource.
1001
+ #
1002
+ # @option params [String] :per_instance_container_group_definition_name
1003
+ # The name of a container group definition resource that describes a set
1004
+ # of axillary software. A fleet instance has one process for executables
1005
+ # in this container group. A per-instance container group is optional.
1006
+ # You can update the fleet to add or remove a per-instance container
1007
+ # group at any time. You can specify the container group definition's
1008
+ # name to use the latest version. Alternatively, provide an ARN value
1009
+ # with a specific version number.
1010
+ #
1011
+ # Create a container group definition by calling
1012
+ # CreateContainerGroupDefinition. This operation creates a
1013
+ # ContainerGroupDefinition resource.
1014
+ #
1015
+ # @option params [Types::ConnectionPortRange] :instance_connection_port_range
1016
+ # The set of port numbers to open on each fleet instance. A fleet's
1017
+ # connection ports map to container ports that are configured in the
1018
+ # fleet's container group definitions.
1019
+ #
1020
+ # By default, Amazon GameLift calculates an optimal port range based on
1021
+ # your fleet configuration. To use the calculated range, don't set this
1022
+ # parameter. The values are:
1023
+ #
1024
+ # * Port range: 4192 to a number calculated based on your fleet
1025
+ # configuration. Amazon GameLift uses the following formula: `4192 +
1026
+ # [# of game server container groups per fleet instance] * [# of
1027
+ # container ports in the game server container group definition] + [#
1028
+ # of container ports in the game server container group definition]`
1029
+ #
1030
+ # ^
1031
+ #
1032
+ # You can also choose to manually set this parameter. When manually
1033
+ # setting this parameter, you must use port numbers that match the
1034
+ # fleet's inbound permissions port range.
1035
+ #
1036
+ # <note markdown="1"> If you set values manually, Amazon GameLift no longer calculates a
1037
+ # port range for you, even if you later remove the manual settings.
1038
+ #
1039
+ # </note>
1040
+ #
1041
+ # @option params [Array<Types::IpPermission>] :instance_inbound_permissions
1042
+ # The IP address ranges and port settings that allow inbound traffic to
1043
+ # access game server processes and other processes on this fleet. As a
1044
+ # best practice, when remotely accessing a fleet instance, we recommend
1045
+ # opening ports only when you need them and closing them when you're
1046
+ # finished.
1047
+ #
1048
+ # By default, Amazon GameLift calculates an optimal port range based on
1049
+ # your fleet configuration. To use the calculated range, don't set this
1050
+ # parameter. The values are:
1051
+ #
1052
+ # * Protocol: UDP
1053
+ #
1054
+ # * Port range: 4192 to a number calculated based on your fleet
1055
+ # configuration. Amazon GameLift uses the following formula: `4192 +
1056
+ # [# of game server container groups per fleet instance] * [# of
1057
+ # container ports in the game server container group definition] + [#
1058
+ # of container ports in the game server container group definition]`
1059
+ #
1060
+ # You can also choose to manually set this parameter. When manually
1061
+ # setting this parameter, you must use port numbers that match the
1062
+ # fleet's connection port range.
1063
+ #
1064
+ # <note markdown="1"> If you set values manually, Amazon GameLift no longer calculates a
1065
+ # port range for you, even if you later remove the manual settings.
1066
+ #
1067
+ # </note>
1068
+ #
1069
+ # @option params [Integer] :game_server_container_groups_per_instance
1070
+ # The number of times to replicate the game server container group on
1071
+ # each fleet instance.
1072
+ #
1073
+ # By default, Amazon GameLift calculates the maximum number of game
1074
+ # server container groups that can fit on each instance. This
1075
+ # calculation is based on the CPU and memory resources of the fleet's
1076
+ # instance type). To use the calculated maximum, don't set this
1077
+ # parameter. If you set this number manually, Amazon GameLift uses your
1078
+ # value as long as it's less than the calculated maximum.
1079
+ #
1080
+ # @option params [String] :instance_type
1081
+ # The Amazon EC2 instance type to use for all instances in the fleet.
1082
+ # For multi-location fleets, the instance type must be available in the
1083
+ # home region and all remote locations. Instance type determines the
1084
+ # computing resources and processing power that's available to host
1085
+ # your game servers. This includes including CPU, memory, storage, and
1086
+ # networking capacity.
1087
+ #
1088
+ # By default, Amazon GameLift selects an instance type that fits the
1089
+ # needs of your container groups and is available in all selected fleet
1090
+ # locations. You can also choose to manually set this parameter. See
1091
+ # [Amazon Elastic Compute Cloud Instance Types][1] for detailed
1092
+ # descriptions of Amazon EC2 instance types.
1093
+ #
1094
+ # You can't update this fleet property later.
1095
+ #
1096
+ #
1097
+ #
1098
+ # [1]: http://aws.amazon.com/ec2/instance-types/
1099
+ #
1100
+ # @option params [String] :billing_type
1101
+ # Indicates whether to use On-Demand or Spot instances for this fleet.
1102
+ # Learn more about when to use [ On-Demand versus Spot Instances][1].
1103
+ # This fleet property can't be changed after the fleet is created.
1104
+ #
1105
+ # By default, this property is set to `ON_DEMAND`.
1106
+ #
1107
+ # You can't update this fleet property later.
1108
+ #
1109
+ #
1110
+ #
1111
+ # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-ec2-instances.html#gamelift-ec2-instances-spot
1112
+ #
1113
+ # @option params [Array<Types::LocationConfiguration>] :locations
1114
+ # A set of locations to deploy container fleet instances to. You can add
1115
+ # any Amazon Web Services Region or Local Zone that's supported by
1116
+ # Amazon GameLift. Provide a list of one or more Amazon Web Services
1117
+ # Region codes, such as `us-west-2`, or Local Zone names. Also include
1118
+ # the fleet's home Region, which is the Amazon Web Services Region
1119
+ # where the fleet is created. For a list of supported Regions and Local
1120
+ # Zones, see [ Amazon GameLift service locations][1] for managed
1121
+ # hosting.
1122
+ #
1123
+ #
1124
+ #
1125
+ # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-regions.html
1126
+ #
1127
+ # @option params [Array<String>] :metric_groups
1128
+ # The name of an Amazon Web Services CloudWatch metric group to add this
1129
+ # fleet to. You can use a metric group to aggregate metrics for multiple
1130
+ # fleets. You can specify an existing metric group name or use a new
1131
+ # name to create a new metric group. Each fleet can have only one metric
1132
+ # group, but you can change this value at any time.
1133
+ #
1134
+ # @option params [String] :new_game_session_protection_policy
1135
+ # Determines whether Amazon GameLift can shut down game sessions on the
1136
+ # fleet that are actively running and hosting players. Amazon GameLift
1137
+ # might prompt an instance shutdown when scaling down fleet capacity or
1138
+ # when retiring unhealthy instances. You can also set game session
1139
+ # protection for individual game sessions using
1140
+ # [UpdateGameSession](gamelift/latest/apireference/API_UpdateGameSession.html).
1141
+ #
1142
+ # * **NoProtection** -- Game sessions can be shut down during active
1143
+ # gameplay.
1144
+ #
1145
+ # * **FullProtection** -- Game sessions in `ACTIVE` status can't be
1146
+ # shut down.
1147
+ #
1148
+ # By default, this property is set to `NoProtection`.
1149
+ #
1150
+ # @option params [Types::GameSessionCreationLimitPolicy] :game_session_creation_limit_policy
1151
+ # A policy that limits the number of game sessions that each individual
1152
+ # player can create on instances in this fleet. The limit applies for a
1153
+ # specified span of time.
1154
+ #
1155
+ # @option params [Types::LogConfiguration] :log_configuration
1156
+ # A method for collecting container logs for the fleet. Amazon GameLift
1157
+ # saves all standard output for each container in logs, including game
1158
+ # session logs. You can select from the following methods:
1159
+ #
1160
+ # * `CLOUDWATCH` -- Send logs to an Amazon CloudWatch log group that you
1161
+ # define. Each container emits a log stream, which is organized in the
1162
+ # log group.
1163
+ #
1164
+ # * `S3` -- Store logs in an Amazon S3 bucket that you define.
1165
+ #
1166
+ # * `NONE` -- Don't collect container logs.
1167
+ #
1168
+ # By default, this property is set to `CLOUDWATCH`.
1169
+ #
1170
+ # Amazon GameLift requires permissions to send logs other Amazon Web
1171
+ # Services services in your account. These permissions are included in
1172
+ # the IAM fleet role for this container fleet (see `FleetRoleArn)`.
1173
+ #
1174
+ # @option params [Array<Types::Tag>] :tags
1175
+ # A list of labels to assign to the new fleet resource. Tags are
1176
+ # developer-defined key-value pairs. Tagging Amazon Web Services
1177
+ # resources are useful for resource management, access management and
1178
+ # cost allocation. For more information, see [ Tagging Amazon Web
1179
+ # Services Resources][1] in the *Amazon Web Services General Reference*.
1180
+ #
1181
+ #
1182
+ #
1183
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
1184
+ #
1185
+ # @return [Types::CreateContainerFleetOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1186
+ #
1187
+ # * {Types::CreateContainerFleetOutput#container_fleet #container_fleet} => Types::ContainerFleet
1188
+ #
1189
+ # @example Request syntax with placeholder values
1190
+ #
1191
+ # resp = client.create_container_fleet({
1192
+ # fleet_role_arn: "ArnStringModel", # required
1193
+ # description: "NonZeroAndMaxString",
1194
+ # game_server_container_group_definition_name: "ContainerGroupDefinitionNameOrArn",
1195
+ # per_instance_container_group_definition_name: "ContainerGroupDefinitionNameOrArn",
1196
+ # instance_connection_port_range: {
1197
+ # from_port: 1, # required
1198
+ # to_port: 1, # required
1199
+ # },
1200
+ # instance_inbound_permissions: [
1201
+ # {
1202
+ # from_port: 1, # required
1203
+ # to_port: 1, # required
1204
+ # ip_range: "IpRange", # required
1205
+ # protocol: "TCP", # required, accepts TCP, UDP
1206
+ # },
1207
+ # ],
1208
+ # game_server_container_groups_per_instance: 1,
1209
+ # instance_type: "NonZeroAndMaxString",
1210
+ # billing_type: "ON_DEMAND", # accepts ON_DEMAND, SPOT
1211
+ # locations: [
1212
+ # {
1213
+ # location: "LocationStringModel", # required
1214
+ # },
1215
+ # ],
1216
+ # metric_groups: ["MetricGroup"],
1217
+ # new_game_session_protection_policy: "NoProtection", # accepts NoProtection, FullProtection
1218
+ # game_session_creation_limit_policy: {
1219
+ # new_game_sessions_per_creator: 1,
1220
+ # policy_period_in_minutes: 1,
1221
+ # },
1222
+ # log_configuration: {
1223
+ # log_destination: "NONE", # accepts NONE, CLOUDWATCH, S3
1224
+ # s3_bucket_name: "NonEmptyString",
1225
+ # log_group_arn: "LogGroupArnStringModel",
1226
+ # },
1227
+ # tags: [
1228
+ # {
1229
+ # key: "TagKey", # required
1230
+ # value: "TagValue", # required
1231
+ # },
1232
+ # ],
1233
+ # })
1234
+ #
1235
+ # @example Response structure
1236
+ #
1237
+ # resp.container_fleet.fleet_id #=> String
1238
+ # resp.container_fleet.fleet_arn #=> String
1239
+ # resp.container_fleet.fleet_role_arn #=> String
1240
+ # resp.container_fleet.game_server_container_group_definition_name #=> String
1241
+ # resp.container_fleet.game_server_container_group_definition_arn #=> String
1242
+ # resp.container_fleet.per_instance_container_group_definition_name #=> String
1243
+ # resp.container_fleet.per_instance_container_group_definition_arn #=> String
1244
+ # resp.container_fleet.instance_connection_port_range.from_port #=> Integer
1245
+ # resp.container_fleet.instance_connection_port_range.to_port #=> Integer
1246
+ # resp.container_fleet.instance_inbound_permissions #=> Array
1247
+ # resp.container_fleet.instance_inbound_permissions[0].from_port #=> Integer
1248
+ # resp.container_fleet.instance_inbound_permissions[0].to_port #=> Integer
1249
+ # resp.container_fleet.instance_inbound_permissions[0].ip_range #=> String
1250
+ # resp.container_fleet.instance_inbound_permissions[0].protocol #=> String, one of "TCP", "UDP"
1251
+ # resp.container_fleet.game_server_container_groups_per_instance #=> Integer
1252
+ # resp.container_fleet.maximum_game_server_container_groups_per_instance #=> Integer
1253
+ # resp.container_fleet.instance_type #=> String
1254
+ # resp.container_fleet.billing_type #=> String, one of "ON_DEMAND", "SPOT"
1255
+ # resp.container_fleet.description #=> String
1256
+ # resp.container_fleet.creation_time #=> Time
1257
+ # resp.container_fleet.metric_groups #=> Array
1258
+ # resp.container_fleet.metric_groups[0] #=> String
1259
+ # resp.container_fleet.new_game_session_protection_policy #=> String, one of "NoProtection", "FullProtection"
1260
+ # resp.container_fleet.game_session_creation_limit_policy.new_game_sessions_per_creator #=> Integer
1261
+ # resp.container_fleet.game_session_creation_limit_policy.policy_period_in_minutes #=> Integer
1262
+ # resp.container_fleet.status #=> String, one of "PENDING", "CREATING", "CREATED", "ACTIVATING", "ACTIVE", "UPDATING", "DELETING"
1263
+ # resp.container_fleet.deployment_details.latest_deployment_id #=> String
1264
+ # resp.container_fleet.log_configuration.log_destination #=> String, one of "NONE", "CLOUDWATCH", "S3"
1265
+ # resp.container_fleet.log_configuration.s3_bucket_name #=> String
1266
+ # resp.container_fleet.log_configuration.log_group_arn #=> String
1267
+ # resp.container_fleet.location_attributes #=> Array
1268
+ # resp.container_fleet.location_attributes[0].location #=> String
1269
+ # resp.container_fleet.location_attributes[0].status #=> String, one of "PENDING", "CREATING", "CREATED", "ACTIVATING", "ACTIVE", "UPDATING", "DELETING"
1270
+ #
1271
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/CreateContainerFleet AWS API Documentation
1272
+ #
1273
+ # @overload create_container_fleet(params = {})
1274
+ # @param [Hash] params ({})
1275
+ def create_container_fleet(params = {}, options = {})
1276
+ req = build_request(:create_container_fleet, params)
1277
+ req.send_request(options)
1278
+ end
1279
+
1280
+ # Creates a `ContainerGroupDefinition` that describes a set of
896
1281
  # containers for hosting your game server with Amazon GameLift managed
897
- # EC2 hosting. An Amazon GameLift container group is similar to a
898
- # container "task" and "pod". Each container group can have one or
899
- # more containers.
900
- #
901
- # Use container group definitions when you create a container fleet.
902
- # Container group definitions determine how Amazon GameLift deploys your
903
- # containers to each instance in a container fleet.
904
- #
905
- # You can create two types of container groups, based on scheduling
906
- # strategy:
907
- #
908
- # * A **replica container group** manages the containers that run your
909
- # game server application and supporting software. Replica container
910
- # groups might be replicated multiple times on each fleet instance,
911
- # depending on instance resources.
912
- #
913
- # * A **daemon container group** manages containers that run other
914
- # software, such as background services, logging, or test processes.
915
- # You might use a daemon container group for processes that need to
916
- # run only once per fleet instance, or processes that need to persist
917
- # independently of the replica container group.
918
- #
919
- # To create a container group definition, specify a group name, a list
920
- # of container definitions, and maximum total CPU and memory
921
- # requirements for the container group. Specify an operating system and
922
- # scheduling strategy or use the default values. When using the Amazon
923
- # Web Services CLI tool, you can pass in your container definitions as a
924
- # JSON file.
1282
+ # containers hosting. An Amazon GameLift container group is similar to a
1283
+ # container task or pod. Use container group definitions when you create
1284
+ # a container fleet with CreateContainerFleet.
1285
+ #
1286
+ # A container group definition determines how Amazon GameLift deploys
1287
+ # your containers to each instance in a container fleet. You can
1288
+ # maintain multiple versions of a container group definition.
1289
+ #
1290
+ # There are two types of container groups:
1291
+ #
1292
+ # * A **game server container group** has the containers that run your
1293
+ # game server application and supporting software. A game server
1294
+ # container group can have these container types:
1295
+ #
1296
+ # * Game server container. This container runs your game server. You
1297
+ # can define one game server container in a game server container
1298
+ # group.
1299
+ #
1300
+ # * Support container. This container runs software in parallel with
1301
+ # your game server. You can define up to 8 support containers in a
1302
+ # game server group.
1303
+ #
1304
+ # When building a game server container group definition, you can
1305
+ # choose to bundle your game server executable and all dependent
1306
+ # software into a single game server container. Alternatively, you can
1307
+ # separate the software into one game server container and one or more
1308
+ # support containers.
1309
+ #
1310
+ # On a container fleet instance, a game server container group can be
1311
+ # deployed multiple times (depending on the compute resources of the
1312
+ # instance). This means that all containers in the container group are
1313
+ # replicated together.
1314
+ #
1315
+ # * A **per-instance container group** has containers for processes that
1316
+ # aren't replicated on a container fleet instance. This might include
1317
+ # background services, logging, test processes, or processes that need
1318
+ # to persist independently of the game server container group. When
1319
+ # building a per-instance container group, you can define up to 10
1320
+ # support containers.
925
1321
  #
926
1322
  # <note markdown="1"> This operation requires Identity and Access Management (IAM)
927
1323
  # permissions to access container images in Amazon ECR repositories. See
@@ -930,71 +1326,116 @@ module Aws::GameLift
930
1326
  #
931
1327
  # </note>
932
1328
  #
933
- # If successful, this operation creates a new `ContainerGroupDefinition`
934
- # resource with an ARN value assigned. You can't change the properties
935
- # of a container group definition. Instead, create a new one.
1329
+ # **Request options**
936
1330
  #
937
- # **Learn more**
1331
+ # Use this operation to make the following types of requests. You can
1332
+ # specify values for the minimum required parameters and customize
1333
+ # optional values later.
1334
+ #
1335
+ # * Create a game server container group definition. Provide the
1336
+ # following required parameter values:
1337
+ #
1338
+ # * `Name`
1339
+ #
1340
+ # * `ContainerGroupType` (`GAME_SERVER`)
1341
+ #
1342
+ # * `OperatingSystem` (omit to use default value)
1343
+ #
1344
+ # * `TotalMemoryLimitMebibytes` (omit to use default value)
1345
+ #
1346
+ # * `TotalVcpuLimit `(omit to use default value)
1347
+ #
1348
+ # * At least one `GameServerContainerDefinition`
1349
+ #
1350
+ # * `ContainerName`
1351
+ #
1352
+ # * `ImageUrl`
1353
+ #
1354
+ # * `PortConfiguration`
1355
+ #
1356
+ # * `ServerSdkVersion` (omit to use default value)
1357
+ #
1358
+ # * Create a per-instance container group definition. Provide the
1359
+ # following required parameter values:
1360
+ #
1361
+ # * `Name`
1362
+ #
1363
+ # * `ContainerGroupType` (`PER_INSTANCE`)
1364
+ #
1365
+ # * `OperatingSystem` (omit to use default value)
1366
+ #
1367
+ # * `TotalMemoryLimitMebibytes` (omit to use default value)
1368
+ #
1369
+ # * `TotalVcpuLimit `(omit to use default value)
938
1370
  #
939
- # * [Create a container group definition][2]
1371
+ # * At least one `SupportContainerDefinition`
940
1372
  #
941
- # * [Container fleet design guide][3]
1373
+ # * `ContainerName`
942
1374
  #
943
- # * [Create a container definition as a JSON file][4]
1375
+ # * `ImageUrl`
1376
+ #
1377
+ # **Results**
1378
+ #
1379
+ # If successful, this request creates a `ContainerGroupDefinition`
1380
+ # resource and assigns a unique ARN value. You can update most
1381
+ # properties of a container group definition by calling
1382
+ # UpdateContainerGroupDefinition, and optionally save the update as a
1383
+ # new version.
944
1384
  #
945
1385
  #
946
1386
  #
947
1387
  # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-iam-policy-examples.html
948
- # [2]: https://docs.aws.amazon.com/gamelift/latest/developerguide/containers-create-groups.html
949
- # [3]: https://docs.aws.amazon.com/gamelift/latest/developerguide/containers-design-fleet.html
950
- # [4]: https://docs.aws.amazon.com/gamelift/latest/developerguide/containers-definitions.html#containers-definitions-create
951
1388
  #
952
1389
  # @option params [required, String] :name
953
1390
  # A descriptive identifier for the container group definition. The name
954
1391
  # value must be unique in an Amazon Web Services Region.
955
1392
  #
956
- # @option params [String] :scheduling_strategy
957
- # The method for deploying the container group across fleet instances. A
958
- # replica container group might have multiple copies on each fleet
959
- # instance. A daemon container group has one copy per fleet instance.
960
- # Default value is `REPLICA`.
1393
+ # @option params [String] :container_group_type
1394
+ # The type of container group being defined. Container group type
1395
+ # determines how Amazon GameLift deploys the container group on each
1396
+ # fleet instance.
961
1397
  #
962
- # @option params [required, Integer] :total_memory_limit
1398
+ # Default value: `GAME_SERVER`
1399
+ #
1400
+ # @option params [required, Integer] :total_memory_limit_mebibytes
963
1401
  # The maximum amount of memory (in MiB) to allocate to the container
964
1402
  # group. All containers in the group share this memory. If you specify
965
- # memory limits for individual containers, set this parameter based on
966
- # the following guidelines. The value must be (1) greater than the sum
967
- # of the soft memory limits for all containers in the group, and (2)
968
- # greater than any individual container's hard memory limit.
1403
+ # memory limits for an individual container, the total value must be
1404
+ # greater than any individual container's memory limit.
969
1405
  #
970
- # @option params [required, Integer] :total_cpu_limit
971
- # The maximum amount of CPU units to allocate to the container group.
972
- # Set this parameter to an integer value in CPU units (1 vCPU is equal
973
- # to 1024 CPU units). All containers in the group share this memory. If
974
- # you specify CPU limits for individual containers, set this parameter
975
- # based on the following guidelines. The value must be equal to or
976
- # greater than the sum of the CPU limits for all containers in the
977
- # group.
1406
+ # Default value: 1024
978
1407
  #
979
- # @option params [required, Array<Types::ContainerDefinitionInput>] :container_definitions
980
- # Definitions for all containers in this group. Each container
981
- # definition identifies the container image and specifies configuration
982
- # settings for the container. See the [ Container fleet design guide][1]
983
- # for container guidelines.
1408
+ # @option params [required, Float] :total_vcpu_limit
1409
+ # The maximum amount of vCPU units to allocate to the container group (1
1410
+ # vCPU is equal to 1024 CPU units). All containers in the group share
1411
+ # this memory. If you specify vCPU limits for individual containers, the
1412
+ # total value must be equal to or greater than the sum of the CPU limits
1413
+ # for all containers in the group.
984
1414
  #
1415
+ # Default value: 1
985
1416
  #
1417
+ # @option params [Types::GameServerContainerDefinitionInput] :game_server_container_definition
1418
+ # The definition for the game server container in this group. Define a
1419
+ # game server container only when the container group type is
1420
+ # `GAME_SERVER`. Game server containers specify a container image with
1421
+ # your game server build. You can pass in your container definitions as
1422
+ # a JSON file.
986
1423
  #
987
- # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/containers-design-fleet.html
1424
+ # @option params [Array<Types::SupportContainerDefinitionInput>] :support_container_definitions
1425
+ # One or more definition for support containers in this group. You can
1426
+ # define a support container in any type of container group. You can
1427
+ # pass in your container definitions as a JSON file.
988
1428
  #
989
1429
  # @option params [required, String] :operating_system
990
- # The platform that is used by containers in the container group
991
- # definition. All containers in a group must run on the same operating
992
- # system.
1430
+ # The platform that all containers in the group use. Containers in a
1431
+ # group must run on the same operating system.
1432
+ #
1433
+ # Default value: `AMAZON_LINUX_2023`
993
1434
  #
994
1435
  # <note markdown="1"> Amazon Linux 2 (AL2) will reach end of support on 6/30/2025. See more
995
1436
  # details in the [Amazon Linux 2 FAQs][1]. For game servers that are
996
- # hosted on AL2 and use Amazon GameLift server SDK 4.x., first update
997
- # the game server build to server SDK 5.x, and then deploy to AL2023
1437
+ # hosted on AL2 and use Amazon GameLift server SDK 4.x, first update the
1438
+ # game server build to server SDK 5.x, and then deploy to AL2023
998
1439
  # instances. See [ Migrate to Amazon GameLift server SDK version 5.][2]
999
1440
  #
1000
1441
  # </note>
@@ -1004,6 +1445,10 @@ module Aws::GameLift
1004
1445
  # [1]: https://aws.amazon.com/amazon-linux-2/faqs/
1005
1446
  # [2]: https://docs.aws.amazon.com/gamelift/latest/developerguide/reference-serversdk5-migration.html
1006
1447
  #
1448
+ # @option params [String] :version_description
1449
+ # A description for the initial version of this container group
1450
+ # definition.
1451
+ #
1007
1452
  # @option params [Array<Types::Tag>] :tags
1008
1453
  # A list of labels to assign to the container group definition resource.
1009
1454
  # Tags are developer-defined key-value pairs. Tagging Amazon Web
@@ -1024,53 +1469,88 @@ module Aws::GameLift
1024
1469
  #
1025
1470
  # resp = client.create_container_group_definition({
1026
1471
  # name: "ContainerGroupDefinitionName", # required
1027
- # scheduling_strategy: "REPLICA", # accepts REPLICA, DAEMON
1028
- # total_memory_limit: 1, # required
1029
- # total_cpu_limit: 1, # required
1030
- # container_definitions: [ # required
1031
- # {
1032
- # container_name: "NonZeroAnd128MaxAsciiString", # required
1033
- # image_uri: "ImageUriString", # required
1034
- # memory_limits: {
1035
- # soft_limit: 1,
1036
- # hard_limit: 1,
1472
+ # container_group_type: "GAME_SERVER", # accepts GAME_SERVER, PER_INSTANCE
1473
+ # total_memory_limit_mebibytes: 1, # required
1474
+ # total_vcpu_limit: 1.0, # required
1475
+ # game_server_container_definition: {
1476
+ # container_name: "NonZeroAnd128MaxAsciiString", # required
1477
+ # depends_on: [
1478
+ # {
1479
+ # container_name: "NonZeroAnd128MaxAsciiString", # required
1480
+ # condition: "START", # required, accepts START, COMPLETE, SUCCESS, HEALTHY
1037
1481
  # },
1038
- # port_configuration: {
1039
- # container_port_ranges: [ # required
1040
- # {
1041
- # from_port: 1, # required
1042
- # to_port: 1, # required
1043
- # protocol: "TCP", # required, accepts TCP, UDP
1044
- # },
1045
- # ],
1482
+ # ],
1483
+ # mount_points: [
1484
+ # {
1485
+ # instance_path: "InstancePathString", # required
1486
+ # container_path: "ContainerPathString",
1487
+ # access_level: "READ_ONLY", # accepts READ_ONLY, READ_AND_WRITE
1046
1488
  # },
1047
- # cpu: 1,
1048
- # health_check: {
1049
- # command: ["NonZeroAnd255MaxString"], # required
1050
- # interval: 1,
1051
- # timeout: 1,
1052
- # retries: 1,
1053
- # start_period: 1,
1489
+ # ],
1490
+ # environment_override: [
1491
+ # {
1492
+ # name: "NonZeroAnd255MaxString", # required
1493
+ # value: "NonZeroAnd255MaxString", # required
1054
1494
  # },
1055
- # command: ["NonZeroAnd255MaxString"],
1056
- # essential: false,
1057
- # entry_point: ["NonZeroAndMaxString"],
1058
- # working_directory: "NonZeroAnd255MaxString",
1059
- # environment: [
1495
+ # ],
1496
+ # image_uri: "ImageUriString", # required
1497
+ # port_configuration: { # required
1498
+ # container_port_ranges: [ # required
1060
1499
  # {
1061
- # name: "NonZeroAnd255MaxString", # required
1062
- # value: "NonZeroAnd255MaxString", # required
1500
+ # from_port: 1, # required
1501
+ # to_port: 1, # required
1502
+ # protocol: "TCP", # required, accepts TCP, UDP
1063
1503
  # },
1064
1504
  # ],
1505
+ # },
1506
+ # server_sdk_version: "ServerSdkVersion", # required
1507
+ # },
1508
+ # support_container_definitions: [
1509
+ # {
1510
+ # container_name: "NonZeroAnd128MaxAsciiString", # required
1065
1511
  # depends_on: [
1066
1512
  # {
1067
1513
  # container_name: "NonZeroAnd128MaxAsciiString", # required
1068
1514
  # condition: "START", # required, accepts START, COMPLETE, SUCCESS, HEALTHY
1069
1515
  # },
1070
1516
  # ],
1517
+ # mount_points: [
1518
+ # {
1519
+ # instance_path: "InstancePathString", # required
1520
+ # container_path: "ContainerPathString",
1521
+ # access_level: "READ_ONLY", # accepts READ_ONLY, READ_AND_WRITE
1522
+ # },
1523
+ # ],
1524
+ # environment_override: [
1525
+ # {
1526
+ # name: "NonZeroAnd255MaxString", # required
1527
+ # value: "NonZeroAnd255MaxString", # required
1528
+ # },
1529
+ # ],
1530
+ # essential: false,
1531
+ # health_check: {
1532
+ # command: ["NonZeroAnd255MaxString"], # required
1533
+ # interval: 1,
1534
+ # retries: 1,
1535
+ # start_period: 1,
1536
+ # timeout: 1,
1537
+ # },
1538
+ # image_uri: "ImageUriString", # required
1539
+ # memory_hard_limit_mebibytes: 1,
1540
+ # port_configuration: {
1541
+ # container_port_ranges: [ # required
1542
+ # {
1543
+ # from_port: 1, # required
1544
+ # to_port: 1, # required
1545
+ # protocol: "TCP", # required, accepts TCP, UDP
1546
+ # },
1547
+ # ],
1548
+ # },
1549
+ # vcpu: 1.0,
1071
1550
  # },
1072
1551
  # ],
1073
1552
  # operating_system: "AMAZON_LINUX_2023", # required, accepts AMAZON_LINUX_2023
1553
+ # version_description: "NonZeroAndMaxString",
1074
1554
  # tags: [
1075
1555
  # {
1076
1556
  # key: "TagKey", # required
@@ -1085,38 +1565,56 @@ module Aws::GameLift
1085
1565
  # resp.container_group_definition.creation_time #=> Time
1086
1566
  # resp.container_group_definition.operating_system #=> String, one of "AMAZON_LINUX_2023"
1087
1567
  # resp.container_group_definition.name #=> String
1088
- # resp.container_group_definition.scheduling_strategy #=> String, one of "REPLICA", "DAEMON"
1089
- # resp.container_group_definition.total_memory_limit #=> Integer
1090
- # resp.container_group_definition.total_cpu_limit #=> Integer
1091
- # resp.container_group_definition.container_definitions #=> Array
1092
- # resp.container_group_definition.container_definitions[0].container_name #=> String
1093
- # resp.container_group_definition.container_definitions[0].image_uri #=> String
1094
- # resp.container_group_definition.container_definitions[0].resolved_image_digest #=> String
1095
- # resp.container_group_definition.container_definitions[0].memory_limits.soft_limit #=> Integer
1096
- # resp.container_group_definition.container_definitions[0].memory_limits.hard_limit #=> Integer
1097
- # resp.container_group_definition.container_definitions[0].port_configuration.container_port_ranges #=> Array
1098
- # resp.container_group_definition.container_definitions[0].port_configuration.container_port_ranges[0].from_port #=> Integer
1099
- # resp.container_group_definition.container_definitions[0].port_configuration.container_port_ranges[0].to_port #=> Integer
1100
- # resp.container_group_definition.container_definitions[0].port_configuration.container_port_ranges[0].protocol #=> String, one of "TCP", "UDP"
1101
- # resp.container_group_definition.container_definitions[0].cpu #=> Integer
1102
- # resp.container_group_definition.container_definitions[0].health_check.command #=> Array
1103
- # resp.container_group_definition.container_definitions[0].health_check.command[0] #=> String
1104
- # resp.container_group_definition.container_definitions[0].health_check.interval #=> Integer
1105
- # resp.container_group_definition.container_definitions[0].health_check.timeout #=> Integer
1106
- # resp.container_group_definition.container_definitions[0].health_check.retries #=> Integer
1107
- # resp.container_group_definition.container_definitions[0].health_check.start_period #=> Integer
1108
- # resp.container_group_definition.container_definitions[0].command #=> Array
1109
- # resp.container_group_definition.container_definitions[0].command[0] #=> String
1110
- # resp.container_group_definition.container_definitions[0].essential #=> Boolean
1111
- # resp.container_group_definition.container_definitions[0].entry_point #=> Array
1112
- # resp.container_group_definition.container_definitions[0].entry_point[0] #=> String
1113
- # resp.container_group_definition.container_definitions[0].working_directory #=> String
1114
- # resp.container_group_definition.container_definitions[0].environment #=> Array
1115
- # resp.container_group_definition.container_definitions[0].environment[0].name #=> String
1116
- # resp.container_group_definition.container_definitions[0].environment[0].value #=> String
1117
- # resp.container_group_definition.container_definitions[0].depends_on #=> Array
1118
- # resp.container_group_definition.container_definitions[0].depends_on[0].container_name #=> String
1119
- # resp.container_group_definition.container_definitions[0].depends_on[0].condition #=> String, one of "START", "COMPLETE", "SUCCESS", "HEALTHY"
1568
+ # resp.container_group_definition.container_group_type #=> String, one of "GAME_SERVER", "PER_INSTANCE"
1569
+ # resp.container_group_definition.total_memory_limit_mebibytes #=> Integer
1570
+ # resp.container_group_definition.total_vcpu_limit #=> Float
1571
+ # resp.container_group_definition.game_server_container_definition.container_name #=> String
1572
+ # resp.container_group_definition.game_server_container_definition.depends_on #=> Array
1573
+ # resp.container_group_definition.game_server_container_definition.depends_on[0].container_name #=> String
1574
+ # resp.container_group_definition.game_server_container_definition.depends_on[0].condition #=> String, one of "START", "COMPLETE", "SUCCESS", "HEALTHY"
1575
+ # resp.container_group_definition.game_server_container_definition.mount_points #=> Array
1576
+ # resp.container_group_definition.game_server_container_definition.mount_points[0].instance_path #=> String
1577
+ # resp.container_group_definition.game_server_container_definition.mount_points[0].container_path #=> String
1578
+ # resp.container_group_definition.game_server_container_definition.mount_points[0].access_level #=> String, one of "READ_ONLY", "READ_AND_WRITE"
1579
+ # resp.container_group_definition.game_server_container_definition.environment_override #=> Array
1580
+ # resp.container_group_definition.game_server_container_definition.environment_override[0].name #=> String
1581
+ # resp.container_group_definition.game_server_container_definition.environment_override[0].value #=> String
1582
+ # resp.container_group_definition.game_server_container_definition.image_uri #=> String
1583
+ # resp.container_group_definition.game_server_container_definition.port_configuration.container_port_ranges #=> Array
1584
+ # resp.container_group_definition.game_server_container_definition.port_configuration.container_port_ranges[0].from_port #=> Integer
1585
+ # resp.container_group_definition.game_server_container_definition.port_configuration.container_port_ranges[0].to_port #=> Integer
1586
+ # resp.container_group_definition.game_server_container_definition.port_configuration.container_port_ranges[0].protocol #=> String, one of "TCP", "UDP"
1587
+ # resp.container_group_definition.game_server_container_definition.resolved_image_digest #=> String
1588
+ # resp.container_group_definition.game_server_container_definition.server_sdk_version #=> String
1589
+ # resp.container_group_definition.support_container_definitions #=> Array
1590
+ # resp.container_group_definition.support_container_definitions[0].container_name #=> String
1591
+ # resp.container_group_definition.support_container_definitions[0].depends_on #=> Array
1592
+ # resp.container_group_definition.support_container_definitions[0].depends_on[0].container_name #=> String
1593
+ # resp.container_group_definition.support_container_definitions[0].depends_on[0].condition #=> String, one of "START", "COMPLETE", "SUCCESS", "HEALTHY"
1594
+ # resp.container_group_definition.support_container_definitions[0].mount_points #=> Array
1595
+ # resp.container_group_definition.support_container_definitions[0].mount_points[0].instance_path #=> String
1596
+ # resp.container_group_definition.support_container_definitions[0].mount_points[0].container_path #=> String
1597
+ # resp.container_group_definition.support_container_definitions[0].mount_points[0].access_level #=> String, one of "READ_ONLY", "READ_AND_WRITE"
1598
+ # resp.container_group_definition.support_container_definitions[0].environment_override #=> Array
1599
+ # resp.container_group_definition.support_container_definitions[0].environment_override[0].name #=> String
1600
+ # resp.container_group_definition.support_container_definitions[0].environment_override[0].value #=> String
1601
+ # resp.container_group_definition.support_container_definitions[0].essential #=> Boolean
1602
+ # resp.container_group_definition.support_container_definitions[0].health_check.command #=> Array
1603
+ # resp.container_group_definition.support_container_definitions[0].health_check.command[0] #=> String
1604
+ # resp.container_group_definition.support_container_definitions[0].health_check.interval #=> Integer
1605
+ # resp.container_group_definition.support_container_definitions[0].health_check.retries #=> Integer
1606
+ # resp.container_group_definition.support_container_definitions[0].health_check.start_period #=> Integer
1607
+ # resp.container_group_definition.support_container_definitions[0].health_check.timeout #=> Integer
1608
+ # resp.container_group_definition.support_container_definitions[0].image_uri #=> String
1609
+ # resp.container_group_definition.support_container_definitions[0].memory_hard_limit_mebibytes #=> Integer
1610
+ # resp.container_group_definition.support_container_definitions[0].port_configuration.container_port_ranges #=> Array
1611
+ # resp.container_group_definition.support_container_definitions[0].port_configuration.container_port_ranges[0].from_port #=> Integer
1612
+ # resp.container_group_definition.support_container_definitions[0].port_configuration.container_port_ranges[0].to_port #=> Integer
1613
+ # resp.container_group_definition.support_container_definitions[0].port_configuration.container_port_ranges[0].protocol #=> String, one of "TCP", "UDP"
1614
+ # resp.container_group_definition.support_container_definitions[0].resolved_image_digest #=> String
1615
+ # resp.container_group_definition.support_container_definitions[0].vcpu #=> Float
1616
+ # resp.container_group_definition.version_number #=> Integer
1617
+ # resp.container_group_definition.version_description #=> String
1120
1618
  # resp.container_group_definition.status #=> String, one of "READY", "COPYING", "FAILED"
1121
1619
  # resp.container_group_definition.status_reason #=> String
1122
1620
  #
@@ -1129,9 +1627,6 @@ module Aws::GameLift
1129
1627
  req.send_request(options)
1130
1628
  end
1131
1629
 
1132
- # **This operation has been expanded to use with the Amazon GameLift
1133
- # containers feature, which is currently in public preview.**
1134
- #
1135
1630
  # Creates a fleet of compute resources to host your game servers. Use
1136
1631
  # this operation to set up the following types of fleets based on
1137
1632
  # compute type:
@@ -1173,40 +1668,6 @@ module Aws::GameLift
1173
1668
  # When the fleet status is ACTIVE, you can adjust capacity settings and
1174
1669
  # turn autoscaling on/off for each location.
1175
1670
  #
1176
- # **Managed container fleet**
1177
- #
1178
- # A container fleet is a set of Amazon Elastic Compute Cloud (Amazon
1179
- # EC2) instances. Your container architecture is deployed to each fleet
1180
- # instance based on the fleet configuration. Amazon GameLift manages the
1181
- # containers on each fleet instance and controls the lifecycle of game
1182
- # server processes, which host game sessions for players. Container
1183
- # fleets can have instances in multiple locations. Each container on an
1184
- # instance that runs game server processes is registered as a `Compute`.
1185
- #
1186
- # To create a container fleet, provide these required parameters:
1187
- #
1188
- # * `ComputeType` set to `CONTAINER`
1189
- #
1190
- # * `ContainerGroupsConfiguration`
1191
- #
1192
- # * `EC2InboundPermissions`
1193
- #
1194
- # * `EC2InstanceType`
1195
- #
1196
- # * `FleetType` set to `ON_DEMAND`
1197
- #
1198
- # * `Name`
1199
- #
1200
- # * `RuntimeConfiguration` with at least one `ServerProcesses`
1201
- # configuration
1202
- #
1203
- # If successful, this operation creates a new fleet resource and places
1204
- # it in `NEW` status while Amazon GameLift initiates the [fleet creation
1205
- # workflow][1].
1206
- #
1207
- # When the fleet status is ACTIVE, you can adjust capacity settings and
1208
- # turn autoscaling on/off for each location.
1209
- #
1210
1671
  # **Anywhere fleet**
1211
1672
  #
1212
1673
  # An Anywhere fleet represents compute resources that are not owned or
@@ -1230,9 +1691,7 @@ module Aws::GameLift
1230
1691
  #
1231
1692
  # [Setting up fleets][2]
1232
1693
  #
1233
- # [Setting up a container fleet][3]
1234
- #
1235
- # [Debug fleet creation issues][4]
1694
+ # [Debug fleet creation issues][3]
1236
1695
  #
1237
1696
  # [Multi-location fleets][2]
1238
1697
  #
@@ -1240,8 +1699,7 @@ module Aws::GameLift
1240
1699
  #
1241
1700
  # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-creating-all.html#fleets-creation-workflow
1242
1701
  # [2]: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-intro.html
1243
- # [3]: https://docs.aws.amazon.com/gamelift/latest/developerguide/containers-build-fleet.html
1244
- # [4]: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-creating-debug.html#fleets-creating-debug-creation
1702
+ # [3]: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-creating-debug.html#fleets-creating-debug-creation
1245
1703
  #
1246
1704
  # @option params [required, String] :name
1247
1705
  # A descriptive label that is associated with a fleet. Fleet names do
@@ -1287,8 +1745,8 @@ module Aws::GameLift
1287
1745
  # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-initialize
1288
1746
  #
1289
1747
  # @option params [String] :ec2_instance_type
1290
- # The Amazon GameLift-supported Amazon EC2 instance type to use with EC2
1291
- # and container fleets. Instance type determines the computing resources
1748
+ # The Amazon GameLift-supported Amazon EC2 instance type to use with
1749
+ # managed EC2 fleets. Instance type determines the computing resources
1292
1750
  # that will be used to host your game servers, including CPU, memory,
1293
1751
  # storage, and networking capacity. See [Amazon Elastic Compute Cloud
1294
1752
  # Instance Types][1] for detailed descriptions of Amazon EC2 instance
@@ -1301,19 +1759,14 @@ module Aws::GameLift
1301
1759
  # @option params [Array<Types::IpPermission>] :ec2_inbound_permissions
1302
1760
  # The IP address ranges and port settings that allow inbound traffic to
1303
1761
  # access game server processes and other processes on this fleet. Set
1304
- # this parameter for EC2 and container fleets. You can leave this
1305
- # parameter empty when creating the fleet, but you must call
1762
+ # this parameter for managed EC2 fleets. You can leave this parameter
1763
+ # empty when creating the fleet, but you must call
1306
1764
  # UpdateFleetPortSettings to set it before players can connect to game
1307
1765
  # sessions. As a best practice, we recommend opening ports for remote
1308
1766
  # access only when you need them and closing them when you're finished.
1309
1767
  # For Realtime Servers fleets, Amazon GameLift automatically sets TCP
1310
1768
  # and UDP ranges.
1311
1769
  #
1312
- # To manage inbound access for a container fleet, set this parameter to
1313
- # the same port numbers that you set for the fleet's connection port
1314
- # range. During the life of the fleet, update this parameter to control
1315
- # which connection ports are open to inbound traffic.
1316
- #
1317
1770
  # @option params [String] :new_game_session_protection_policy
1318
1771
  # The status of termination protection for active game sessions on the
1319
1772
  # fleet. By default, this property is set to `NoProtection`. You can
@@ -1329,10 +1782,10 @@ module Aws::GameLift
1329
1782
  #
1330
1783
  # @option params [Types::RuntimeConfiguration] :runtime_configuration
1331
1784
  # Instructions for how to launch and run server processes on the fleet.
1332
- # Set runtime configuration for EC2 fleets and container fleets. For an
1333
- # Anywhere fleets, set this parameter only if the fleet is running the
1334
- # Amazon GameLift Agent. The runtime configuration defines one or more
1335
- # server process configurations. Each server process identifies a game
1785
+ # Set runtime configuration for managed EC2 fleets. For an Anywhere
1786
+ # fleets, set this parameter only if the fleet is running the Amazon
1787
+ # GameLift Agent. The runtime configuration defines one or more server
1788
+ # process configurations. Each server process identifies a game
1336
1789
  # executable or Realtime script file and the number of processes to run
1337
1790
  # concurrently.
1338
1791
  #
@@ -1383,19 +1836,20 @@ module Aws::GameLift
1383
1836
  # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-ec2-instances.html#gamelift-ec2-instances-spot
1384
1837
  #
1385
1838
  # @option params [String] :instance_role_arn
1386
- # A unique identifier for an IAM role with access permissions to other
1387
- # Amazon Web Services services. Any application that runs on an instance
1388
- # in the fleet--including install scripts, server processes, and other
1389
- # processes--can use these permissions to interact with Amazon Web
1390
- # Services resources that you own or have access to. For more
1391
- # information about using the role with your game server builds, see [
1392
- # Communicate with other Amazon Web Services resources from your
1393
- # fleets][1]. This fleet property can't be changed after the fleet is
1394
- # created.
1839
+ # A unique identifier for an IAM role that manages access to your Amazon
1840
+ # Web Services services. With an instance role ARN set, any application
1841
+ # that runs on an instance in this fleet can assume the role, including
1842
+ # install scripts, server processes, and daemons (background processes).
1843
+ # Create a role or look up a role's ARN by using the [IAM dashboard][1]
1844
+ # in the Amazon Web Services Management Console. Learn more about using
1845
+ # on-box credentials for your game servers at [ Access external
1846
+ # resources from a game server][2]. This fleet property can't be
1847
+ # changed after the fleet is created.
1395
1848
  #
1396
1849
  #
1397
1850
  #
1398
- # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-resources.html
1851
+ # [1]: https://console.aws.amazon.com/iam/
1852
+ # [2]: https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-resources.html
1399
1853
  #
1400
1854
  # @option params [Types::CertificateConfiguration] :certificate_configuration
1401
1855
  # Prompts Amazon GameLift to generate a TLS/SSL certificate for the
@@ -1455,15 +1909,10 @@ module Aws::GameLift
1455
1909
  # * `EC2` – The game server build is deployed to Amazon EC2 instances
1456
1910
  # for cloud hosting. This is the default setting.
1457
1911
  #
1458
- # * `CONTAINER` – Container images with your game server build and
1459
- # supporting software are deployed to Amazon EC2 instances for cloud
1460
- # hosting. With this compute type, you must specify the
1461
- # `ContainerGroupsConfiguration` parameter.
1462
- #
1463
- # * `ANYWHERE` – Game servers or container images with your game server
1464
- # and supporting software are deployed to compute resources that are
1465
- # provided and managed by you. With this compute type, you can also
1466
- # set the `AnywhereConfiguration` parameter.
1912
+ # * `ANYWHERE` – Your game server and supporting software is deployed to
1913
+ # compute resources that are provided and managed by you. With this
1914
+ # compute type, you can also set the `AnywhereConfiguration`
1915
+ # parameter.
1467
1916
  #
1468
1917
  # @option params [Types::AnywhereConfiguration] :anywhere_configuration
1469
1918
  # Amazon GameLift Anywhere configuration options.
@@ -1482,14 +1931,6 @@ module Aws::GameLift
1482
1931
  #
1483
1932
  # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-resources.html
1484
1933
  #
1485
- # @option params [Types::ContainerGroupsConfiguration] :container_groups_configuration
1486
- # The container groups to deploy to instances in the container fleet and
1487
- # other fleet-level configuration settings. Use the
1488
- # CreateContainerGroupDefinition action to create container groups. A
1489
- # container fleet must have exactly one replica container group, and can
1490
- # optionally have one daemon container group. You can't change this
1491
- # property after you create the fleet.
1492
- #
1493
1934
  # @return [Types::CreateFleetOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1494
1935
  #
1495
1936
  # * {Types::CreateFleetOutput#fleet_attributes #fleet_attributes} => Types::FleetAttributes
@@ -1549,19 +1990,11 @@ module Aws::GameLift
1549
1990
  # value: "TagValue", # required
1550
1991
  # },
1551
1992
  # ],
1552
- # compute_type: "EC2", # accepts EC2, ANYWHERE, CONTAINER
1993
+ # compute_type: "EC2", # accepts EC2, ANYWHERE
1553
1994
  # anywhere_configuration: {
1554
1995
  # cost: "NonNegativeLimitedLengthDouble", # required
1555
1996
  # },
1556
1997
  # instance_role_credentials_provider: "SHARED_CREDENTIAL_FILE", # accepts SHARED_CREDENTIAL_FILE
1557
- # container_groups_configuration: {
1558
- # container_group_definition_names: ["ContainerGroupDefinitionNameOrArn"], # required
1559
- # connection_port_range: { # required
1560
- # from_port: 1, # required
1561
- # to_port: 1, # required
1562
- # },
1563
- # desired_replica_container_groups_per_instance: 1,
1564
- # },
1565
1998
  # })
1566
1999
  #
1567
2000
  # @example Response structure
@@ -1593,16 +2026,9 @@ module Aws::GameLift
1593
2026
  # resp.fleet_attributes.stopped_actions[0] #=> String, one of "AUTO_SCALING"
1594
2027
  # resp.fleet_attributes.instance_role_arn #=> String
1595
2028
  # resp.fleet_attributes.certificate_configuration.certificate_type #=> String, one of "DISABLED", "GENERATED"
1596
- # resp.fleet_attributes.compute_type #=> String, one of "EC2", "ANYWHERE", "CONTAINER"
2029
+ # resp.fleet_attributes.compute_type #=> String, one of "EC2", "ANYWHERE"
1597
2030
  # resp.fleet_attributes.anywhere_configuration.cost #=> String
1598
2031
  # resp.fleet_attributes.instance_role_credentials_provider #=> String, one of "SHARED_CREDENTIAL_FILE"
1599
- # resp.fleet_attributes.container_groups_attributes.container_group_definition_properties #=> Array
1600
- # resp.fleet_attributes.container_groups_attributes.container_group_definition_properties[0].scheduling_strategy #=> String, one of "REPLICA", "DAEMON"
1601
- # resp.fleet_attributes.container_groups_attributes.container_group_definition_properties[0].container_group_definition_name #=> String
1602
- # resp.fleet_attributes.container_groups_attributes.connection_port_range.from_port #=> Integer
1603
- # resp.fleet_attributes.container_groups_attributes.connection_port_range.to_port #=> Integer
1604
- # resp.fleet_attributes.container_groups_attributes.container_groups_per_instance.desired_replica_container_groups_per_instance #=> Integer
1605
- # resp.fleet_attributes.container_groups_attributes.container_groups_per_instance.max_replica_container_groups_per_instance #=> Integer
1606
2032
  # resp.location_states #=> Array
1607
2033
  # resp.location_states[0].location #=> String
1608
2034
  # resp.location_states[0].status #=> String, one of "NEW", "DOWNLOADING", "VALIDATING", "BUILDING", "ACTIVATING", "ACTIVE", "DELETING", "ERROR", "TERMINATED", "NOT_FOUND"
@@ -1616,13 +2042,10 @@ module Aws::GameLift
1616
2042
  req.send_request(options)
1617
2043
  end
1618
2044
 
1619
- # **This operation has been expanded to use with the Amazon GameLift
1620
- # containers feature, which is currently in public preview.**
1621
- #
1622
- # Adds remote locations to an EC2 or container fleet and begins
1623
- # populating the new locations with instances. The new instances conform
1624
- # to the fleet's instance type, auto-scaling, and other configuration
1625
- # settings.
2045
+ # Adds remote locations to a managed EC2 fleet or managed container
2046
+ # fleet and begins populating the new locations with instances. The new
2047
+ # instances conform to the fleet's instance type, auto-scaling, and
2048
+ # other configuration settings.
1626
2049
  #
1627
2050
  # <note markdown="1"> You can't add remote locations to a fleet that resides in an Amazon
1628
2051
  # Web Services Region that doesn't support multiple locations. Fleets
@@ -2017,7 +2440,7 @@ module Aws::GameLift
2017
2440
  #
2018
2441
  # @option params [Array<Types::GameProperty>] :game_properties
2019
2442
  # A set of key-value pairs that can store custom data in a game session.
2020
- # For example: `\{"Key": "difficulty", "Value": "novice"\}`. For an
2443
+ # For example: `{"Key": "difficulty", "Value": "novice"}`. For an
2021
2444
  # example, see [Create a game session with custom properties][1].
2022
2445
  #
2023
2446
  #
@@ -2062,7 +2485,8 @@ module Aws::GameLift
2062
2485
  # @option params [String] :game_session_data
2063
2486
  # A set of custom game session properties, formatted as a single string
2064
2487
  # value. This data is passed to a game server process with a request to
2065
- # start a new game session (see [Start a Game Session][1]).
2488
+ # start a new game session. For more information, see [Start a game
2489
+ # session][1].
2066
2490
  #
2067
2491
  #
2068
2492
  #
@@ -2197,17 +2621,14 @@ module Aws::GameLift
2197
2621
  # @option params [Integer] :timeout_in_seconds
2198
2622
  # The maximum time, in seconds, that a new game session placement
2199
2623
  # request remains in the queue. When a request exceeds this time, the
2200
- # game session placement changes to a `TIMED_OUT` status. By default,
2201
- # this property is set to `600`.
2624
+ # game session placement changes to a `TIMED_OUT` status.
2202
2625
  #
2203
2626
  # @option params [Array<Types::PlayerLatencyPolicy>] :player_latency_policies
2204
- # A set of policies that act as a sliding cap on player latency. FleetIQ
2205
- # works to deliver low latency for most players in a game session. These
2206
- # policies ensure that no individual player can be placed into a game
2207
- # with unreasonably high latency. Use multiple policies to gradually
2208
- # relax latency requirements a step at a time. Multiple policies are
2209
- # applied based on their maximum allowed latency, starting with the
2210
- # lowest value.
2627
+ # A set of policies that enforce a sliding cap on player latency when
2628
+ # processing game sessions placement requests. Use multiple policies to
2629
+ # gradually relax the cap over time if Amazon GameLift can't make a
2630
+ # placement. Policies are evaluated in order starting with the lowest
2631
+ # maximum latency value.
2211
2632
  #
2212
2633
  # @option params [Array<Types::GameSessionQueueDestination>] :destinations
2213
2634
  # A list of fleets and/or fleet aliases that can be used to fulfill game
@@ -2454,10 +2875,9 @@ module Aws::GameLift
2454
2875
  # @option params [Integer] :additional_player_count
2455
2876
  # The number of player slots in a match to keep open for future players.
2456
2877
  # For example, if the configuration's rule set specifies a match for a
2457
- # single 10-person team, and the additional player count is set to 2, 10
2458
- # players will be selected for the match and 2 more player slots will be
2459
- # open for future players. This parameter is not used if `FlexMatchMode`
2460
- # is set to `STANDALONE`.
2878
+ # single 12-person team, and the additional player count is set to 2,
2879
+ # only 10 players are selected for the match. This parameter is not used
2880
+ # if `FlexMatchMode` is set to `STANDALONE`.
2461
2881
  #
2462
2882
  # @option params [String] :custom_event_data
2463
2883
  # Information to be added to all events related to this matchmaking
@@ -2465,7 +2885,7 @@ module Aws::GameLift
2465
2885
  #
2466
2886
  # @option params [Array<Types::GameProperty>] :game_properties
2467
2887
  # A set of key-value pairs that can store custom data in a game session.
2468
- # For example: `\{"Key": "difficulty", "Value": "novice"\}`. This
2888
+ # For example: `{"Key": "difficulty", "Value": "novice"}`. This
2469
2889
  # information is added to the new `GameSession` object that is created
2470
2890
  # for a successful match. This parameter is not used if `FlexMatchMode`
2471
2891
  # is set to `STANDALONE`.
@@ -2473,10 +2893,10 @@ module Aws::GameLift
2473
2893
  # @option params [String] :game_session_data
2474
2894
  # A set of custom game session properties, formatted as a single string
2475
2895
  # value. This data is passed to a game server process with a request to
2476
- # start a new game session (see [Start a Game Session][1]). This
2477
- # information is added to the new `GameSession` object that is created
2478
- # for a successful match. This parameter is not used if `FlexMatchMode`
2479
- # is set to `STANDALONE`.
2896
+ # start a new game session. For more information, see [Start a game
2897
+ # session][1]. This information is added to the new `GameSession` object
2898
+ # that is created for a successful match. This parameter is not used if
2899
+ # `FlexMatchMode` is set to `STANDALONE`.
2480
2900
  #
2481
2901
  #
2482
2902
  #
@@ -2829,16 +3249,16 @@ module Aws::GameLift
2829
3249
  req.send_request(options)
2830
3250
  end
2831
3251
 
2832
- # Creates a new script record for your Realtime Servers script. Realtime
2833
- # scripts are JavaScript that provide configuration settings and
2834
- # optional custom game logic for your game. The script is deployed when
2835
- # you create a Realtime Servers fleet to host your game sessions. Script
2836
- # logic is executed during an active game session.
3252
+ # Creates a script resource for your Realtime Servers script. Realtime
3253
+ # scripts are JavaScript files that provide configuration settings and
3254
+ # optional custom game logic for your game. Script logic is executed
3255
+ # during an active game session. To deploy Realtime Servers for hosting,
3256
+ # create an Amazon GameLift managed fleet with the script.
2837
3257
  #
2838
- # To create a new script record, specify a script name and provide the
2839
- # script file(s). The script files and all dependencies must be zipped
2840
- # into a single file. You can pull the zip file from either of these
2841
- # locations:
3258
+ # To create a script resource, specify a script name and provide the
3259
+ # script file(s). The script files and all dependencies must be combined
3260
+ # into a single .zip file. You can upload the .zip file from either of
3261
+ # these locations:
2842
3262
  #
2843
3263
  # * A locally available directory. Use the *ZipFile* parameter for this
2844
3264
  # option.
@@ -2849,12 +3269,9 @@ module Aws::GameLift
2849
3269
  # (IAM) role that allows the Amazon GameLift service to access your S3
2850
3270
  # bucket.
2851
3271
  #
2852
- # If the call is successful, a new script record is created with a
2853
- # unique script ID. If the script file is provided as a local file, the
2854
- # file is uploaded to an Amazon GameLift-owned S3 bucket and the script
2855
- # record's storage location reflects this location. If the script file
2856
- # is provided as an S3 bucket, Amazon GameLift accesses the file at this
2857
- # storage location as needed for deployment.
3272
+ # If the call is successful, Amazon GameLift creates a new script
3273
+ # resource with a unique script ID. The script is uploaded to an Amazon
3274
+ # S3 bucket that is owned by Amazon GameLift.
2858
3275
  #
2859
3276
  # **Learn more**
2860
3277
  #
@@ -2873,8 +3290,8 @@ module Aws::GameLift
2873
3290
  # [3]: https://docs.aws.amazon.com/gamelift/latest/developerguide/reference-awssdk.html#reference-awssdk-resources-fleets
2874
3291
  #
2875
3292
  # @option params [String] :name
2876
- # A descriptive label that is associated with a script. Script names
2877
- # don't need to be unique. You can use [UpdateScript][1] to change this
3293
+ # A descriptive label that is associated with a script. Script names do
3294
+ # not need to be unique. You can use [UpdateScript][1] to change this
2878
3295
  # value later.
2879
3296
  #
2880
3297
  #
@@ -2882,9 +3299,9 @@ module Aws::GameLift
2882
3299
  # [1]: https://docs.aws.amazon.com/gamelift/latest/apireference/API_UpdateScript.html
2883
3300
  #
2884
3301
  # @option params [String] :version
2885
- # Version information associated with a build or script. Version strings
2886
- # don't need to be unique. You can use [UpdateScript][1] to change this
2887
- # value later.
3302
+ # Version information that is associated with a build or script. Version
3303
+ # strings do not need to be unique. You can use [UpdateScript][1] to
3304
+ # change this value later.
2888
3305
  #
2889
3306
  #
2890
3307
  #
@@ -3215,15 +3632,60 @@ module Aws::GameLift
3215
3632
  req.send_request(options)
3216
3633
  end
3217
3634
 
3218
- # <b>This operation is used with the Amazon GameLift containers feature,
3219
- # which is currently in public preview. </b>
3635
+ # Deletes all resources and information related to a container fleet and
3636
+ # shuts down currently running fleet instances, including those in
3637
+ # remote locations. The container fleet must be in `ACTIVE` status to be
3638
+ # deleted.
3639
+ #
3640
+ # To delete a fleet, specify the fleet ID to be terminated. During the
3641
+ # deletion process, the fleet status is changed to `DELETING`.
3642
+ #
3643
+ # **Learn more**
3644
+ #
3645
+ # [Setting up Amazon GameLift Fleets][1]
3646
+ #
3647
+ #
3648
+ #
3649
+ # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-intro.html
3650
+ #
3651
+ # @option params [required, String] :fleet_id
3652
+ # A unique identifier for the container fleet to delete. You can use
3653
+ # either the fleet ID or ARN value.
3654
+ #
3655
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3656
+ #
3657
+ # @example Request syntax with placeholder values
3658
+ #
3659
+ # resp = client.delete_container_fleet({
3660
+ # fleet_id: "FleetIdOrArn", # required
3661
+ # })
3662
+ #
3663
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/DeleteContainerFleet AWS API Documentation
3664
+ #
3665
+ # @overload delete_container_fleet(params = {})
3666
+ # @param [Hash] params ({})
3667
+ def delete_container_fleet(params = {}, options = {})
3668
+ req = build_request(:delete_container_fleet, params)
3669
+ req.send_request(options)
3670
+ end
3671
+
3672
+ # Deletes a container group definition. You can delete a container group
3673
+ # definition if there are no fleets using the definition.
3220
3674
  #
3221
- # Deletes a container group definition resource. You can delete a
3222
- # container group definition if there are no fleets using the
3223
- # definition.
3675
+ # **Request options:**
3224
3676
  #
3225
- # To delete a container group definition, identify the resource to
3226
- # delete.
3677
+ # * Delete an entire container group definition, including all versions.
3678
+ # Specify the container group definition name, or use an ARN value
3679
+ # without the version number.
3680
+ #
3681
+ # * Delete a particular version. Specify the container group definition
3682
+ # name and a version number, or use an ARN value that includes the
3683
+ # version number.
3684
+ #
3685
+ # * Keep the newest versions and delete all older versions. Specify the
3686
+ # container group definition name and the number of versions to
3687
+ # retain. For example, set `VersionCountToRetain` to 5 to delete all
3688
+ # but the five most recent versions.
3227
3689
  #
3228
3690
  # **Learn more**
3229
3691
  #
@@ -3239,12 +3701,21 @@ module Aws::GameLift
3239
3701
  # The unique identifier for the container group definition to delete.
3240
3702
  # You can use either the `Name` or `ARN` value.
3241
3703
  #
3704
+ # @option params [Integer] :version_number
3705
+ # The specific version to delete.
3706
+ #
3707
+ # @option params [Integer] :version_count_to_retain
3708
+ # The number of most recent versions to keep while deleting all older
3709
+ # versions.
3710
+ #
3242
3711
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3243
3712
  #
3244
3713
  # @example Request syntax with placeholder values
3245
3714
  #
3246
3715
  # resp = client.delete_container_group_definition({
3247
3716
  # name: "ContainerGroupDefinitionNameOrArn", # required
3717
+ # version_number: 1,
3718
+ # version_count_to_retain: 1,
3248
3719
  # })
3249
3720
  #
3250
3721
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/DeleteContainerGroupDefinition AWS API Documentation
@@ -3748,17 +4219,14 @@ module Aws::GameLift
3748
4219
  req.send_request(options)
3749
4220
  end
3750
4221
 
3751
- # **This operation has been expanded to use with the Amazon GameLift
3752
- # containers feature, which is currently in public preview.**
4222
+ # Removes a compute resource from an Amazon GameLift Anywhere fleet.
4223
+ # Deregistered computes can no longer host game sessions through Amazon
4224
+ # GameLift.
3753
4225
  #
3754
- # Removes a compute resource from an Amazon GameLift Anywhere fleet or
3755
- # container fleet. Deregistered computes can no longer host game
3756
- # sessions through Amazon GameLift.
3757
- #
3758
- # For an Anywhere fleet or a container fleet that's running the Amazon
3759
- # GameLift Agent, the Agent handles all compute registry tasks for you.
3760
- # For an Anywhere fleet that doesn't use the Agent, call this operation
3761
- # to deregister fleet computes.
4226
+ # For an Anywhere fleet that's running the Amazon GameLift Agent, the
4227
+ # Agent handles all compute registry tasks for you. For an Anywhere
4228
+ # fleet that doesn't use the Agent, call this operation to deregister
4229
+ # fleet computes.
3762
4230
  #
3763
4231
  # To deregister a compute, call this operation from the compute that's
3764
4232
  # being deregistered and specify the compute name and the fleet ID.
@@ -3769,10 +4237,7 @@ module Aws::GameLift
3769
4237
  #
3770
4238
  # @option params [required, String] :compute_name
3771
4239
  # The unique identifier of the compute resource to deregister. For an
3772
- # Anywhere fleet compute, use the registered compute name. For a
3773
- # container fleet, use the compute name (for example,
3774
- # `a123b456c789012d3e4567f8a901b23c/1a234b56-7cd8-9e0f-a1b2-c34d567ef8a9`)
3775
- # or the compute ARN.
4240
+ # Anywhere fleet compute, use the registered compute name.
3776
4241
  #
3777
4242
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3778
4243
  #
@@ -3937,9 +4402,6 @@ module Aws::GameLift
3937
4402
  req.send_request(options)
3938
4403
  end
3939
4404
 
3940
- # **This operation has been expanded to use with the Amazon GameLift
3941
- # containers feature, which is currently in public preview.**
3942
- #
3943
4405
  # Retrieves properties for a compute resource in an Amazon GameLift
3944
4406
  # fleet. To get a list of all computes in a fleet, call ListCompute.
3945
4407
  #
@@ -3950,16 +4412,12 @@ module Aws::GameLift
3950
4412
  # compute resource. Depending on the fleet's compute type, the result
3951
4413
  # includes the following information:
3952
4414
  #
3953
- # * For `EC2` fleets, this operation returns information about the EC2
3954
- # instance.
4415
+ # * For managed EC2 fleets, this operation returns information about the
4416
+ # EC2 instance.
3955
4417
  #
3956
- # * For `ANYWHERE` fleets, this operation returns information about the
4418
+ # * For Anywhere fleets, this operation returns information about the
3957
4419
  # registered compute.
3958
4420
  #
3959
- # * For `CONTAINER` fleets, this operation returns information about the
3960
- # container that's registered as a compute, and the instance it's
3961
- # running on. The compute name is the container name.
3962
- #
3963
4421
  # @option params [required, String] :fleet_id
3964
4422
  # A unique identifier for the fleet that the compute belongs to. You can
3965
4423
  # use either the fleet ID or ARN value.
@@ -3967,10 +4425,7 @@ module Aws::GameLift
3967
4425
  # @option params [required, String] :compute_name
3968
4426
  # The unique identifier of the compute resource to retrieve properties
3969
4427
  # for. For an Anywhere fleet compute, use the registered compute name.
3970
- # For an EC2 fleet instance, use the instance ID. For a container fleet,
3971
- # use the compute name (for example,
3972
- # `a123b456c789012d3e4567f8a901b23c/1a234b56-7cd8-9e0f-a1b2-c34d567ef8a9`)
3973
- # or the compute ARN.
4428
+ # For an EC2 fleet instance, use the instance ID.
3974
4429
  #
3975
4430
  # @return [Types::DescribeComputeOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3976
4431
  #
@@ -3991,7 +4446,7 @@ module Aws::GameLift
3991
4446
  # resp.compute.compute_arn #=> String
3992
4447
  # resp.compute.ip_address #=> String
3993
4448
  # resp.compute.dns_name #=> String
3994
- # resp.compute.compute_status #=> String, one of "PENDING", "ACTIVE", "TERMINATING"
4449
+ # resp.compute.compute_status #=> String, one of "PENDING", "ACTIVE", "TERMINATING", "IMPAIRED"
3995
4450
  # resp.compute.location #=> String
3996
4451
  # resp.compute.creation_time #=> Time
3997
4452
  # resp.compute.operating_system #=> String, one of "WINDOWS_2012", "AMAZON_LINUX", "AMAZON_LINUX_2", "WINDOWS_2016", "AMAZON_LINUX_2023"
@@ -3999,10 +4454,10 @@ module Aws::GameLift
3999
4454
  # resp.compute.game_lift_service_sdk_endpoint #=> String
4000
4455
  # resp.compute.game_lift_agent_endpoint #=> String
4001
4456
  # resp.compute.instance_id #=> String
4002
- # resp.compute.container_attributes.container_port_mappings #=> Array
4003
- # resp.compute.container_attributes.container_port_mappings[0].container_port #=> Integer
4004
- # resp.compute.container_attributes.container_port_mappings[0].connection_port #=> Integer
4005
- # resp.compute.container_attributes.container_port_mappings[0].protocol #=> String, one of "TCP", "UDP"
4457
+ # resp.compute.container_attributes #=> Array
4458
+ # resp.compute.container_attributes[0].container_name #=> String
4459
+ # resp.compute.container_attributes[0].container_runtime_id #=> String
4460
+ # resp.compute.game_server_container_group_definition_arn #=> String
4006
4461
  #
4007
4462
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/DescribeCompute AWS API Documentation
4008
4463
  #
@@ -4013,15 +4468,105 @@ module Aws::GameLift
4013
4468
  req.send_request(options)
4014
4469
  end
4015
4470
 
4016
- # <b>This operation is used with the Amazon GameLift containers feature,
4017
- # which is currently in public preview. </b>
4471
+ # Retrieves the properties for a container fleet. When requesting
4472
+ # attributes for multiple fleets, use the pagination parameters to
4473
+ # retrieve results as a set of sequential pages.
4474
+ #
4475
+ # **Request options**
4476
+ #
4477
+ # * Get container fleet properties for a single fleet. Provide either
4478
+ # the fleet ID or ARN value.
4479
+ #
4480
+ # ^
4481
+ #
4482
+ # **Results**
4483
+ #
4484
+ # If successful, a `ContainerFleet` object is returned. This object
4485
+ # includes the fleet properties, including information about the most
4486
+ # recent deployment.
4487
+ #
4488
+ # <note markdown="1"> Some API operations limit the number of fleet IDs that allowed in one
4489
+ # request. If a request exceeds this limit, the request fails and the
4490
+ # error message contains the maximum allowed number.
4491
+ #
4492
+ # </note>
4493
+ #
4494
+ # @option params [required, String] :fleet_id
4495
+ # A unique identifier for the container fleet to retrieve. You can use
4496
+ # either the fleet ID or ARN value.
4497
+ #
4498
+ # @return [Types::DescribeContainerFleetOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4499
+ #
4500
+ # * {Types::DescribeContainerFleetOutput#container_fleet #container_fleet} => Types::ContainerFleet
4018
4501
  #
4502
+ # @example Request syntax with placeholder values
4503
+ #
4504
+ # resp = client.describe_container_fleet({
4505
+ # fleet_id: "FleetIdOrArn", # required
4506
+ # })
4507
+ #
4508
+ # @example Response structure
4509
+ #
4510
+ # resp.container_fleet.fleet_id #=> String
4511
+ # resp.container_fleet.fleet_arn #=> String
4512
+ # resp.container_fleet.fleet_role_arn #=> String
4513
+ # resp.container_fleet.game_server_container_group_definition_name #=> String
4514
+ # resp.container_fleet.game_server_container_group_definition_arn #=> String
4515
+ # resp.container_fleet.per_instance_container_group_definition_name #=> String
4516
+ # resp.container_fleet.per_instance_container_group_definition_arn #=> String
4517
+ # resp.container_fleet.instance_connection_port_range.from_port #=> Integer
4518
+ # resp.container_fleet.instance_connection_port_range.to_port #=> Integer
4519
+ # resp.container_fleet.instance_inbound_permissions #=> Array
4520
+ # resp.container_fleet.instance_inbound_permissions[0].from_port #=> Integer
4521
+ # resp.container_fleet.instance_inbound_permissions[0].to_port #=> Integer
4522
+ # resp.container_fleet.instance_inbound_permissions[0].ip_range #=> String
4523
+ # resp.container_fleet.instance_inbound_permissions[0].protocol #=> String, one of "TCP", "UDP"
4524
+ # resp.container_fleet.game_server_container_groups_per_instance #=> Integer
4525
+ # resp.container_fleet.maximum_game_server_container_groups_per_instance #=> Integer
4526
+ # resp.container_fleet.instance_type #=> String
4527
+ # resp.container_fleet.billing_type #=> String, one of "ON_DEMAND", "SPOT"
4528
+ # resp.container_fleet.description #=> String
4529
+ # resp.container_fleet.creation_time #=> Time
4530
+ # resp.container_fleet.metric_groups #=> Array
4531
+ # resp.container_fleet.metric_groups[0] #=> String
4532
+ # resp.container_fleet.new_game_session_protection_policy #=> String, one of "NoProtection", "FullProtection"
4533
+ # resp.container_fleet.game_session_creation_limit_policy.new_game_sessions_per_creator #=> Integer
4534
+ # resp.container_fleet.game_session_creation_limit_policy.policy_period_in_minutes #=> Integer
4535
+ # resp.container_fleet.status #=> String, one of "PENDING", "CREATING", "CREATED", "ACTIVATING", "ACTIVE", "UPDATING", "DELETING"
4536
+ # resp.container_fleet.deployment_details.latest_deployment_id #=> String
4537
+ # resp.container_fleet.log_configuration.log_destination #=> String, one of "NONE", "CLOUDWATCH", "S3"
4538
+ # resp.container_fleet.log_configuration.s3_bucket_name #=> String
4539
+ # resp.container_fleet.log_configuration.log_group_arn #=> String
4540
+ # resp.container_fleet.location_attributes #=> Array
4541
+ # resp.container_fleet.location_attributes[0].location #=> String
4542
+ # resp.container_fleet.location_attributes[0].status #=> String, one of "PENDING", "CREATING", "CREATED", "ACTIVATING", "ACTIVE", "UPDATING", "DELETING"
4543
+ #
4544
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/DescribeContainerFleet AWS API Documentation
4545
+ #
4546
+ # @overload describe_container_fleet(params = {})
4547
+ # @param [Hash] params ({})
4548
+ def describe_container_fleet(params = {}, options = {})
4549
+ req = build_request(:describe_container_fleet, params)
4550
+ req.send_request(options)
4551
+ end
4552
+
4019
4553
  # Retrieves the properties of a container group definition, including
4020
4554
  # all container definitions in the group.
4021
4555
  #
4022
- # To retrieve a container group definition, provide a resource
4023
- # identifier. If successful, this operation returns the complete
4024
- # properties of the container group definition.
4556
+ # **Request options:**
4557
+ #
4558
+ # * Retrieve the latest version of a container group definition. Specify
4559
+ # the container group definition name only, or use an ARN value
4560
+ # without a version number.
4561
+ #
4562
+ # * Retrieve a particular version. Specify the container group
4563
+ # definition name and a version number, or use an ARN value that
4564
+ # includes the version number.
4565
+ #
4566
+ # **Results:**
4567
+ #
4568
+ # If successful, this operation returns the complete properties of a
4569
+ # container group definition version.
4025
4570
  #
4026
4571
  # **Learn more**
4027
4572
  #
@@ -4037,6 +4582,9 @@ module Aws::GameLift
4037
4582
  # The unique identifier for the container group definition to retrieve
4038
4583
  # properties for. You can use either the `Name` or `ARN` value.
4039
4584
  #
4585
+ # @option params [Integer] :version_number
4586
+ # The specific version to retrieve.
4587
+ #
4040
4588
  # @return [Types::DescribeContainerGroupDefinitionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4041
4589
  #
4042
4590
  # * {Types::DescribeContainerGroupDefinitionOutput#container_group_definition #container_group_definition} => Types::ContainerGroupDefinition
@@ -4045,6 +4593,7 @@ module Aws::GameLift
4045
4593
  #
4046
4594
  # resp = client.describe_container_group_definition({
4047
4595
  # name: "ContainerGroupDefinitionNameOrArn", # required
4596
+ # version_number: 1,
4048
4597
  # })
4049
4598
  #
4050
4599
  # @example Response structure
@@ -4053,38 +4602,56 @@ module Aws::GameLift
4053
4602
  # resp.container_group_definition.creation_time #=> Time
4054
4603
  # resp.container_group_definition.operating_system #=> String, one of "AMAZON_LINUX_2023"
4055
4604
  # resp.container_group_definition.name #=> String
4056
- # resp.container_group_definition.scheduling_strategy #=> String, one of "REPLICA", "DAEMON"
4057
- # resp.container_group_definition.total_memory_limit #=> Integer
4058
- # resp.container_group_definition.total_cpu_limit #=> Integer
4059
- # resp.container_group_definition.container_definitions #=> Array
4060
- # resp.container_group_definition.container_definitions[0].container_name #=> String
4061
- # resp.container_group_definition.container_definitions[0].image_uri #=> String
4062
- # resp.container_group_definition.container_definitions[0].resolved_image_digest #=> String
4063
- # resp.container_group_definition.container_definitions[0].memory_limits.soft_limit #=> Integer
4064
- # resp.container_group_definition.container_definitions[0].memory_limits.hard_limit #=> Integer
4065
- # resp.container_group_definition.container_definitions[0].port_configuration.container_port_ranges #=> Array
4066
- # resp.container_group_definition.container_definitions[0].port_configuration.container_port_ranges[0].from_port #=> Integer
4067
- # resp.container_group_definition.container_definitions[0].port_configuration.container_port_ranges[0].to_port #=> Integer
4068
- # resp.container_group_definition.container_definitions[0].port_configuration.container_port_ranges[0].protocol #=> String, one of "TCP", "UDP"
4069
- # resp.container_group_definition.container_definitions[0].cpu #=> Integer
4070
- # resp.container_group_definition.container_definitions[0].health_check.command #=> Array
4071
- # resp.container_group_definition.container_definitions[0].health_check.command[0] #=> String
4072
- # resp.container_group_definition.container_definitions[0].health_check.interval #=> Integer
4073
- # resp.container_group_definition.container_definitions[0].health_check.timeout #=> Integer
4074
- # resp.container_group_definition.container_definitions[0].health_check.retries #=> Integer
4075
- # resp.container_group_definition.container_definitions[0].health_check.start_period #=> Integer
4076
- # resp.container_group_definition.container_definitions[0].command #=> Array
4077
- # resp.container_group_definition.container_definitions[0].command[0] #=> String
4078
- # resp.container_group_definition.container_definitions[0].essential #=> Boolean
4079
- # resp.container_group_definition.container_definitions[0].entry_point #=> Array
4080
- # resp.container_group_definition.container_definitions[0].entry_point[0] #=> String
4081
- # resp.container_group_definition.container_definitions[0].working_directory #=> String
4082
- # resp.container_group_definition.container_definitions[0].environment #=> Array
4083
- # resp.container_group_definition.container_definitions[0].environment[0].name #=> String
4084
- # resp.container_group_definition.container_definitions[0].environment[0].value #=> String
4085
- # resp.container_group_definition.container_definitions[0].depends_on #=> Array
4086
- # resp.container_group_definition.container_definitions[0].depends_on[0].container_name #=> String
4087
- # resp.container_group_definition.container_definitions[0].depends_on[0].condition #=> String, one of "START", "COMPLETE", "SUCCESS", "HEALTHY"
4605
+ # resp.container_group_definition.container_group_type #=> String, one of "GAME_SERVER", "PER_INSTANCE"
4606
+ # resp.container_group_definition.total_memory_limit_mebibytes #=> Integer
4607
+ # resp.container_group_definition.total_vcpu_limit #=> Float
4608
+ # resp.container_group_definition.game_server_container_definition.container_name #=> String
4609
+ # resp.container_group_definition.game_server_container_definition.depends_on #=> Array
4610
+ # resp.container_group_definition.game_server_container_definition.depends_on[0].container_name #=> String
4611
+ # resp.container_group_definition.game_server_container_definition.depends_on[0].condition #=> String, one of "START", "COMPLETE", "SUCCESS", "HEALTHY"
4612
+ # resp.container_group_definition.game_server_container_definition.mount_points #=> Array
4613
+ # resp.container_group_definition.game_server_container_definition.mount_points[0].instance_path #=> String
4614
+ # resp.container_group_definition.game_server_container_definition.mount_points[0].container_path #=> String
4615
+ # resp.container_group_definition.game_server_container_definition.mount_points[0].access_level #=> String, one of "READ_ONLY", "READ_AND_WRITE"
4616
+ # resp.container_group_definition.game_server_container_definition.environment_override #=> Array
4617
+ # resp.container_group_definition.game_server_container_definition.environment_override[0].name #=> String
4618
+ # resp.container_group_definition.game_server_container_definition.environment_override[0].value #=> String
4619
+ # resp.container_group_definition.game_server_container_definition.image_uri #=> String
4620
+ # resp.container_group_definition.game_server_container_definition.port_configuration.container_port_ranges #=> Array
4621
+ # resp.container_group_definition.game_server_container_definition.port_configuration.container_port_ranges[0].from_port #=> Integer
4622
+ # resp.container_group_definition.game_server_container_definition.port_configuration.container_port_ranges[0].to_port #=> Integer
4623
+ # resp.container_group_definition.game_server_container_definition.port_configuration.container_port_ranges[0].protocol #=> String, one of "TCP", "UDP"
4624
+ # resp.container_group_definition.game_server_container_definition.resolved_image_digest #=> String
4625
+ # resp.container_group_definition.game_server_container_definition.server_sdk_version #=> String
4626
+ # resp.container_group_definition.support_container_definitions #=> Array
4627
+ # resp.container_group_definition.support_container_definitions[0].container_name #=> String
4628
+ # resp.container_group_definition.support_container_definitions[0].depends_on #=> Array
4629
+ # resp.container_group_definition.support_container_definitions[0].depends_on[0].container_name #=> String
4630
+ # resp.container_group_definition.support_container_definitions[0].depends_on[0].condition #=> String, one of "START", "COMPLETE", "SUCCESS", "HEALTHY"
4631
+ # resp.container_group_definition.support_container_definitions[0].mount_points #=> Array
4632
+ # resp.container_group_definition.support_container_definitions[0].mount_points[0].instance_path #=> String
4633
+ # resp.container_group_definition.support_container_definitions[0].mount_points[0].container_path #=> String
4634
+ # resp.container_group_definition.support_container_definitions[0].mount_points[0].access_level #=> String, one of "READ_ONLY", "READ_AND_WRITE"
4635
+ # resp.container_group_definition.support_container_definitions[0].environment_override #=> Array
4636
+ # resp.container_group_definition.support_container_definitions[0].environment_override[0].name #=> String
4637
+ # resp.container_group_definition.support_container_definitions[0].environment_override[0].value #=> String
4638
+ # resp.container_group_definition.support_container_definitions[0].essential #=> Boolean
4639
+ # resp.container_group_definition.support_container_definitions[0].health_check.command #=> Array
4640
+ # resp.container_group_definition.support_container_definitions[0].health_check.command[0] #=> String
4641
+ # resp.container_group_definition.support_container_definitions[0].health_check.interval #=> Integer
4642
+ # resp.container_group_definition.support_container_definitions[0].health_check.retries #=> Integer
4643
+ # resp.container_group_definition.support_container_definitions[0].health_check.start_period #=> Integer
4644
+ # resp.container_group_definition.support_container_definitions[0].health_check.timeout #=> Integer
4645
+ # resp.container_group_definition.support_container_definitions[0].image_uri #=> String
4646
+ # resp.container_group_definition.support_container_definitions[0].memory_hard_limit_mebibytes #=> Integer
4647
+ # resp.container_group_definition.support_container_definitions[0].port_configuration.container_port_ranges #=> Array
4648
+ # resp.container_group_definition.support_container_definitions[0].port_configuration.container_port_ranges[0].from_port #=> Integer
4649
+ # resp.container_group_definition.support_container_definitions[0].port_configuration.container_port_ranges[0].to_port #=> Integer
4650
+ # resp.container_group_definition.support_container_definitions[0].port_configuration.container_port_ranges[0].protocol #=> String, one of "TCP", "UDP"
4651
+ # resp.container_group_definition.support_container_definitions[0].resolved_image_digest #=> String
4652
+ # resp.container_group_definition.support_container_definitions[0].vcpu #=> Float
4653
+ # resp.container_group_definition.version_number #=> Integer
4654
+ # resp.container_group_definition.version_description #=> String
4088
4655
  # resp.container_group_definition.status #=> String, one of "READY", "COPYING", "FAILED"
4089
4656
  # resp.container_group_definition.status_reason #=> String
4090
4657
  #
@@ -4195,9 +4762,6 @@ module Aws::GameLift
4195
4762
  req.send_request(options)
4196
4763
  end
4197
4764
 
4198
- # **This operation has been expanded to use with the Amazon GameLift
4199
- # containers feature, which is currently in public preview.**
4200
- #
4201
4765
  # Retrieves core fleet-wide properties for fleets in an Amazon Web
4202
4766
  # Services Region. Properties include the computing hardware and
4203
4767
  # deployment configuration for instances in the fleet.
@@ -4292,16 +4856,9 @@ module Aws::GameLift
4292
4856
  # resp.fleet_attributes[0].stopped_actions[0] #=> String, one of "AUTO_SCALING"
4293
4857
  # resp.fleet_attributes[0].instance_role_arn #=> String
4294
4858
  # resp.fleet_attributes[0].certificate_configuration.certificate_type #=> String, one of "DISABLED", "GENERATED"
4295
- # resp.fleet_attributes[0].compute_type #=> String, one of "EC2", "ANYWHERE", "CONTAINER"
4859
+ # resp.fleet_attributes[0].compute_type #=> String, one of "EC2", "ANYWHERE"
4296
4860
  # resp.fleet_attributes[0].anywhere_configuration.cost #=> String
4297
4861
  # resp.fleet_attributes[0].instance_role_credentials_provider #=> String, one of "SHARED_CREDENTIAL_FILE"
4298
- # resp.fleet_attributes[0].container_groups_attributes.container_group_definition_properties #=> Array
4299
- # resp.fleet_attributes[0].container_groups_attributes.container_group_definition_properties[0].scheduling_strategy #=> String, one of "REPLICA", "DAEMON"
4300
- # resp.fleet_attributes[0].container_groups_attributes.container_group_definition_properties[0].container_group_definition_name #=> String
4301
- # resp.fleet_attributes[0].container_groups_attributes.connection_port_range.from_port #=> Integer
4302
- # resp.fleet_attributes[0].container_groups_attributes.connection_port_range.to_port #=> Integer
4303
- # resp.fleet_attributes[0].container_groups_attributes.container_groups_per_instance.desired_replica_container_groups_per_instance #=> Integer
4304
- # resp.fleet_attributes[0].container_groups_attributes.container_groups_per_instance.max_replica_container_groups_per_instance #=> Integer
4305
4862
  # resp.next_token #=> String
4306
4863
  #
4307
4864
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/DescribeFleetAttributes AWS API Documentation
@@ -4313,11 +4870,8 @@ module Aws::GameLift
4313
4870
  req.send_request(options)
4314
4871
  end
4315
4872
 
4316
- # **This operation has been expanded to use with the Amazon GameLift
4317
- # containers feature, which is currently in public preview.**
4318
- #
4319
4873
  # Retrieves the resource capacity settings for one or more fleets. For a
4320
- # container fleet, this operation also returns counts for replica
4874
+ # container fleet, this operation also returns counts for game server
4321
4875
  # container groups.
4322
4876
  #
4323
4877
  # With multi-location fleets, this operation retrieves data for the
@@ -4404,10 +4958,10 @@ module Aws::GameLift
4404
4958
  # resp.fleet_capacity[0].instance_counts.idle #=> Integer
4405
4959
  # resp.fleet_capacity[0].instance_counts.terminating #=> Integer
4406
4960
  # resp.fleet_capacity[0].location #=> String
4407
- # resp.fleet_capacity[0].replica_container_group_counts.pending #=> Integer
4408
- # resp.fleet_capacity[0].replica_container_group_counts.active #=> Integer
4409
- # resp.fleet_capacity[0].replica_container_group_counts.idle #=> Integer
4410
- # resp.fleet_capacity[0].replica_container_group_counts.terminating #=> Integer
4961
+ # resp.fleet_capacity[0].game_server_container_group_counts.pending #=> Integer
4962
+ # resp.fleet_capacity[0].game_server_container_group_counts.active #=> Integer
4963
+ # resp.fleet_capacity[0].game_server_container_group_counts.idle #=> Integer
4964
+ # resp.fleet_capacity[0].game_server_container_group_counts.terminating #=> Integer
4411
4965
  # resp.next_token #=> String
4412
4966
  #
4413
4967
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/DescribeFleetCapacity AWS API Documentation
@@ -4419,6 +4973,64 @@ module Aws::GameLift
4419
4973
  req.send_request(options)
4420
4974
  end
4421
4975
 
4976
+ # Retrieves information about a managed container fleet deployment.
4977
+ #
4978
+ # **Request options**
4979
+ #
4980
+ # * Get information about the latest deployment for a specific fleet.
4981
+ # Provide the fleet ID or ARN.
4982
+ #
4983
+ # * Get information about a specific deployment. Provide the fleet ID or
4984
+ # ARN and the deployment ID.
4985
+ #
4986
+ # **Results**
4987
+ #
4988
+ # If successful, a `FleetDeployment` object is returned.
4989
+ #
4990
+ # @option params [required, String] :fleet_id
4991
+ # A unique identifier for the container fleet. You can use either the
4992
+ # fleet ID or ARN value.
4993
+ #
4994
+ # @option params [String] :deployment_id
4995
+ # A unique identifier for the deployment to return information for.
4996
+ #
4997
+ # @return [Types::DescribeFleetDeploymentOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4998
+ #
4999
+ # * {Types::DescribeFleetDeploymentOutput#fleet_deployment #fleet_deployment} => Types::FleetDeployment
5000
+ # * {Types::DescribeFleetDeploymentOutput#locational_deployments #locational_deployments} => Hash&lt;String,Types::LocationalDeployment&gt;
5001
+ #
5002
+ # @example Request syntax with placeholder values
5003
+ #
5004
+ # resp = client.describe_fleet_deployment({
5005
+ # fleet_id: "FleetIdOrArn", # required
5006
+ # deployment_id: "DeploymentId",
5007
+ # })
5008
+ #
5009
+ # @example Response structure
5010
+ #
5011
+ # resp.fleet_deployment.deployment_id #=> String
5012
+ # resp.fleet_deployment.fleet_id #=> String
5013
+ # resp.fleet_deployment.game_server_binary_arn #=> String
5014
+ # resp.fleet_deployment.rollback_game_server_binary_arn #=> String
5015
+ # resp.fleet_deployment.per_instance_binary_arn #=> String
5016
+ # resp.fleet_deployment.rollback_per_instance_binary_arn #=> String
5017
+ # resp.fleet_deployment.deployment_status #=> String, one of "IN_PROGRESS", "IMPAIRED", "COMPLETE", "ROLLBACK_IN_PROGRESS", "ROLLBACK_COMPLETE", "CANCELLED", "PENDING"
5018
+ # resp.fleet_deployment.deployment_configuration.protection_strategy #=> String, one of "WITH_PROTECTION", "IGNORE_PROTECTION"
5019
+ # resp.fleet_deployment.deployment_configuration.minimum_healthy_percentage #=> Integer
5020
+ # resp.fleet_deployment.deployment_configuration.impairment_strategy #=> String, one of "MAINTAIN", "ROLLBACK"
5021
+ # resp.fleet_deployment.creation_time #=> Time
5022
+ # resp.locational_deployments #=> Hash
5023
+ # resp.locational_deployments["NonZeroAnd128MaxAsciiString"].deployment_status #=> String, one of "IN_PROGRESS", "IMPAIRED", "COMPLETE", "ROLLBACK_IN_PROGRESS", "ROLLBACK_COMPLETE", "CANCELLED", "PENDING"
5024
+ #
5025
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/DescribeFleetDeployment AWS API Documentation
5026
+ #
5027
+ # @overload describe_fleet_deployment(params = {})
5028
+ # @param [Hash] params ({})
5029
+ def describe_fleet_deployment(params = {}, options = {})
5030
+ req = build_request(:describe_fleet_deployment, params)
5031
+ req.send_request(options)
5032
+ end
5033
+
4422
5034
  # Retrieves entries from a fleet's event log. Fleet events are
4423
5035
  # initiated by changes in status, such as during fleet creation and
4424
5036
  # termination, changes in capacity, etc. If a fleet has multiple
@@ -4488,7 +5100,7 @@ module Aws::GameLift
4488
5100
  # resp.events #=> Array
4489
5101
  # resp.events[0].event_id #=> String
4490
5102
  # resp.events[0].resource_id #=> String
4491
- # resp.events[0].event_code #=> String, one of "GENERIC_EVENT", "FLEET_CREATED", "FLEET_DELETED", "FLEET_SCALING_EVENT", "FLEET_STATE_DOWNLOADING", "FLEET_STATE_VALIDATING", "FLEET_STATE_BUILDING", "FLEET_STATE_ACTIVATING", "FLEET_STATE_ACTIVE", "FLEET_STATE_ERROR", "FLEET_INITIALIZATION_FAILED", "FLEET_BINARY_DOWNLOAD_FAILED", "FLEET_VALIDATION_LAUNCH_PATH_NOT_FOUND", "FLEET_VALIDATION_EXECUTABLE_RUNTIME_FAILURE", "FLEET_VALIDATION_TIMED_OUT", "FLEET_ACTIVATION_FAILED", "FLEET_ACTIVATION_FAILED_NO_INSTANCES", "FLEET_NEW_GAME_SESSION_PROTECTION_POLICY_UPDATED", "SERVER_PROCESS_INVALID_PATH", "SERVER_PROCESS_SDK_INITIALIZATION_TIMEOUT", "SERVER_PROCESS_PROCESS_READY_TIMEOUT", "SERVER_PROCESS_CRASHED", "SERVER_PROCESS_TERMINATED_UNHEALTHY", "SERVER_PROCESS_FORCE_TERMINATED", "SERVER_PROCESS_PROCESS_EXIT_TIMEOUT", "GAME_SESSION_ACTIVATION_TIMEOUT", "FLEET_CREATION_EXTRACTING_BUILD", "FLEET_CREATION_RUNNING_INSTALLER", "FLEET_CREATION_VALIDATING_RUNTIME_CONFIG", "FLEET_VPC_PEERING_SUCCEEDED", "FLEET_VPC_PEERING_FAILED", "FLEET_VPC_PEERING_DELETED", "INSTANCE_INTERRUPTED", "INSTANCE_RECYCLED", "FLEET_CREATION_COMPLETED_INSTALLER", "FLEET_CREATION_FAILED_INSTALLER"
5103
+ # resp.events[0].event_code #=> String, one of "GENERIC_EVENT", "FLEET_CREATED", "FLEET_DELETED", "FLEET_SCALING_EVENT", "FLEET_STATE_DOWNLOADING", "FLEET_STATE_VALIDATING", "FLEET_STATE_BUILDING", "FLEET_STATE_ACTIVATING", "FLEET_STATE_ACTIVE", "FLEET_STATE_ERROR", "FLEET_STATE_PENDING", "FLEET_STATE_CREATING", "FLEET_STATE_CREATED", "FLEET_STATE_UPDATING", "FLEET_INITIALIZATION_FAILED", "FLEET_BINARY_DOWNLOAD_FAILED", "FLEET_VALIDATION_LAUNCH_PATH_NOT_FOUND", "FLEET_VALIDATION_EXECUTABLE_RUNTIME_FAILURE", "FLEET_VALIDATION_TIMED_OUT", "FLEET_ACTIVATION_FAILED", "FLEET_ACTIVATION_FAILED_NO_INSTANCES", "FLEET_NEW_GAME_SESSION_PROTECTION_POLICY_UPDATED", "SERVER_PROCESS_INVALID_PATH", "SERVER_PROCESS_SDK_INITIALIZATION_TIMEOUT", "SERVER_PROCESS_PROCESS_READY_TIMEOUT", "SERVER_PROCESS_CRASHED", "SERVER_PROCESS_TERMINATED_UNHEALTHY", "SERVER_PROCESS_FORCE_TERMINATED", "SERVER_PROCESS_PROCESS_EXIT_TIMEOUT", "SERVER_PROCESS_SDK_INITIALIZATION_FAILED", "SERVER_PROCESS_MISCONFIGURED_CONTAINER_PORT", "GAME_SESSION_ACTIVATION_TIMEOUT", "FLEET_CREATION_EXTRACTING_BUILD", "FLEET_CREATION_RUNNING_INSTALLER", "FLEET_CREATION_VALIDATING_RUNTIME_CONFIG", "FLEET_VPC_PEERING_SUCCEEDED", "FLEET_VPC_PEERING_FAILED", "FLEET_VPC_PEERING_DELETED", "INSTANCE_INTERRUPTED", "INSTANCE_RECYCLED", "INSTANCE_REPLACED_UNHEALTHY", "FLEET_CREATION_COMPLETED_INSTALLER", "FLEET_CREATION_FAILED_INSTALLER", "COMPUTE_LOG_UPLOAD_FAILED", "GAME_SERVER_CONTAINER_GROUP_CRASHED", "PER_INSTANCE_CONTAINER_GROUP_CRASHED", "GAME_SERVER_CONTAINER_GROUP_REPLACED_UNHEALTHY", "LOCATION_STATE_PENDING", "LOCATION_STATE_CREATING", "LOCATION_STATE_CREATED", "LOCATION_STATE_ACTIVATING", "LOCATION_STATE_ACTIVE", "LOCATION_STATE_UPDATING", "LOCATION_STATE_ERROR", "LOCATION_STATE_DELETING", "LOCATION_STATE_DELETED"
4492
5104
  # resp.events[0].message #=> String
4493
5105
  # resp.events[0].event_time #=> Time
4494
5106
  # resp.events[0].pre_signed_log_url #=> String
@@ -4598,8 +5210,8 @@ module Aws::GameLift
4598
5210
  # Retrieves the resource capacity settings for a fleet location. The
4599
5211
  # data returned includes the current capacity (number of EC2 instances)
4600
5212
  # and some scaling settings for the requested fleet location. For a
4601
- # container fleet, this operation also returns counts for replica
4602
- # container groups.
5213
+ # managed container fleet, this operation also returns counts for game
5214
+ # server container groups.
4603
5215
  #
4604
5216
  # Use this operation to retrieve capacity information for a fleet's
4605
5217
  # remote location or home Region (you can also retrieve home Region
@@ -4657,10 +5269,10 @@ module Aws::GameLift
4657
5269
  # resp.fleet_capacity.instance_counts.idle #=> Integer
4658
5270
  # resp.fleet_capacity.instance_counts.terminating #=> Integer
4659
5271
  # resp.fleet_capacity.location #=> String
4660
- # resp.fleet_capacity.replica_container_group_counts.pending #=> Integer
4661
- # resp.fleet_capacity.replica_container_group_counts.active #=> Integer
4662
- # resp.fleet_capacity.replica_container_group_counts.idle #=> Integer
4663
- # resp.fleet_capacity.replica_container_group_counts.terminating #=> Integer
5272
+ # resp.fleet_capacity.game_server_container_group_counts.pending #=> Integer
5273
+ # resp.fleet_capacity.game_server_container_group_counts.active #=> Integer
5274
+ # resp.fleet_capacity.game_server_container_group_counts.idle #=> Integer
5275
+ # resp.fleet_capacity.game_server_container_group_counts.terminating #=> Integer
4664
5276
  #
4665
5277
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/DescribeFleetLocationCapacity AWS API Documentation
4666
5278
  #
@@ -4735,13 +5347,13 @@ module Aws::GameLift
4735
5347
  req.send_request(options)
4736
5348
  end
4737
5349
 
4738
- # Retrieves a fleet's inbound connection permissions. Connection
5350
+ # Retrieves a fleet's inbound connection permissions. Inbound
4739
5351
  # permissions specify IP addresses and port settings that incoming
4740
5352
  # traffic can use to access server processes in the fleet. Game server
4741
5353
  # processes that are running in the fleet must use a port that falls
4742
- # within this range. To connect to game server processes on a container
4743
- # fleet, the port settings should include one or more of the fleet's
4744
- # connection ports.
5354
+ # within this range. To connect to game server processes on a managed
5355
+ # container fleet, the port settings should include one or more of the
5356
+ # container fleet's connection ports.
4745
5357
  #
4746
5358
  # Use this operation in the following ways:
4747
5359
  #
@@ -5963,13 +6575,10 @@ module Aws::GameLift
5963
6575
  end
5964
6576
 
5965
6577
  # Retrieves a fleet's runtime configuration settings. The runtime
5966
- # configuration determines which server processes run, and how, on
5967
- # computes in the fleet. For managed EC2 fleets, the runtime
5968
- # configuration describes server processes that run on each fleet
5969
- # instance. For container fleets, the runtime configuration describes
5970
- # server processes that run in each replica container group. You can
5971
- # update a fleet's runtime configuration at any time using
5972
- # UpdateRuntimeConfiguration.
6578
+ # configuration determines which server processes run, and how they run,
6579
+ # and how many run concurrently on computes in managed EC2 and Anywhere
6580
+ # fleets. You can update a fleet's runtime configuration at any time
6581
+ # using UpdateRuntimeConfiguration.
5973
6582
  #
5974
6583
  # To get the current runtime configuration for a fleet, provide the
5975
6584
  # fleet ID.
@@ -6260,43 +6869,31 @@ module Aws::GameLift
6260
6869
  req.send_request(options)
6261
6870
  end
6262
6871
 
6263
- # **This operation has been expanded to use with the Amazon GameLift
6264
- # containers feature, which is currently in public preview.**
6265
- #
6266
6872
  # Requests authorization to remotely connect to a hosting resource in a
6267
6873
  # Amazon GameLift managed fleet. This operation is not used with Amazon
6268
- # GameLift Anywhere fleets
6269
- #
6270
- # To request access, specify the compute name and the fleet ID. If
6271
- # successful, this operation returns a set of temporary Amazon Web
6272
- # Services credentials, including a two-part access key and a session
6273
- # token.
6874
+ # GameLift Anywhere fleets.
6274
6875
  #
6275
- # **EC2 fleets**
6876
+ # **Request options**
6276
6877
  #
6277
- # With an EC2 fleet (where compute type is `EC2`), use these credentials
6278
- # with Amazon EC2 Systems Manager (SSM) to start a session with the
6279
- # compute. For more details, see [ Starting a session (CLI)][1] in the
6280
- # *Amazon EC2 Systems Manager User Guide*.
6281
- #
6282
- # **Container fleets**
6878
+ # To request access to a compute, specify the compute name and the fleet
6879
+ # ID.
6283
6880
  #
6284
- # With a container fleet (where compute type is `CONTAINER`), use these
6285
- # credentials and the target value with SSM to connect to the fleet
6286
- # instance where the container is running. After you're connected to
6287
- # the instance, use Docker commands to interact with the container.
6881
+ # **Results**
6288
6882
  #
6289
- # **Learn more**
6883
+ # If successful, this operation returns a set of temporary Amazon Web
6884
+ # Services credentials, including a two-part access key and a session
6885
+ # token.
6290
6886
  #
6291
- # * [Remotely connect to fleet instances][2]
6887
+ # * With a managed EC2 fleet (where compute type is `EC2`), use these
6888
+ # credentials with Amazon EC2 Systems Manager (SSM) to start a session
6889
+ # with the compute. For more details, see [ Starting a session
6890
+ # (CLI)][1] in the *Amazon EC2 Systems Manager User Guide*.
6292
6891
  #
6293
- # * [Debug fleet issues][3]
6892
+ # ^
6294
6893
  #
6295
6894
  #
6296
6895
  #
6297
6896
  # [1]: https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-sessions-start.html#sessions-start-cli
6298
- # [2]: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-remote-access.html
6299
- # [3]: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-creating-debug.html
6300
6897
  #
6301
6898
  # @option params [required, String] :fleet_id
6302
6899
  # A unique identifier for the fleet that holds the compute resource that
@@ -6304,10 +6901,8 @@ module Aws::GameLift
6304
6901
  #
6305
6902
  # @option params [required, String] :compute_name
6306
6903
  # A unique identifier for the compute resource that you want to connect
6307
- # to. For an EC2 fleet compute, use the instance ID. For a container
6308
- # fleet, use the compute name (for example,
6309
- # `a123b456c789012d3e4567f8a901b23c/1a234b56-7cd8-9e0f-a1b2-c34d567ef8a9`)
6310
- # or the compute ARN.
6904
+ # to. For an EC2 fleet compute, use the instance ID. Use ListCompute to
6905
+ # retrieve compute identifiers.
6311
6906
  #
6312
6907
  # @return [Types::GetComputeAccessOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6313
6908
  #
@@ -6317,6 +6912,7 @@ module Aws::GameLift
6317
6912
  # * {Types::GetComputeAccessOutput#compute_arn #compute_arn} => String
6318
6913
  # * {Types::GetComputeAccessOutput#credentials #credentials} => Types::AwsCredentials
6319
6914
  # * {Types::GetComputeAccessOutput#target #target} => String
6915
+ # * {Types::GetComputeAccessOutput#container_identifiers #container_identifiers} => Array&lt;Types::ContainerIdentifier&gt;
6320
6916
  #
6321
6917
  # @example Request syntax with placeholder values
6322
6918
  #
@@ -6335,6 +6931,9 @@ module Aws::GameLift
6335
6931
  # resp.credentials.secret_access_key #=> String
6336
6932
  # resp.credentials.session_token #=> String
6337
6933
  # resp.target #=> String
6934
+ # resp.container_identifiers #=> Array
6935
+ # resp.container_identifiers[0].container_name #=> String
6936
+ # resp.container_identifiers[0].container_runtime_id #=> String
6338
6937
  #
6339
6938
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/GetComputeAccess AWS API Documentation
6340
6939
  #
@@ -6346,25 +6945,23 @@ module Aws::GameLift
6346
6945
  end
6347
6946
 
6348
6947
  # Requests an authentication token from Amazon GameLift for a compute
6349
- # resource in an Amazon GameLift Anywhere fleet or container fleet. Game
6350
- # servers that are running on the compute use this token to communicate
6351
- # with the Amazon GameLift service, such as when calling the Amazon
6352
- # GameLift server SDK action `InitSDK()`. Authentication tokens are
6353
- # valid for a limited time span, so you need to request a fresh token
6354
- # before the current token expires.
6355
- #
6356
- # Use this operation based on the fleet compute type:
6357
- #
6358
- # * For `EC2` fleets, auth token retrieval and refresh is handled
6359
- # automatically. All game servers that are running on all fleet
6360
- # instances have access to a valid auth token.
6361
- #
6362
- # * For `ANYWHERE` and `CONTAINER` fleets, if you're using the Amazon
6363
- # GameLift Agent, auth token retrieval and refresh is handled
6364
- # automatically for any container or Anywhere compute where the Agent
6365
- # is running. If you're not using the Agent, create a mechanism to
6366
- # retrieve and refresh auth tokens for computes that are running game
6367
- # server processes.
6948
+ # resource in an Amazon GameLift fleet. Game servers that are running on
6949
+ # the compute use this token to communicate with the Amazon GameLift
6950
+ # service, such as when calling the Amazon GameLift server SDK action
6951
+ # `InitSDK()`. Authentication tokens are valid for a limited time span,
6952
+ # so you need to request a fresh token before the current token expires.
6953
+ #
6954
+ # **Request options**
6955
+ #
6956
+ # * For managed EC2 fleets (compute type `EC2`), auth token retrieval
6957
+ # and refresh is handled automatically. All game servers that are
6958
+ # running on all fleet instances have access to a valid auth token.
6959
+ #
6960
+ # * For Anywhere fleets (compute type `ANYWHERE`), if you're using the
6961
+ # Amazon GameLift Agent, auth token retrieval and refresh is handled
6962
+ # automatically for any compute where the Agent is running. If you're
6963
+ # not using the Agent, create a mechanism to retrieve and refresh auth
6964
+ # tokens for computes that are running game server processes.
6368
6965
  #
6369
6966
  # **Learn more**
6370
6967
  #
@@ -6386,10 +6983,7 @@ module Aws::GameLift
6386
6983
  # @option params [required, String] :compute_name
6387
6984
  # The name of the compute resource you are requesting the authentication
6388
6985
  # token for. For an Anywhere fleet compute, use the registered compute
6389
- # name. For an EC2 fleet instance, use the instance ID. For a container
6390
- # fleet, use the compute name (for example,
6391
- # `a123b456c789012d3e4567f8a901b23c/1a234b56-7cd8-9e0f-a1b2-c34d567ef8a9`)
6392
- # or the compute ARN.
6986
+ # name. For an EC2 fleet instance, use the instance ID.
6393
6987
  #
6394
6988
  # @return [Types::GetComputeAuthTokenOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6395
6989
  #
@@ -6686,7 +7280,7 @@ module Aws::GameLift
6686
7280
  # @option params [String] :next_token
6687
7281
  # A token that indicates the start of the next sequential page of
6688
7282
  # results. Use the token that is returned with a previous call to this
6689
- # operation. To start at the beginning of the result set, don't specify
7283
+ # operation. To start at the beginning of the result set, do not specify
6690
7284
  # a value.
6691
7285
  #
6692
7286
  # @return [Types::ListBuildsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -6727,43 +7321,55 @@ module Aws::GameLift
6727
7321
  req.send_request(options)
6728
7322
  end
6729
7323
 
6730
- # **This operation has been expanded to use with the Amazon GameLift
6731
- # containers feature, which is currently in public preview.**
6732
- #
6733
7324
  # Retrieves information on the compute resources in an Amazon GameLift
6734
- # fleet.
7325
+ # fleet. Use the pagination parameters to retrieve results in a set of
7326
+ # sequential pages.
6735
7327
  #
6736
- # To request a list of computes, specify the fleet ID. Use the
6737
- # pagination parameters to retrieve results in a set of sequential
6738
- # pages.
7328
+ # **Request options:**
7329
+ #
7330
+ # * Retrieve a list of all computes in a fleet. Specify a fleet ID.
6739
7331
  #
6740
- # You can filter the result set by location.
7332
+ # * Retrieve a list of all computes in a specific fleet location.
7333
+ # Specify a fleet ID and location.
6741
7334
  #
6742
- # If successful, this operation returns information on all computes in
6743
- # the requested fleet. Depending on the fleet's compute type, the
6744
- # result includes the following information:
7335
+ # **Results:**
6745
7336
  #
6746
- # * For `EC2` fleets, this operation returns information about the EC2
6747
- # instance. Compute names are instance IDs.
7337
+ # If successful, this operation returns information on a set of
7338
+ # computes. Depending on the type of fleet, the result includes the
7339
+ # following information:
6748
7340
  #
6749
- # * For `ANYWHERE` fleets, this operation returns the compute names and
6750
- # details provided when the compute was registered with
6751
- # `RegisterCompute`. The `GameLiftServiceSdkEndpoint` or
6752
- # `GameLiftAgentEndpoint` is included.
7341
+ # * For managed EC2 fleets (compute type `EC2`), this operation returns
7342
+ # information about the EC2 instance. Compute names are EC2 instance
7343
+ # IDs.
6753
7344
  #
6754
- # * For `CONTAINER` fleets, this operation returns information about
6755
- # containers that are registered as computes, and the instances
6756
- # they're running on. Compute names are container names.
7345
+ # * For Anywhere fleets (compute type `ANYWHERE`), this operation
7346
+ # returns compute names and details as provided when the compute was
7347
+ # registered with `RegisterCompute`. This includes
7348
+ # `GameLiftServiceSdkEndpoint` or `GameLiftAgentEndpoint`.
6757
7349
  #
6758
7350
  # @option params [required, String] :fleet_id
6759
7351
  # A unique identifier for the fleet to retrieve compute resources for.
6760
7352
  #
6761
7353
  # @option params [String] :location
6762
7354
  # The name of a location to retrieve compute resources for. For an
6763
- # Amazon GameLift Anywhere fleet, use a custom location. For a
6764
- # multi-location EC2 or container fleet, provide a Amazon Web Services
6765
- # Region or Local Zone code (for example: `us-west-2` or
6766
- # `us-west-2-lax-1`).
7355
+ # Amazon GameLift Anywhere fleet, use a custom location. For a managed
7356
+ # fleet, provide a Amazon Web Services Region or Local Zone code (for
7357
+ # example: `us-west-2` or `us-west-2-lax-1`).
7358
+ #
7359
+ # @option params [String] :container_group_definition_name
7360
+ # For computes in a managed container fleet, the name of the deployed
7361
+ # container group definition.
7362
+ #
7363
+ # @option params [String] :compute_status
7364
+ # The status of computes in a managed container fleet, based on the
7365
+ # success of the latest update deployment.
7366
+ #
7367
+ # * `ACTIVE` -- The compute is deployed with the correct container
7368
+ # definitions. It is ready to process game servers and host game
7369
+ # sessions.
7370
+ #
7371
+ # * `IMPAIRED` -- An update deployment to the compute failed, and the
7372
+ # compute is deployed with incorrect container definitions.
6767
7373
  #
6768
7374
  # @option params [Integer] :limit
6769
7375
  # The maximum number of results to return. Use this parameter with
@@ -6787,6 +7393,8 @@ module Aws::GameLift
6787
7393
  # resp = client.list_compute({
6788
7394
  # fleet_id: "FleetIdOrArn", # required
6789
7395
  # location: "LocationStringModel",
7396
+ # container_group_definition_name: "ContainerGroupDefinitionNameOrArn",
7397
+ # compute_status: "ACTIVE", # accepts ACTIVE, IMPAIRED
6790
7398
  # limit: 1,
6791
7399
  # next_token: "NonZeroAndMaxString",
6792
7400
  # })
@@ -6800,7 +7408,7 @@ module Aws::GameLift
6800
7408
  # resp.compute_list[0].compute_arn #=> String
6801
7409
  # resp.compute_list[0].ip_address #=> String
6802
7410
  # resp.compute_list[0].dns_name #=> String
6803
- # resp.compute_list[0].compute_status #=> String, one of "PENDING", "ACTIVE", "TERMINATING"
7411
+ # resp.compute_list[0].compute_status #=> String, one of "PENDING", "ACTIVE", "TERMINATING", "IMPAIRED"
6804
7412
  # resp.compute_list[0].location #=> String
6805
7413
  # resp.compute_list[0].creation_time #=> Time
6806
7414
  # resp.compute_list[0].operating_system #=> String, one of "WINDOWS_2012", "AMAZON_LINUX", "AMAZON_LINUX_2", "WINDOWS_2016", "AMAZON_LINUX_2023"
@@ -6808,29 +7416,279 @@ module Aws::GameLift
6808
7416
  # resp.compute_list[0].game_lift_service_sdk_endpoint #=> String
6809
7417
  # resp.compute_list[0].game_lift_agent_endpoint #=> String
6810
7418
  # resp.compute_list[0].instance_id #=> String
6811
- # resp.compute_list[0].container_attributes.container_port_mappings #=> Array
6812
- # resp.compute_list[0].container_attributes.container_port_mappings[0].container_port #=> Integer
6813
- # resp.compute_list[0].container_attributes.container_port_mappings[0].connection_port #=> Integer
6814
- # resp.compute_list[0].container_attributes.container_port_mappings[0].protocol #=> String, one of "TCP", "UDP"
7419
+ # resp.compute_list[0].container_attributes #=> Array
7420
+ # resp.compute_list[0].container_attributes[0].container_name #=> String
7421
+ # resp.compute_list[0].container_attributes[0].container_runtime_id #=> String
7422
+ # resp.compute_list[0].game_server_container_group_definition_arn #=> String
7423
+ # resp.next_token #=> String
7424
+ #
7425
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/ListCompute AWS API Documentation
7426
+ #
7427
+ # @overload list_compute(params = {})
7428
+ # @param [Hash] params ({})
7429
+ def list_compute(params = {}, options = {})
7430
+ req = build_request(:list_compute, params)
7431
+ req.send_request(options)
7432
+ end
7433
+
7434
+ # Retrieves a collection of container fleet resources in an Amazon Web
7435
+ # Services Region. For fleets that have multiple locations, this
7436
+ # operation retrieves fleets based on their home Region only.
7437
+ #
7438
+ # **Request options**
7439
+ #
7440
+ # * Get a list of all fleets. Call this operation without specifying a
7441
+ # container group definition.
7442
+ #
7443
+ # * Get a list of fleets filtered by container group definition. Provide
7444
+ # the container group definition name or ARN value.
7445
+ #
7446
+ # * To get a list of all Realtime Servers fleets with a specific
7447
+ # configuration script, provide the script ID.
7448
+ #
7449
+ # Use the pagination parameters to retrieve results as a set of
7450
+ # sequential pages.
7451
+ #
7452
+ # If successful, this operation returns a collection of container fleets
7453
+ # that match the request parameters. A NextToken value is also returned
7454
+ # if there are more result pages to retrieve.
7455
+ #
7456
+ # <note markdown="1"> Fleet IDs are returned in no particular order.
7457
+ #
7458
+ # </note>
7459
+ #
7460
+ # @option params [String] :container_group_definition_name
7461
+ # The container group definition to filter the list on. Use this
7462
+ # parameter to retrieve only those fleets that use the specified
7463
+ # container group definition. You can specify the container group
7464
+ # definition's name to get fleets with the latest versions.
7465
+ # Alternatively, provide an ARN value to get fleets with a specific
7466
+ # version number.
7467
+ #
7468
+ # @option params [Integer] :limit
7469
+ # The maximum number of results to return. Use this parameter with
7470
+ # `NextToken` to get results as a set of sequential pages.
7471
+ #
7472
+ # @option params [String] :next_token
7473
+ # A token that indicates the start of the next sequential page of
7474
+ # results. Use the token that is returned with a previous call to this
7475
+ # operation. To start at the beginning of the result set, do not specify
7476
+ # a value.
7477
+ #
7478
+ # @return [Types::ListContainerFleetsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7479
+ #
7480
+ # * {Types::ListContainerFleetsOutput#container_fleets #container_fleets} => Array&lt;Types::ContainerFleet&gt;
7481
+ # * {Types::ListContainerFleetsOutput#next_token #next_token} => String
7482
+ #
7483
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7484
+ #
7485
+ # @example Request syntax with placeholder values
7486
+ #
7487
+ # resp = client.list_container_fleets({
7488
+ # container_group_definition_name: "ContainerGroupDefinitionNameOrArn",
7489
+ # limit: 1,
7490
+ # next_token: "NonZeroAndMaxString",
7491
+ # })
7492
+ #
7493
+ # @example Response structure
7494
+ #
7495
+ # resp.container_fleets #=> Array
7496
+ # resp.container_fleets[0].fleet_id #=> String
7497
+ # resp.container_fleets[0].fleet_arn #=> String
7498
+ # resp.container_fleets[0].fleet_role_arn #=> String
7499
+ # resp.container_fleets[0].game_server_container_group_definition_name #=> String
7500
+ # resp.container_fleets[0].game_server_container_group_definition_arn #=> String
7501
+ # resp.container_fleets[0].per_instance_container_group_definition_name #=> String
7502
+ # resp.container_fleets[0].per_instance_container_group_definition_arn #=> String
7503
+ # resp.container_fleets[0].instance_connection_port_range.from_port #=> Integer
7504
+ # resp.container_fleets[0].instance_connection_port_range.to_port #=> Integer
7505
+ # resp.container_fleets[0].instance_inbound_permissions #=> Array
7506
+ # resp.container_fleets[0].instance_inbound_permissions[0].from_port #=> Integer
7507
+ # resp.container_fleets[0].instance_inbound_permissions[0].to_port #=> Integer
7508
+ # resp.container_fleets[0].instance_inbound_permissions[0].ip_range #=> String
7509
+ # resp.container_fleets[0].instance_inbound_permissions[0].protocol #=> String, one of "TCP", "UDP"
7510
+ # resp.container_fleets[0].game_server_container_groups_per_instance #=> Integer
7511
+ # resp.container_fleets[0].maximum_game_server_container_groups_per_instance #=> Integer
7512
+ # resp.container_fleets[0].instance_type #=> String
7513
+ # resp.container_fleets[0].billing_type #=> String, one of "ON_DEMAND", "SPOT"
7514
+ # resp.container_fleets[0].description #=> String
7515
+ # resp.container_fleets[0].creation_time #=> Time
7516
+ # resp.container_fleets[0].metric_groups #=> Array
7517
+ # resp.container_fleets[0].metric_groups[0] #=> String
7518
+ # resp.container_fleets[0].new_game_session_protection_policy #=> String, one of "NoProtection", "FullProtection"
7519
+ # resp.container_fleets[0].game_session_creation_limit_policy.new_game_sessions_per_creator #=> Integer
7520
+ # resp.container_fleets[0].game_session_creation_limit_policy.policy_period_in_minutes #=> Integer
7521
+ # resp.container_fleets[0].status #=> String, one of "PENDING", "CREATING", "CREATED", "ACTIVATING", "ACTIVE", "UPDATING", "DELETING"
7522
+ # resp.container_fleets[0].deployment_details.latest_deployment_id #=> String
7523
+ # resp.container_fleets[0].log_configuration.log_destination #=> String, one of "NONE", "CLOUDWATCH", "S3"
7524
+ # resp.container_fleets[0].log_configuration.s3_bucket_name #=> String
7525
+ # resp.container_fleets[0].log_configuration.log_group_arn #=> String
7526
+ # resp.container_fleets[0].location_attributes #=> Array
7527
+ # resp.container_fleets[0].location_attributes[0].location #=> String
7528
+ # resp.container_fleets[0].location_attributes[0].status #=> String, one of "PENDING", "CREATING", "CREATED", "ACTIVATING", "ACTIVE", "UPDATING", "DELETING"
7529
+ # resp.next_token #=> String
7530
+ #
7531
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/ListContainerFleets AWS API Documentation
7532
+ #
7533
+ # @overload list_container_fleets(params = {})
7534
+ # @param [Hash] params ({})
7535
+ def list_container_fleets(params = {}, options = {})
7536
+ req = build_request(:list_container_fleets, params)
7537
+ req.send_request(options)
7538
+ end
7539
+
7540
+ # Retrieves all versions of a container group definition. Use the
7541
+ # pagination parameters to retrieve results in a set of sequential
7542
+ # pages.
7543
+ #
7544
+ # **Request options:**
7545
+ #
7546
+ # * Get all versions of a specified container group definition. Specify
7547
+ # the container group definition name or ARN value. (If the ARN value
7548
+ # has a version number, it's ignored.)
7549
+ #
7550
+ # ^
7551
+ #
7552
+ # **Results:**
7553
+ #
7554
+ # If successful, this operation returns the complete properties of a set
7555
+ # of container group definition versions that match the request.
7556
+ #
7557
+ # <note markdown="1"> This operation returns the list of container group definitions in
7558
+ # descending version order (latest first).
7559
+ #
7560
+ # </note>
7561
+ #
7562
+ # **Learn more**
7563
+ #
7564
+ # * [Manage a container group definition][1]
7565
+ #
7566
+ # ^
7567
+ #
7568
+ #
7569
+ #
7570
+ # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/containers-create-groups.html
7571
+ #
7572
+ # @option params [required, String] :name
7573
+ # The unique identifier for the container group definition to retrieve
7574
+ # properties for. You can use either the `Name` or `ARN` value.
7575
+ #
7576
+ # @option params [Integer] :limit
7577
+ # The maximum number of results to return. Use this parameter with
7578
+ # `NextToken` to get results as a set of sequential pages.
7579
+ #
7580
+ # @option params [String] :next_token
7581
+ # A token that indicates the start of the next sequential page of
7582
+ # results. Use the token that is returned with a previous call to this
7583
+ # operation. To start at the beginning of the result set, do not specify
7584
+ # a value.
7585
+ #
7586
+ # @return [Types::ListContainerGroupDefinitionVersionsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7587
+ #
7588
+ # * {Types::ListContainerGroupDefinitionVersionsOutput#container_group_definitions #container_group_definitions} => Array&lt;Types::ContainerGroupDefinition&gt;
7589
+ # * {Types::ListContainerGroupDefinitionVersionsOutput#next_token #next_token} => String
7590
+ #
7591
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7592
+ #
7593
+ # @example Request syntax with placeholder values
7594
+ #
7595
+ # resp = client.list_container_group_definition_versions({
7596
+ # name: "ContainerGroupDefinitionNameOrArn", # required
7597
+ # limit: 1,
7598
+ # next_token: "NonZeroAndMaxString",
7599
+ # })
7600
+ #
7601
+ # @example Response structure
7602
+ #
7603
+ # resp.container_group_definitions #=> Array
7604
+ # resp.container_group_definitions[0].container_group_definition_arn #=> String
7605
+ # resp.container_group_definitions[0].creation_time #=> Time
7606
+ # resp.container_group_definitions[0].operating_system #=> String, one of "AMAZON_LINUX_2023"
7607
+ # resp.container_group_definitions[0].name #=> String
7608
+ # resp.container_group_definitions[0].container_group_type #=> String, one of "GAME_SERVER", "PER_INSTANCE"
7609
+ # resp.container_group_definitions[0].total_memory_limit_mebibytes #=> Integer
7610
+ # resp.container_group_definitions[0].total_vcpu_limit #=> Float
7611
+ # resp.container_group_definitions[0].game_server_container_definition.container_name #=> String
7612
+ # resp.container_group_definitions[0].game_server_container_definition.depends_on #=> Array
7613
+ # resp.container_group_definitions[0].game_server_container_definition.depends_on[0].container_name #=> String
7614
+ # resp.container_group_definitions[0].game_server_container_definition.depends_on[0].condition #=> String, one of "START", "COMPLETE", "SUCCESS", "HEALTHY"
7615
+ # resp.container_group_definitions[0].game_server_container_definition.mount_points #=> Array
7616
+ # resp.container_group_definitions[0].game_server_container_definition.mount_points[0].instance_path #=> String
7617
+ # resp.container_group_definitions[0].game_server_container_definition.mount_points[0].container_path #=> String
7618
+ # resp.container_group_definitions[0].game_server_container_definition.mount_points[0].access_level #=> String, one of "READ_ONLY", "READ_AND_WRITE"
7619
+ # resp.container_group_definitions[0].game_server_container_definition.environment_override #=> Array
7620
+ # resp.container_group_definitions[0].game_server_container_definition.environment_override[0].name #=> String
7621
+ # resp.container_group_definitions[0].game_server_container_definition.environment_override[0].value #=> String
7622
+ # resp.container_group_definitions[0].game_server_container_definition.image_uri #=> String
7623
+ # resp.container_group_definitions[0].game_server_container_definition.port_configuration.container_port_ranges #=> Array
7624
+ # resp.container_group_definitions[0].game_server_container_definition.port_configuration.container_port_ranges[0].from_port #=> Integer
7625
+ # resp.container_group_definitions[0].game_server_container_definition.port_configuration.container_port_ranges[0].to_port #=> Integer
7626
+ # resp.container_group_definitions[0].game_server_container_definition.port_configuration.container_port_ranges[0].protocol #=> String, one of "TCP", "UDP"
7627
+ # resp.container_group_definitions[0].game_server_container_definition.resolved_image_digest #=> String
7628
+ # resp.container_group_definitions[0].game_server_container_definition.server_sdk_version #=> String
7629
+ # resp.container_group_definitions[0].support_container_definitions #=> Array
7630
+ # resp.container_group_definitions[0].support_container_definitions[0].container_name #=> String
7631
+ # resp.container_group_definitions[0].support_container_definitions[0].depends_on #=> Array
7632
+ # resp.container_group_definitions[0].support_container_definitions[0].depends_on[0].container_name #=> String
7633
+ # resp.container_group_definitions[0].support_container_definitions[0].depends_on[0].condition #=> String, one of "START", "COMPLETE", "SUCCESS", "HEALTHY"
7634
+ # resp.container_group_definitions[0].support_container_definitions[0].mount_points #=> Array
7635
+ # resp.container_group_definitions[0].support_container_definitions[0].mount_points[0].instance_path #=> String
7636
+ # resp.container_group_definitions[0].support_container_definitions[0].mount_points[0].container_path #=> String
7637
+ # resp.container_group_definitions[0].support_container_definitions[0].mount_points[0].access_level #=> String, one of "READ_ONLY", "READ_AND_WRITE"
7638
+ # resp.container_group_definitions[0].support_container_definitions[0].environment_override #=> Array
7639
+ # resp.container_group_definitions[0].support_container_definitions[0].environment_override[0].name #=> String
7640
+ # resp.container_group_definitions[0].support_container_definitions[0].environment_override[0].value #=> String
7641
+ # resp.container_group_definitions[0].support_container_definitions[0].essential #=> Boolean
7642
+ # resp.container_group_definitions[0].support_container_definitions[0].health_check.command #=> Array
7643
+ # resp.container_group_definitions[0].support_container_definitions[0].health_check.command[0] #=> String
7644
+ # resp.container_group_definitions[0].support_container_definitions[0].health_check.interval #=> Integer
7645
+ # resp.container_group_definitions[0].support_container_definitions[0].health_check.retries #=> Integer
7646
+ # resp.container_group_definitions[0].support_container_definitions[0].health_check.start_period #=> Integer
7647
+ # resp.container_group_definitions[0].support_container_definitions[0].health_check.timeout #=> Integer
7648
+ # resp.container_group_definitions[0].support_container_definitions[0].image_uri #=> String
7649
+ # resp.container_group_definitions[0].support_container_definitions[0].memory_hard_limit_mebibytes #=> Integer
7650
+ # resp.container_group_definitions[0].support_container_definitions[0].port_configuration.container_port_ranges #=> Array
7651
+ # resp.container_group_definitions[0].support_container_definitions[0].port_configuration.container_port_ranges[0].from_port #=> Integer
7652
+ # resp.container_group_definitions[0].support_container_definitions[0].port_configuration.container_port_ranges[0].to_port #=> Integer
7653
+ # resp.container_group_definitions[0].support_container_definitions[0].port_configuration.container_port_ranges[0].protocol #=> String, one of "TCP", "UDP"
7654
+ # resp.container_group_definitions[0].support_container_definitions[0].resolved_image_digest #=> String
7655
+ # resp.container_group_definitions[0].support_container_definitions[0].vcpu #=> Float
7656
+ # resp.container_group_definitions[0].version_number #=> Integer
7657
+ # resp.container_group_definitions[0].version_description #=> String
7658
+ # resp.container_group_definitions[0].status #=> String, one of "READY", "COPYING", "FAILED"
7659
+ # resp.container_group_definitions[0].status_reason #=> String
6815
7660
  # resp.next_token #=> String
6816
7661
  #
6817
- # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/ListCompute AWS API Documentation
7662
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/ListContainerGroupDefinitionVersions AWS API Documentation
6818
7663
  #
6819
- # @overload list_compute(params = {})
7664
+ # @overload list_container_group_definition_versions(params = {})
6820
7665
  # @param [Hash] params ({})
6821
- def list_compute(params = {}, options = {})
6822
- req = build_request(:list_compute, params)
7666
+ def list_container_group_definition_versions(params = {}, options = {})
7667
+ req = build_request(:list_container_group_definition_versions, params)
6823
7668
  req.send_request(options)
6824
7669
  end
6825
7670
 
6826
- # <b>This operation is used with the Amazon GameLift containers feature,
6827
- # which is currently in public preview. </b>
7671
+ # Retrieves container group definitions for the Amazon Web Services
7672
+ # account and Amazon Web Services Region. Use the pagination parameters
7673
+ # to retrieve results in a set of sequential pages.
7674
+ #
7675
+ # This operation returns only the latest version of each definition. To
7676
+ # retrieve all versions of a container group definition, use
7677
+ # ListContainerGroupDefinitionVersions.
7678
+ #
7679
+ # **Request options:**
7680
+ #
7681
+ # * Retrieve the most recent versions of all container group
7682
+ # definitions.
7683
+ #
7684
+ # * Retrieve the most recent versions of all container group
7685
+ # definitions, filtered by type. Specify the container group type to
7686
+ # filter on.
6828
7687
  #
6829
- # Retrieves all container group definitions for the Amazon Web Services
6830
- # account and Amazon Web Services Region that are currently in use. You
6831
- # can filter the result set by the container groups' scheduling
6832
- # strategy. Use the pagination parameters to retrieve results in a set
6833
- # of sequential pages.
7688
+ # **Results:**
7689
+ #
7690
+ # If successful, this operation returns the complete properties of a set
7691
+ # of container group definition versions that match the request.
6834
7692
  #
6835
7693
  # <note markdown="1"> This operation returns the list of container group definitions in no
6836
7694
  # particular order.
@@ -6847,15 +7705,10 @@ module Aws::GameLift
6847
7705
  #
6848
7706
  # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/containers-create-groups.html
6849
7707
  #
6850
- # @option params [String] :scheduling_strategy
6851
- # The type of container group definitions to retrieve.
6852
- #
6853
- # * `DAEMON` -- Daemon container groups run background processes and are
6854
- # deployed once per fleet instance.
6855
- #
6856
- # * `REPLICA` -- Replica container groups run your game server
6857
- # application and supporting software. Replica groups might be
6858
- # deployed multiple times per fleet instance.
7708
+ # @option params [String] :container_group_type
7709
+ # The type of container group to retrieve. Container group type
7710
+ # determines how Amazon GameLift deploys the container group on each
7711
+ # fleet instance.
6859
7712
  #
6860
7713
  # @option params [Integer] :limit
6861
7714
  # The maximum number of results to return. Use this parameter with
@@ -6877,9 +7730,9 @@ module Aws::GameLift
6877
7730
  # @example Request syntax with placeholder values
6878
7731
  #
6879
7732
  # resp = client.list_container_group_definitions({
6880
- # scheduling_strategy: "REPLICA", # accepts REPLICA, DAEMON
7733
+ # container_group_type: "GAME_SERVER", # accepts GAME_SERVER, PER_INSTANCE
6881
7734
  # limit: 1,
6882
- # next_token: "NonEmptyString",
7735
+ # next_token: "NonZeroAndMaxString",
6883
7736
  # })
6884
7737
  #
6885
7738
  # @example Response structure
@@ -6889,38 +7742,56 @@ module Aws::GameLift
6889
7742
  # resp.container_group_definitions[0].creation_time #=> Time
6890
7743
  # resp.container_group_definitions[0].operating_system #=> String, one of "AMAZON_LINUX_2023"
6891
7744
  # resp.container_group_definitions[0].name #=> String
6892
- # resp.container_group_definitions[0].scheduling_strategy #=> String, one of "REPLICA", "DAEMON"
6893
- # resp.container_group_definitions[0].total_memory_limit #=> Integer
6894
- # resp.container_group_definitions[0].total_cpu_limit #=> Integer
6895
- # resp.container_group_definitions[0].container_definitions #=> Array
6896
- # resp.container_group_definitions[0].container_definitions[0].container_name #=> String
6897
- # resp.container_group_definitions[0].container_definitions[0].image_uri #=> String
6898
- # resp.container_group_definitions[0].container_definitions[0].resolved_image_digest #=> String
6899
- # resp.container_group_definitions[0].container_definitions[0].memory_limits.soft_limit #=> Integer
6900
- # resp.container_group_definitions[0].container_definitions[0].memory_limits.hard_limit #=> Integer
6901
- # resp.container_group_definitions[0].container_definitions[0].port_configuration.container_port_ranges #=> Array
6902
- # resp.container_group_definitions[0].container_definitions[0].port_configuration.container_port_ranges[0].from_port #=> Integer
6903
- # resp.container_group_definitions[0].container_definitions[0].port_configuration.container_port_ranges[0].to_port #=> Integer
6904
- # resp.container_group_definitions[0].container_definitions[0].port_configuration.container_port_ranges[0].protocol #=> String, one of "TCP", "UDP"
6905
- # resp.container_group_definitions[0].container_definitions[0].cpu #=> Integer
6906
- # resp.container_group_definitions[0].container_definitions[0].health_check.command #=> Array
6907
- # resp.container_group_definitions[0].container_definitions[0].health_check.command[0] #=> String
6908
- # resp.container_group_definitions[0].container_definitions[0].health_check.interval #=> Integer
6909
- # resp.container_group_definitions[0].container_definitions[0].health_check.timeout #=> Integer
6910
- # resp.container_group_definitions[0].container_definitions[0].health_check.retries #=> Integer
6911
- # resp.container_group_definitions[0].container_definitions[0].health_check.start_period #=> Integer
6912
- # resp.container_group_definitions[0].container_definitions[0].command #=> Array
6913
- # resp.container_group_definitions[0].container_definitions[0].command[0] #=> String
6914
- # resp.container_group_definitions[0].container_definitions[0].essential #=> Boolean
6915
- # resp.container_group_definitions[0].container_definitions[0].entry_point #=> Array
6916
- # resp.container_group_definitions[0].container_definitions[0].entry_point[0] #=> String
6917
- # resp.container_group_definitions[0].container_definitions[0].working_directory #=> String
6918
- # resp.container_group_definitions[0].container_definitions[0].environment #=> Array
6919
- # resp.container_group_definitions[0].container_definitions[0].environment[0].name #=> String
6920
- # resp.container_group_definitions[0].container_definitions[0].environment[0].value #=> String
6921
- # resp.container_group_definitions[0].container_definitions[0].depends_on #=> Array
6922
- # resp.container_group_definitions[0].container_definitions[0].depends_on[0].container_name #=> String
6923
- # resp.container_group_definitions[0].container_definitions[0].depends_on[0].condition #=> String, one of "START", "COMPLETE", "SUCCESS", "HEALTHY"
7745
+ # resp.container_group_definitions[0].container_group_type #=> String, one of "GAME_SERVER", "PER_INSTANCE"
7746
+ # resp.container_group_definitions[0].total_memory_limit_mebibytes #=> Integer
7747
+ # resp.container_group_definitions[0].total_vcpu_limit #=> Float
7748
+ # resp.container_group_definitions[0].game_server_container_definition.container_name #=> String
7749
+ # resp.container_group_definitions[0].game_server_container_definition.depends_on #=> Array
7750
+ # resp.container_group_definitions[0].game_server_container_definition.depends_on[0].container_name #=> String
7751
+ # resp.container_group_definitions[0].game_server_container_definition.depends_on[0].condition #=> String, one of "START", "COMPLETE", "SUCCESS", "HEALTHY"
7752
+ # resp.container_group_definitions[0].game_server_container_definition.mount_points #=> Array
7753
+ # resp.container_group_definitions[0].game_server_container_definition.mount_points[0].instance_path #=> String
7754
+ # resp.container_group_definitions[0].game_server_container_definition.mount_points[0].container_path #=> String
7755
+ # resp.container_group_definitions[0].game_server_container_definition.mount_points[0].access_level #=> String, one of "READ_ONLY", "READ_AND_WRITE"
7756
+ # resp.container_group_definitions[0].game_server_container_definition.environment_override #=> Array
7757
+ # resp.container_group_definitions[0].game_server_container_definition.environment_override[0].name #=> String
7758
+ # resp.container_group_definitions[0].game_server_container_definition.environment_override[0].value #=> String
7759
+ # resp.container_group_definitions[0].game_server_container_definition.image_uri #=> String
7760
+ # resp.container_group_definitions[0].game_server_container_definition.port_configuration.container_port_ranges #=> Array
7761
+ # resp.container_group_definitions[0].game_server_container_definition.port_configuration.container_port_ranges[0].from_port #=> Integer
7762
+ # resp.container_group_definitions[0].game_server_container_definition.port_configuration.container_port_ranges[0].to_port #=> Integer
7763
+ # resp.container_group_definitions[0].game_server_container_definition.port_configuration.container_port_ranges[0].protocol #=> String, one of "TCP", "UDP"
7764
+ # resp.container_group_definitions[0].game_server_container_definition.resolved_image_digest #=> String
7765
+ # resp.container_group_definitions[0].game_server_container_definition.server_sdk_version #=> String
7766
+ # resp.container_group_definitions[0].support_container_definitions #=> Array
7767
+ # resp.container_group_definitions[0].support_container_definitions[0].container_name #=> String
7768
+ # resp.container_group_definitions[0].support_container_definitions[0].depends_on #=> Array
7769
+ # resp.container_group_definitions[0].support_container_definitions[0].depends_on[0].container_name #=> String
7770
+ # resp.container_group_definitions[0].support_container_definitions[0].depends_on[0].condition #=> String, one of "START", "COMPLETE", "SUCCESS", "HEALTHY"
7771
+ # resp.container_group_definitions[0].support_container_definitions[0].mount_points #=> Array
7772
+ # resp.container_group_definitions[0].support_container_definitions[0].mount_points[0].instance_path #=> String
7773
+ # resp.container_group_definitions[0].support_container_definitions[0].mount_points[0].container_path #=> String
7774
+ # resp.container_group_definitions[0].support_container_definitions[0].mount_points[0].access_level #=> String, one of "READ_ONLY", "READ_AND_WRITE"
7775
+ # resp.container_group_definitions[0].support_container_definitions[0].environment_override #=> Array
7776
+ # resp.container_group_definitions[0].support_container_definitions[0].environment_override[0].name #=> String
7777
+ # resp.container_group_definitions[0].support_container_definitions[0].environment_override[0].value #=> String
7778
+ # resp.container_group_definitions[0].support_container_definitions[0].essential #=> Boolean
7779
+ # resp.container_group_definitions[0].support_container_definitions[0].health_check.command #=> Array
7780
+ # resp.container_group_definitions[0].support_container_definitions[0].health_check.command[0] #=> String
7781
+ # resp.container_group_definitions[0].support_container_definitions[0].health_check.interval #=> Integer
7782
+ # resp.container_group_definitions[0].support_container_definitions[0].health_check.retries #=> Integer
7783
+ # resp.container_group_definitions[0].support_container_definitions[0].health_check.start_period #=> Integer
7784
+ # resp.container_group_definitions[0].support_container_definitions[0].health_check.timeout #=> Integer
7785
+ # resp.container_group_definitions[0].support_container_definitions[0].image_uri #=> String
7786
+ # resp.container_group_definitions[0].support_container_definitions[0].memory_hard_limit_mebibytes #=> Integer
7787
+ # resp.container_group_definitions[0].support_container_definitions[0].port_configuration.container_port_ranges #=> Array
7788
+ # resp.container_group_definitions[0].support_container_definitions[0].port_configuration.container_port_ranges[0].from_port #=> Integer
7789
+ # resp.container_group_definitions[0].support_container_definitions[0].port_configuration.container_port_ranges[0].to_port #=> Integer
7790
+ # resp.container_group_definitions[0].support_container_definitions[0].port_configuration.container_port_ranges[0].protocol #=> String, one of "TCP", "UDP"
7791
+ # resp.container_group_definitions[0].support_container_definitions[0].resolved_image_digest #=> String
7792
+ # resp.container_group_definitions[0].support_container_definitions[0].vcpu #=> Float
7793
+ # resp.container_group_definitions[0].version_number #=> Integer
7794
+ # resp.container_group_definitions[0].version_description #=> String
6924
7795
  # resp.container_group_definitions[0].status #=> String, one of "READY", "COPYING", "FAILED"
6925
7796
  # resp.container_group_definitions[0].status_reason #=> String
6926
7797
  # resp.next_token #=> String
@@ -6934,9 +7805,87 @@ module Aws::GameLift
6934
7805
  req.send_request(options)
6935
7806
  end
6936
7807
 
6937
- # **This operation has been expanded to use with the Amazon GameLift
6938
- # containers feature, which is currently in public preview.**
7808
+ # Retrieves a collection of container fleet deployments in an Amazon Web
7809
+ # Services Region.
7810
+ #
7811
+ # **Request options**
7812
+ #
7813
+ # * Get a list of all deployments. Call this operation without
7814
+ # specifying a fleet ID.
7815
+ #
7816
+ # * Get a list of all deployments for a fleet. Specify the container
7817
+ # fleet ID or ARN value.
7818
+ #
7819
+ # * To get a list of all Realtime Servers fleets with a specific
7820
+ # configuration script, provide the script ID.
7821
+ #
7822
+ # Use the pagination parameters to retrieve results as a set of
7823
+ # sequential pages.
7824
+ #
7825
+ # **Results**
7826
+ #
7827
+ # If successful, this operation returns a list of deployments that match
7828
+ # the request parameters. A NextToken value is also returned if there
7829
+ # are more result pages to retrieve.
7830
+ #
7831
+ # <note markdown="1"> Fleet IDs are returned in no particular order.
7832
+ #
7833
+ # </note>
7834
+ #
7835
+ # @option params [String] :fleet_id
7836
+ # A unique identifier for the container fleet. You can use either the
7837
+ # fleet ID or ARN value.
7838
+ #
7839
+ # @option params [Integer] :limit
7840
+ # The maximum number of results to return. Use this parameter with
7841
+ # `NextToken` to get results as a set of sequential pages.
7842
+ #
7843
+ # @option params [String] :next_token
7844
+ # A token that indicates the start of the next sequential page of
7845
+ # results. Use the token that is returned with a previous call to this
7846
+ # operation. To start at the beginning of the result set, do not specify
7847
+ # a value.
7848
+ #
7849
+ # @return [Types::ListFleetDeploymentsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
7850
+ #
7851
+ # * {Types::ListFleetDeploymentsOutput#fleet_deployments #fleet_deployments} => Array&lt;Types::FleetDeployment&gt;
7852
+ # * {Types::ListFleetDeploymentsOutput#next_token #next_token} => String
7853
+ #
7854
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
7855
+ #
7856
+ # @example Request syntax with placeholder values
7857
+ #
7858
+ # resp = client.list_fleet_deployments({
7859
+ # fleet_id: "FleetIdOrArn",
7860
+ # limit: 1,
7861
+ # next_token: "NonZeroAndMaxString",
7862
+ # })
7863
+ #
7864
+ # @example Response structure
7865
+ #
7866
+ # resp.fleet_deployments #=> Array
7867
+ # resp.fleet_deployments[0].deployment_id #=> String
7868
+ # resp.fleet_deployments[0].fleet_id #=> String
7869
+ # resp.fleet_deployments[0].game_server_binary_arn #=> String
7870
+ # resp.fleet_deployments[0].rollback_game_server_binary_arn #=> String
7871
+ # resp.fleet_deployments[0].per_instance_binary_arn #=> String
7872
+ # resp.fleet_deployments[0].rollback_per_instance_binary_arn #=> String
7873
+ # resp.fleet_deployments[0].deployment_status #=> String, one of "IN_PROGRESS", "IMPAIRED", "COMPLETE", "ROLLBACK_IN_PROGRESS", "ROLLBACK_COMPLETE", "CANCELLED", "PENDING"
7874
+ # resp.fleet_deployments[0].deployment_configuration.protection_strategy #=> String, one of "WITH_PROTECTION", "IGNORE_PROTECTION"
7875
+ # resp.fleet_deployments[0].deployment_configuration.minimum_healthy_percentage #=> Integer
7876
+ # resp.fleet_deployments[0].deployment_configuration.impairment_strategy #=> String, one of "MAINTAIN", "ROLLBACK"
7877
+ # resp.fleet_deployments[0].creation_time #=> Time
7878
+ # resp.next_token #=> String
7879
+ #
7880
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/ListFleetDeployments AWS API Documentation
6939
7881
  #
7882
+ # @overload list_fleet_deployments(params = {})
7883
+ # @param [Hash] params ({})
7884
+ def list_fleet_deployments(params = {}, options = {})
7885
+ req = build_request(:list_fleet_deployments, params)
7886
+ req.send_request(options)
7887
+ end
7888
+
6940
7889
  # Retrieves a collection of fleet resources in an Amazon Web Services
6941
7890
  # Region. You can filter the result set to find only those fleets that
6942
7891
  # are deployed with a specific build or script. For fleets that have
@@ -6954,9 +7903,6 @@ module Aws::GameLift
6954
7903
  # * To get a list of all Realtime Servers fleets with a specific
6955
7904
  # configuration script, provide the script ID.
6956
7905
  #
6957
- # * To get a list of all fleets with a specific container group
6958
- # definition, provide the `ContainerGroupDefinition` ID.
6959
- #
6960
7906
  # Use the pagination parameters to retrieve results as a set of
6961
7907
  # sequential pages.
6962
7908
  #
@@ -6978,11 +7924,6 @@ module Aws::GameLift
6978
7924
  # this parameter to return only fleets using a specified script. Use
6979
7925
  # either the script ID or ARN value.
6980
7926
  #
6981
- # @option params [String] :container_group_definition_name
6982
- # The container group definition name to request fleets for. Use this
6983
- # parameter to return only fleets that are deployed with the specified
6984
- # container group definition.
6985
- #
6986
7927
  # @option params [Integer] :limit
6987
7928
  # The maximum number of results to return. Use this parameter with
6988
7929
  # `NextToken` to get results as a set of sequential pages.
@@ -7005,7 +7946,6 @@ module Aws::GameLift
7005
7946
  # resp = client.list_fleets({
7006
7947
  # build_id: "BuildIdOrArn",
7007
7948
  # script_id: "ScriptIdOrArn",
7008
- # container_group_definition_name: "ContainerGroupDefinitionNameOrArn",
7009
7949
  # limit: 1,
7010
7950
  # next_token: "NonZeroAndMaxString",
7011
7951
  # })
@@ -7224,7 +8164,7 @@ module Aws::GameLift
7224
8164
  # @option params [String] :next_token
7225
8165
  # A token that indicates the start of the next sequential page of
7226
8166
  # results. Use the token that is returned with a previous call to this
7227
- # operation. To start at the beginning of the result set, don't specify
8167
+ # operation. To start at the beginning of the result set, do not specify
7228
8168
  # a value.
7229
8169
  #
7230
8170
  # @return [Types::ListScriptsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -7536,16 +8476,12 @@ module Aws::GameLift
7536
8476
  req.send_request(options)
7537
8477
  end
7538
8478
 
7539
- # **This operation has been expanded to use with the Amazon GameLift
7540
- # containers feature, which is currently in public preview.**
8479
+ # Registers a compute resource in an Amazon GameLift Anywhere fleet.
7541
8480
  #
7542
- # Registers a compute resource in an Amazon GameLift fleet. Register
7543
- # computes with an Amazon GameLift Anywhere fleet or a container fleet.
7544
- #
7545
- # For an Anywhere fleet or a container fleet that's running the Amazon
7546
- # GameLift Agent, the Agent handles all compute registry tasks for you.
7547
- # For an Anywhere fleet that doesn't use the Agent, call this operation
7548
- # to register fleet computes.
8481
+ # For an Anywhere fleet that's running the Amazon GameLift Agent, the
8482
+ # Agent handles all compute registry tasks for you. For an Anywhere
8483
+ # fleet that doesn't use the Agent, call this operation to register
8484
+ # fleet computes.
7549
8485
  #
7550
8486
  # To register a compute, give the compute a name (must be unique within
7551
8487
  # the fleet) and specify the compute resource's DNS name or IP address.
@@ -7625,7 +8561,7 @@ module Aws::GameLift
7625
8561
  # resp.compute.compute_arn #=> String
7626
8562
  # resp.compute.ip_address #=> String
7627
8563
  # resp.compute.dns_name #=> String
7628
- # resp.compute.compute_status #=> String, one of "PENDING", "ACTIVE", "TERMINATING"
8564
+ # resp.compute.compute_status #=> String, one of "PENDING", "ACTIVE", "TERMINATING", "IMPAIRED"
7629
8565
  # resp.compute.location #=> String
7630
8566
  # resp.compute.creation_time #=> Time
7631
8567
  # resp.compute.operating_system #=> String, one of "WINDOWS_2012", "AMAZON_LINUX", "AMAZON_LINUX_2", "WINDOWS_2016", "AMAZON_LINUX_2023"
@@ -7633,10 +8569,10 @@ module Aws::GameLift
7633
8569
  # resp.compute.game_lift_service_sdk_endpoint #=> String
7634
8570
  # resp.compute.game_lift_agent_endpoint #=> String
7635
8571
  # resp.compute.instance_id #=> String
7636
- # resp.compute.container_attributes.container_port_mappings #=> Array
7637
- # resp.compute.container_attributes.container_port_mappings[0].container_port #=> Integer
7638
- # resp.compute.container_attributes.container_port_mappings[0].connection_port #=> Integer
7639
- # resp.compute.container_attributes.container_port_mappings[0].protocol #=> String, one of "TCP", "UDP"
8572
+ # resp.compute.container_attributes #=> Array
8573
+ # resp.compute.container_attributes[0].container_name #=> String
8574
+ # resp.compute.container_attributes[0].container_runtime_id #=> String
8575
+ # resp.compute.game_server_container_group_definition_arn #=> String
7640
8576
  #
7641
8577
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/RegisterCompute AWS API Documentation
7642
8578
  #
@@ -7950,8 +8886,8 @@ module Aws::GameLift
7950
8886
  # names do not need to be unique to a game session.
7951
8887
  #
7952
8888
  # * **gameSessionProperties** -- A set of key-value pairs that can store
7953
- # custom data in a game session. For example: `\{"Key": "difficulty",
7954
- # "Value": "novice"\}`. The filter expression must specify the
8889
+ # custom data in a game session. For example: `{"Key": "difficulty",
8890
+ # "Value": "novice"}`. The filter expression must specify the
7955
8891
  # GameProperty -- a `Key` and a string `Value` to search for the game
7956
8892
  # sessions.
7957
8893
  #
@@ -8247,7 +9183,7 @@ module Aws::GameLift
8247
9183
  # [DescribeGameSessionPlacement][1] and check the request's status. If
8248
9184
  # the status is `FULFILLED`, a new game session has been created and a
8249
9185
  # game session ARN and Region are referenced. If the placement request
8250
- # times out, you can resubmit the request or retry it with a different
9186
+ # times out, submit a new request to the same queue or a different
8251
9187
  # queue.
8252
9188
  #
8253
9189
  #
@@ -8265,7 +9201,7 @@ module Aws::GameLift
8265
9201
  #
8266
9202
  # @option params [Array<Types::GameProperty>] :game_properties
8267
9203
  # A set of key-value pairs that can store custom data in a game session.
8268
- # For example: `\{"Key": "difficulty", "Value": "novice"\}`.
9204
+ # For example: `{"Key": "difficulty", "Value": "novice"}`.
8269
9205
  #
8270
9206
  # @option params [required, Integer] :maximum_player_session_count
8271
9207
  # The maximum number of players that can be connected simultaneously to
@@ -8277,19 +9213,18 @@ module Aws::GameLift
8277
9213
  #
8278
9214
  # @option params [Array<Types::PlayerLatency>] :player_latencies
8279
9215
  # A set of values, expressed in milliseconds, that indicates the amount
8280
- # of latency that a player experiences when connected to Amazon Web
8281
- # Services Regions. This information is used to try to place the new
8282
- # game session where it can offer the best possible gameplay experience
8283
- # for the players.
9216
+ # of latency that a player experiences when connected to @aws; Regions.
9217
+ # This information is used to try to place the new game session where it
9218
+ # can offer the best possible gameplay experience for the players.
8284
9219
  #
8285
9220
  # @option params [Array<Types::DesiredPlayerSession>] :desired_player_sessions
8286
9221
  # Set of information on each player to create a player session for.
8287
9222
  #
8288
9223
  # @option params [String] :game_session_data
8289
9224
  # A set of custom game session properties, formatted as a single string
8290
- # value. This data is passed to a game server process in the
8291
- # `GameSession` object with a request to start a new game session (see
8292
- # [Start a Game Session][1]).
9225
+ # value. This data is passed to a game server process with a request to
9226
+ # start a new game session. For more information, see [Start a game
9227
+ # session][1].
8293
9228
  #
8294
9229
  #
8295
9230
  #
@@ -9095,12 +10030,12 @@ module Aws::GameLift
9095
10030
  # build ID or ARN value.
9096
10031
  #
9097
10032
  # @option params [String] :name
9098
- # A descriptive label associated with a build. Build names don't need
9099
- # to be unique.
10033
+ # A descriptive label that is associated with a build. Build names do
10034
+ # not need to be unique.
9100
10035
  #
9101
10036
  # @option params [String] :version
9102
- # Version information associated with a build or script. Version strings
9103
- # don't need to be unique.
10037
+ # Version information that is associated with a build or script. Version
10038
+ # strings do not need to be unique.
9104
10039
  #
9105
10040
  # @return [Types::UpdateBuildOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
9106
10041
  #
@@ -9135,6 +10070,486 @@ module Aws::GameLift
9135
10070
  req.send_request(options)
9136
10071
  end
9137
10072
 
10073
+ # Updates the properties of a managed container fleet. Depending on the
10074
+ # properties being updated, this operation might initiate a fleet
10075
+ # deployment. You can track deployments for a fleet using
10076
+ # DescribeFleetDeployment.
10077
+ #
10078
+ # **Request options**
10079
+ #
10080
+ # As with CreateContainerFleet, many fleet properties use common
10081
+ # defaults or are calculated based on the fleet's container group
10082
+ # definitions.
10083
+ #
10084
+ # * Update fleet properties that result in a fleet deployment. Include
10085
+ # only those properties that you want to change. Specify deployment
10086
+ # configuration settings.
10087
+ #
10088
+ # * Update fleet properties that don't result in a fleet deployment.
10089
+ # Include only those properties that you want to change.
10090
+ #
10091
+ # Changes to the following properties initiate a fleet deployment:
10092
+ #
10093
+ # * `GameServerContainerGroupDefinition`
10094
+ #
10095
+ # * `PerInstanceContainerGroupDefinition`
10096
+ #
10097
+ # * `GameServerContainerGroupsPerInstance`
10098
+ #
10099
+ # * `InstanceInboundPermissions`
10100
+ #
10101
+ # * `InstanceConnectionPortRange`
10102
+ #
10103
+ # * `LogConfiguration`
10104
+ #
10105
+ # **Results**
10106
+ #
10107
+ # If successful, this operation updates the container fleet resource,
10108
+ # and might initiate a new deployment of fleet resources using the
10109
+ # deployment configuration provided. A deployment replaces existing
10110
+ # fleet instances with new instances that are deployed with the updated
10111
+ # fleet properties. The fleet is placed in `UPDATING` status until the
10112
+ # deployment is complete, then return to `ACTIVE`.
10113
+ #
10114
+ # You can have only one update deployment active at a time for a fleet.
10115
+ # If a second update request initiates a deployment while another
10116
+ # deployment is in progress, the first deployment is cancelled.
10117
+ #
10118
+ # @option params [required, String] :fleet_id
10119
+ # A unique identifier for the container fleet to update. You can use
10120
+ # either the fleet ID or ARN value.
10121
+ #
10122
+ # @option params [String] :game_server_container_group_definition_name
10123
+ # The name or ARN value of a new game server container group definition
10124
+ # to deploy on the fleet. If you're updating the fleet to a specific
10125
+ # version of a container group definition, use the ARN value and include
10126
+ # the version number. If you're updating the fleet to the latest
10127
+ # version of a container group definition, you can use the name value.
10128
+ # You can't remove a fleet's game server container group definition,
10129
+ # you can only update or replace it with another definition.
10130
+ #
10131
+ # Update a container group definition by calling
10132
+ # UpdateContainerGroupDefinition. This operation creates a
10133
+ # ContainerGroupDefinition resource with an incremented version.
10134
+ #
10135
+ # @option params [String] :per_instance_container_group_definition_name
10136
+ # The name or ARN value of a new per-instance container group definition
10137
+ # to deploy on the fleet. If you're updating the fleet to a specific
10138
+ # version of a container group definition, use the ARN value and include
10139
+ # the version number. If you're updating the fleet to the latest
10140
+ # version of a container group definition, you can use the name value.
10141
+ #
10142
+ # Update a container group definition by calling
10143
+ # UpdateContainerGroupDefinition. This operation creates a
10144
+ # ContainerGroupDefinition resource with an incremented version.
10145
+ #
10146
+ # To remove a fleet's per-instance container group definition, leave
10147
+ # this parameter empty and use the parameter `RemoveAttributes`.
10148
+ #
10149
+ # @option params [Integer] :game_server_container_groups_per_instance
10150
+ # The number of times to replicate the game server container group on
10151
+ # each fleet instance. By default, Amazon GameLift calculates the
10152
+ # maximum number of game server container groups that can fit on each
10153
+ # instance. You can remove this property value to use the calculated
10154
+ # value, or set it manually. If you set this number manually, Amazon
10155
+ # GameLift uses your value as long as it's less than the calculated
10156
+ # maximum.
10157
+ #
10158
+ # @option params [Types::ConnectionPortRange] :instance_connection_port_range
10159
+ # A revised set of port numbers to open on each fleet instance. By
10160
+ # default, Amazon GameLift calculates an optimal port range based on
10161
+ # your fleet configuration. If you previously set this parameter
10162
+ # manually, you can't reset this to use the calculated settings.
10163
+ #
10164
+ # @option params [Array<Types::IpPermission>] :instance_inbound_permission_authorizations
10165
+ # A set of ports to add to the container fleet's inbound permissions.
10166
+ #
10167
+ # @option params [Array<Types::IpPermission>] :instance_inbound_permission_revocations
10168
+ # A set of ports to remove from the container fleet's inbound
10169
+ # permissions.
10170
+ #
10171
+ # @option params [Types::DeploymentConfiguration] :deployment_configuration
10172
+ # Instructions for how to deploy updates to a container fleet, if the
10173
+ # fleet update initiates a deployment. The deployment configuration lets
10174
+ # you determine how to replace fleet instances and what actions to take
10175
+ # if the deployment fails.
10176
+ #
10177
+ # @option params [String] :description
10178
+ # A meaningful description of the container fleet.
10179
+ #
10180
+ # @option params [Array<String>] :metric_groups
10181
+ # The name of an Amazon Web Services CloudWatch metric group to add this
10182
+ # fleet to.
10183
+ #
10184
+ # @option params [String] :new_game_session_protection_policy
10185
+ # The game session protection policy to apply to all new game sessions
10186
+ # that are started in this fleet. Game sessions that already exist are
10187
+ # not affected.
10188
+ #
10189
+ # @option params [Types::GameSessionCreationLimitPolicy] :game_session_creation_limit_policy
10190
+ # A policy that limits the number of game sessions that each individual
10191
+ # player can create on instances in this fleet. The limit applies for a
10192
+ # specified span of time.
10193
+ #
10194
+ # @option params [Types::LogConfiguration] :log_configuration
10195
+ # The method for collecting container logs for the fleet.
10196
+ #
10197
+ # @option params [Array<String>] :remove_attributes
10198
+ # If set, this update removes a fleet's per-instance container group
10199
+ # definition. You can't remove a fleet's game server container group
10200
+ # definition.
10201
+ #
10202
+ # @return [Types::UpdateContainerFleetOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10203
+ #
10204
+ # * {Types::UpdateContainerFleetOutput#container_fleet #container_fleet} => Types::ContainerFleet
10205
+ #
10206
+ # @example Request syntax with placeholder values
10207
+ #
10208
+ # resp = client.update_container_fleet({
10209
+ # fleet_id: "FleetIdOrArn", # required
10210
+ # game_server_container_group_definition_name: "ContainerGroupDefinitionNameOrArn",
10211
+ # per_instance_container_group_definition_name: "ContainerGroupDefinitionNameOrArn",
10212
+ # game_server_container_groups_per_instance: 1,
10213
+ # instance_connection_port_range: {
10214
+ # from_port: 1, # required
10215
+ # to_port: 1, # required
10216
+ # },
10217
+ # instance_inbound_permission_authorizations: [
10218
+ # {
10219
+ # from_port: 1, # required
10220
+ # to_port: 1, # required
10221
+ # ip_range: "IpRange", # required
10222
+ # protocol: "TCP", # required, accepts TCP, UDP
10223
+ # },
10224
+ # ],
10225
+ # instance_inbound_permission_revocations: [
10226
+ # {
10227
+ # from_port: 1, # required
10228
+ # to_port: 1, # required
10229
+ # ip_range: "IpRange", # required
10230
+ # protocol: "TCP", # required, accepts TCP, UDP
10231
+ # },
10232
+ # ],
10233
+ # deployment_configuration: {
10234
+ # protection_strategy: "WITH_PROTECTION", # accepts WITH_PROTECTION, IGNORE_PROTECTION
10235
+ # minimum_healthy_percentage: 1,
10236
+ # impairment_strategy: "MAINTAIN", # accepts MAINTAIN, ROLLBACK
10237
+ # },
10238
+ # description: "NonZeroAndMaxString",
10239
+ # metric_groups: ["MetricGroup"],
10240
+ # new_game_session_protection_policy: "NoProtection", # accepts NoProtection, FullProtection
10241
+ # game_session_creation_limit_policy: {
10242
+ # new_game_sessions_per_creator: 1,
10243
+ # policy_period_in_minutes: 1,
10244
+ # },
10245
+ # log_configuration: {
10246
+ # log_destination: "NONE", # accepts NONE, CLOUDWATCH, S3
10247
+ # s3_bucket_name: "NonEmptyString",
10248
+ # log_group_arn: "LogGroupArnStringModel",
10249
+ # },
10250
+ # remove_attributes: ["PER_INSTANCE_CONTAINER_GROUP_DEFINITION"], # accepts PER_INSTANCE_CONTAINER_GROUP_DEFINITION
10251
+ # })
10252
+ #
10253
+ # @example Response structure
10254
+ #
10255
+ # resp.container_fleet.fleet_id #=> String
10256
+ # resp.container_fleet.fleet_arn #=> String
10257
+ # resp.container_fleet.fleet_role_arn #=> String
10258
+ # resp.container_fleet.game_server_container_group_definition_name #=> String
10259
+ # resp.container_fleet.game_server_container_group_definition_arn #=> String
10260
+ # resp.container_fleet.per_instance_container_group_definition_name #=> String
10261
+ # resp.container_fleet.per_instance_container_group_definition_arn #=> String
10262
+ # resp.container_fleet.instance_connection_port_range.from_port #=> Integer
10263
+ # resp.container_fleet.instance_connection_port_range.to_port #=> Integer
10264
+ # resp.container_fleet.instance_inbound_permissions #=> Array
10265
+ # resp.container_fleet.instance_inbound_permissions[0].from_port #=> Integer
10266
+ # resp.container_fleet.instance_inbound_permissions[0].to_port #=> Integer
10267
+ # resp.container_fleet.instance_inbound_permissions[0].ip_range #=> String
10268
+ # resp.container_fleet.instance_inbound_permissions[0].protocol #=> String, one of "TCP", "UDP"
10269
+ # resp.container_fleet.game_server_container_groups_per_instance #=> Integer
10270
+ # resp.container_fleet.maximum_game_server_container_groups_per_instance #=> Integer
10271
+ # resp.container_fleet.instance_type #=> String
10272
+ # resp.container_fleet.billing_type #=> String, one of "ON_DEMAND", "SPOT"
10273
+ # resp.container_fleet.description #=> String
10274
+ # resp.container_fleet.creation_time #=> Time
10275
+ # resp.container_fleet.metric_groups #=> Array
10276
+ # resp.container_fleet.metric_groups[0] #=> String
10277
+ # resp.container_fleet.new_game_session_protection_policy #=> String, one of "NoProtection", "FullProtection"
10278
+ # resp.container_fleet.game_session_creation_limit_policy.new_game_sessions_per_creator #=> Integer
10279
+ # resp.container_fleet.game_session_creation_limit_policy.policy_period_in_minutes #=> Integer
10280
+ # resp.container_fleet.status #=> String, one of "PENDING", "CREATING", "CREATED", "ACTIVATING", "ACTIVE", "UPDATING", "DELETING"
10281
+ # resp.container_fleet.deployment_details.latest_deployment_id #=> String
10282
+ # resp.container_fleet.log_configuration.log_destination #=> String, one of "NONE", "CLOUDWATCH", "S3"
10283
+ # resp.container_fleet.log_configuration.s3_bucket_name #=> String
10284
+ # resp.container_fleet.log_configuration.log_group_arn #=> String
10285
+ # resp.container_fleet.location_attributes #=> Array
10286
+ # resp.container_fleet.location_attributes[0].location #=> String
10287
+ # resp.container_fleet.location_attributes[0].status #=> String, one of "PENDING", "CREATING", "CREATED", "ACTIVATING", "ACTIVE", "UPDATING", "DELETING"
10288
+ #
10289
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/UpdateContainerFleet AWS API Documentation
10290
+ #
10291
+ # @overload update_container_fleet(params = {})
10292
+ # @param [Hash] params ({})
10293
+ def update_container_fleet(params = {}, options = {})
10294
+ req = build_request(:update_container_fleet, params)
10295
+ req.send_request(options)
10296
+ end
10297
+
10298
+ # Updates properties in an existing container group definition. This
10299
+ # operation doesn't replace the definition. Instead, it creates a new
10300
+ # version of the definition and saves it separately. You can access all
10301
+ # versions that you choose to retain.
10302
+ #
10303
+ # The only property you can't update is the container group type.
10304
+ #
10305
+ # **Request options:**
10306
+ #
10307
+ # * Update based on the latest version of the container group
10308
+ # definition. Specify the container group definition name only, or use
10309
+ # an ARN value without a version number. Provide updated values for
10310
+ # the properties that you want to change only. All other values remain
10311
+ # the same as the latest version.
10312
+ #
10313
+ # * Update based on a specific version of the container group
10314
+ # definition. Specify the container group definition name and a source
10315
+ # version number, or use an ARN value with a version number. Provide
10316
+ # updated values for the properties that you want to change only. All
10317
+ # other values remain the same as the source version.
10318
+ #
10319
+ # * Change a game server container definition. Provide the updated
10320
+ # container definition.
10321
+ #
10322
+ # * Add or change a support container definition. Provide a complete set
10323
+ # of container definitions, including the updated definition.
10324
+ #
10325
+ # * Remove a support container definition. Provide a complete set of
10326
+ # container definitions, excluding the definition to remove. If the
10327
+ # container group has only one support container definition, provide
10328
+ # an empty set.
10329
+ #
10330
+ # **Results:**
10331
+ #
10332
+ # If successful, this operation returns the complete properties of the
10333
+ # new container group definition version.
10334
+ #
10335
+ # If the container group definition version is used in an active fleets,
10336
+ # the update automatically initiates a new fleet deployment of the new
10337
+ # version. You can track a fleet's deployments using
10338
+ # ListFleetDeployments.
10339
+ #
10340
+ # @option params [required, String] :name
10341
+ # A descriptive identifier for the container group definition. The name
10342
+ # value must be unique in an Amazon Web Services Region.
10343
+ #
10344
+ # @option params [Types::GameServerContainerDefinitionInput] :game_server_container_definition
10345
+ # An updated definition for the game server container in this group.
10346
+ # Define a game server container only when the container group type is
10347
+ # `GAME_SERVER`. You can pass in your container definitions as a JSON
10348
+ # file.
10349
+ #
10350
+ # @option params [Array<Types::SupportContainerDefinitionInput>] :support_container_definitions
10351
+ # One or more definitions for support containers in this group. You can
10352
+ # define a support container in any type of container group. You can
10353
+ # pass in your container definitions as a JSON file.
10354
+ #
10355
+ # @option params [Integer] :total_memory_limit_mebibytes
10356
+ # The maximum amount of memory (in MiB) to allocate to the container
10357
+ # group. All containers in the group share this memory. If you specify
10358
+ # memory limits for an individual container, the total value must be
10359
+ # greater than any individual container's memory limit.
10360
+ #
10361
+ # @option params [Float] :total_vcpu_limit
10362
+ # The maximum amount of vCPU units to allocate to the container group (1
10363
+ # vCPU is equal to 1024 CPU units). All containers in the group share
10364
+ # this memory. If you specify vCPU limits for individual containers, the
10365
+ # total value must be equal to or greater than the sum of the CPU limits
10366
+ # for all containers in the group.
10367
+ #
10368
+ # @option params [String] :version_description
10369
+ # A description for this update to the container group definition.
10370
+ #
10371
+ # @option params [Integer] :source_version_number
10372
+ # The container group definition version to update. The new version
10373
+ # starts with values from the source version, and then updates values
10374
+ # included in this request.
10375
+ #
10376
+ # @option params [String] :operating_system
10377
+ # The platform that all containers in the group use. Containers in a
10378
+ # group must run on the same operating system.
10379
+ #
10380
+ # <note markdown="1"> Amazon Linux 2 (AL2) will reach end of support on 6/30/2025. See more
10381
+ # details in the [Amazon Linux 2 FAQs][1]. For game servers that are
10382
+ # hosted on AL2 and use Amazon GameLift server SDK 4.x, first update the
10383
+ # game server build to server SDK 5.x, and then deploy to AL2023
10384
+ # instances. See [ Migrate to Amazon GameLift server SDK version 5.][2]
10385
+ #
10386
+ # </note>
10387
+ #
10388
+ #
10389
+ #
10390
+ # [1]: https://aws.amazon.com/amazon-linux-2/faqs/
10391
+ # [2]: https://docs.aws.amazon.com/gamelift/latest/developerguide/reference-serversdk5-migration.html
10392
+ #
10393
+ # @return [Types::UpdateContainerGroupDefinitionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
10394
+ #
10395
+ # * {Types::UpdateContainerGroupDefinitionOutput#container_group_definition #container_group_definition} => Types::ContainerGroupDefinition
10396
+ #
10397
+ # @example Request syntax with placeholder values
10398
+ #
10399
+ # resp = client.update_container_group_definition({
10400
+ # name: "ContainerGroupDefinitionNameOrArn", # required
10401
+ # game_server_container_definition: {
10402
+ # container_name: "NonZeroAnd128MaxAsciiString", # required
10403
+ # depends_on: [
10404
+ # {
10405
+ # container_name: "NonZeroAnd128MaxAsciiString", # required
10406
+ # condition: "START", # required, accepts START, COMPLETE, SUCCESS, HEALTHY
10407
+ # },
10408
+ # ],
10409
+ # mount_points: [
10410
+ # {
10411
+ # instance_path: "InstancePathString", # required
10412
+ # container_path: "ContainerPathString",
10413
+ # access_level: "READ_ONLY", # accepts READ_ONLY, READ_AND_WRITE
10414
+ # },
10415
+ # ],
10416
+ # environment_override: [
10417
+ # {
10418
+ # name: "NonZeroAnd255MaxString", # required
10419
+ # value: "NonZeroAnd255MaxString", # required
10420
+ # },
10421
+ # ],
10422
+ # image_uri: "ImageUriString", # required
10423
+ # port_configuration: { # required
10424
+ # container_port_ranges: [ # required
10425
+ # {
10426
+ # from_port: 1, # required
10427
+ # to_port: 1, # required
10428
+ # protocol: "TCP", # required, accepts TCP, UDP
10429
+ # },
10430
+ # ],
10431
+ # },
10432
+ # server_sdk_version: "ServerSdkVersion", # required
10433
+ # },
10434
+ # support_container_definitions: [
10435
+ # {
10436
+ # container_name: "NonZeroAnd128MaxAsciiString", # required
10437
+ # depends_on: [
10438
+ # {
10439
+ # container_name: "NonZeroAnd128MaxAsciiString", # required
10440
+ # condition: "START", # required, accepts START, COMPLETE, SUCCESS, HEALTHY
10441
+ # },
10442
+ # ],
10443
+ # mount_points: [
10444
+ # {
10445
+ # instance_path: "InstancePathString", # required
10446
+ # container_path: "ContainerPathString",
10447
+ # access_level: "READ_ONLY", # accepts READ_ONLY, READ_AND_WRITE
10448
+ # },
10449
+ # ],
10450
+ # environment_override: [
10451
+ # {
10452
+ # name: "NonZeroAnd255MaxString", # required
10453
+ # value: "NonZeroAnd255MaxString", # required
10454
+ # },
10455
+ # ],
10456
+ # essential: false,
10457
+ # health_check: {
10458
+ # command: ["NonZeroAnd255MaxString"], # required
10459
+ # interval: 1,
10460
+ # retries: 1,
10461
+ # start_period: 1,
10462
+ # timeout: 1,
10463
+ # },
10464
+ # image_uri: "ImageUriString", # required
10465
+ # memory_hard_limit_mebibytes: 1,
10466
+ # port_configuration: {
10467
+ # container_port_ranges: [ # required
10468
+ # {
10469
+ # from_port: 1, # required
10470
+ # to_port: 1, # required
10471
+ # protocol: "TCP", # required, accepts TCP, UDP
10472
+ # },
10473
+ # ],
10474
+ # },
10475
+ # vcpu: 1.0,
10476
+ # },
10477
+ # ],
10478
+ # total_memory_limit_mebibytes: 1,
10479
+ # total_vcpu_limit: 1.0,
10480
+ # version_description: "NonZeroAndMaxString",
10481
+ # source_version_number: 1,
10482
+ # operating_system: "AMAZON_LINUX_2023", # accepts AMAZON_LINUX_2023
10483
+ # })
10484
+ #
10485
+ # @example Response structure
10486
+ #
10487
+ # resp.container_group_definition.container_group_definition_arn #=> String
10488
+ # resp.container_group_definition.creation_time #=> Time
10489
+ # resp.container_group_definition.operating_system #=> String, one of "AMAZON_LINUX_2023"
10490
+ # resp.container_group_definition.name #=> String
10491
+ # resp.container_group_definition.container_group_type #=> String, one of "GAME_SERVER", "PER_INSTANCE"
10492
+ # resp.container_group_definition.total_memory_limit_mebibytes #=> Integer
10493
+ # resp.container_group_definition.total_vcpu_limit #=> Float
10494
+ # resp.container_group_definition.game_server_container_definition.container_name #=> String
10495
+ # resp.container_group_definition.game_server_container_definition.depends_on #=> Array
10496
+ # resp.container_group_definition.game_server_container_definition.depends_on[0].container_name #=> String
10497
+ # resp.container_group_definition.game_server_container_definition.depends_on[0].condition #=> String, one of "START", "COMPLETE", "SUCCESS", "HEALTHY"
10498
+ # resp.container_group_definition.game_server_container_definition.mount_points #=> Array
10499
+ # resp.container_group_definition.game_server_container_definition.mount_points[0].instance_path #=> String
10500
+ # resp.container_group_definition.game_server_container_definition.mount_points[0].container_path #=> String
10501
+ # resp.container_group_definition.game_server_container_definition.mount_points[0].access_level #=> String, one of "READ_ONLY", "READ_AND_WRITE"
10502
+ # resp.container_group_definition.game_server_container_definition.environment_override #=> Array
10503
+ # resp.container_group_definition.game_server_container_definition.environment_override[0].name #=> String
10504
+ # resp.container_group_definition.game_server_container_definition.environment_override[0].value #=> String
10505
+ # resp.container_group_definition.game_server_container_definition.image_uri #=> String
10506
+ # resp.container_group_definition.game_server_container_definition.port_configuration.container_port_ranges #=> Array
10507
+ # resp.container_group_definition.game_server_container_definition.port_configuration.container_port_ranges[0].from_port #=> Integer
10508
+ # resp.container_group_definition.game_server_container_definition.port_configuration.container_port_ranges[0].to_port #=> Integer
10509
+ # resp.container_group_definition.game_server_container_definition.port_configuration.container_port_ranges[0].protocol #=> String, one of "TCP", "UDP"
10510
+ # resp.container_group_definition.game_server_container_definition.resolved_image_digest #=> String
10511
+ # resp.container_group_definition.game_server_container_definition.server_sdk_version #=> String
10512
+ # resp.container_group_definition.support_container_definitions #=> Array
10513
+ # resp.container_group_definition.support_container_definitions[0].container_name #=> String
10514
+ # resp.container_group_definition.support_container_definitions[0].depends_on #=> Array
10515
+ # resp.container_group_definition.support_container_definitions[0].depends_on[0].container_name #=> String
10516
+ # resp.container_group_definition.support_container_definitions[0].depends_on[0].condition #=> String, one of "START", "COMPLETE", "SUCCESS", "HEALTHY"
10517
+ # resp.container_group_definition.support_container_definitions[0].mount_points #=> Array
10518
+ # resp.container_group_definition.support_container_definitions[0].mount_points[0].instance_path #=> String
10519
+ # resp.container_group_definition.support_container_definitions[0].mount_points[0].container_path #=> String
10520
+ # resp.container_group_definition.support_container_definitions[0].mount_points[0].access_level #=> String, one of "READ_ONLY", "READ_AND_WRITE"
10521
+ # resp.container_group_definition.support_container_definitions[0].environment_override #=> Array
10522
+ # resp.container_group_definition.support_container_definitions[0].environment_override[0].name #=> String
10523
+ # resp.container_group_definition.support_container_definitions[0].environment_override[0].value #=> String
10524
+ # resp.container_group_definition.support_container_definitions[0].essential #=> Boolean
10525
+ # resp.container_group_definition.support_container_definitions[0].health_check.command #=> Array
10526
+ # resp.container_group_definition.support_container_definitions[0].health_check.command[0] #=> String
10527
+ # resp.container_group_definition.support_container_definitions[0].health_check.interval #=> Integer
10528
+ # resp.container_group_definition.support_container_definitions[0].health_check.retries #=> Integer
10529
+ # resp.container_group_definition.support_container_definitions[0].health_check.start_period #=> Integer
10530
+ # resp.container_group_definition.support_container_definitions[0].health_check.timeout #=> Integer
10531
+ # resp.container_group_definition.support_container_definitions[0].image_uri #=> String
10532
+ # resp.container_group_definition.support_container_definitions[0].memory_hard_limit_mebibytes #=> Integer
10533
+ # resp.container_group_definition.support_container_definitions[0].port_configuration.container_port_ranges #=> Array
10534
+ # resp.container_group_definition.support_container_definitions[0].port_configuration.container_port_ranges[0].from_port #=> Integer
10535
+ # resp.container_group_definition.support_container_definitions[0].port_configuration.container_port_ranges[0].to_port #=> Integer
10536
+ # resp.container_group_definition.support_container_definitions[0].port_configuration.container_port_ranges[0].protocol #=> String, one of "TCP", "UDP"
10537
+ # resp.container_group_definition.support_container_definitions[0].resolved_image_digest #=> String
10538
+ # resp.container_group_definition.support_container_definitions[0].vcpu #=> Float
10539
+ # resp.container_group_definition.version_number #=> Integer
10540
+ # resp.container_group_definition.version_description #=> String
10541
+ # resp.container_group_definition.status #=> String, one of "READY", "COPYING", "FAILED"
10542
+ # resp.container_group_definition.status_reason #=> String
10543
+ #
10544
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/UpdateContainerGroupDefinition AWS API Documentation
10545
+ #
10546
+ # @overload update_container_group_definition(params = {})
10547
+ # @param [Hash] params ({})
10548
+ def update_container_group_definition(params = {}, options = {})
10549
+ req = build_request(:update_container_group_definition, params)
10550
+ req.send_request(options)
10551
+ end
10552
+
9138
10553
  # Updates a fleet's mutable attributes, such as game session protection
9139
10554
  # and resource creation limits.
9140
10555
  #
@@ -9165,7 +10580,7 @@ module Aws::GameLift
9165
10580
  # The game session protection policy to apply to all new game sessions
9166
10581
  # created in this fleet. Game sessions that already exist are not
9167
10582
  # affected. You can set protection for individual game sessions using
9168
- # [UpdateGameSession][1] .
10583
+ # [UpdateGameSession][1].
9169
10584
  #
9170
10585
  # * **NoProtection** -- The game session can be terminated during a
9171
10586
  # scale-down event.
@@ -9227,11 +10642,8 @@ module Aws::GameLift
9227
10642
  req.send_request(options)
9228
10643
  end
9229
10644
 
9230
- # **This operation has been expanded to use with the Amazon GameLift
9231
- # containers feature, which is currently in public preview.**
9232
- #
9233
- # Updates capacity settings for a managed EC2 fleet or container fleet.
9234
- # For these fleets, you adjust capacity by changing the number of
10645
+ # Updates capacity settings for a managed EC2 fleet or managed container
10646
+ # fleet. For these fleets, you adjust capacity by changing the number of
9235
10647
  # instances in the fleet. Fleet capacity determines the number of game
9236
10648
  # sessions and players that the fleet can host based on its
9237
10649
  # configuration. For fleets with multiple locations, use this operation
@@ -9681,7 +11093,7 @@ module Aws::GameLift
9681
11093
  #
9682
11094
  # @option params [Array<Types::GameProperty>] :game_properties
9683
11095
  # A set of key-value pairs that can store custom data in a game session.
9684
- # For example: `\{"Key": "difficulty", "Value": "novice"\}`. You can use
11096
+ # For example: `{"Key": "difficulty", "Value": "novice"}`. You can use
9685
11097
  # this parameter to modify game properties in an active game session.
9686
11098
  # This action adds new properties and modifies existing properties.
9687
11099
  # There is no way to delete properties. For an example, see [Update the
@@ -9765,18 +11177,15 @@ module Aws::GameLift
9765
11177
  # @option params [Integer] :timeout_in_seconds
9766
11178
  # The maximum time, in seconds, that a new game session placement
9767
11179
  # request remains in the queue. When a request exceeds this time, the
9768
- # game session placement changes to a `TIMED_OUT` status. By default,
9769
- # this property is set to `600`.
11180
+ # game session placement changes to a `TIMED_OUT` status.
9770
11181
  #
9771
11182
  # @option params [Array<Types::PlayerLatencyPolicy>] :player_latency_policies
9772
- # A set of policies that act as a sliding cap on player latency. FleetIQ
9773
- # works to deliver low latency for most players in a game session. These
9774
- # policies ensure that no individual player can be placed into a game
9775
- # with unreasonably high latency. Use multiple policies to gradually
9776
- # relax latency requirements a step at a time. Multiple policies are
9777
- # applied based on their maximum allowed latency, starting with the
9778
- # lowest value. When updating policies, provide a complete collection of
9779
- # policies.
11183
+ # A set of policies that enforce a sliding cap on player latency when
11184
+ # processing game sessions placement requests. Use multiple policies to
11185
+ # gradually relax the cap over time if Amazon GameLift can't make a
11186
+ # placement. Policies are evaluated in order starting with the lowest
11187
+ # maximum latency value. When updating policies, provide a complete
11188
+ # collection of policies.
9780
11189
  #
9781
11190
  # @option params [Array<Types::GameSessionQueueDestination>] :destinations
9782
11191
  # A list of fleets and/or fleet aliases that can be used to fulfill game
@@ -9940,10 +11349,9 @@ module Aws::GameLift
9940
11349
  # @option params [Integer] :additional_player_count
9941
11350
  # The number of player slots in a match to keep open for future players.
9942
11351
  # For example, if the configuration's rule set specifies a match for a
9943
- # single 10-person team, and the additional player count is set to 2, 10
9944
- # players will be selected for the match and 2 more player slots will be
9945
- # open for future players. This parameter is not used if `FlexMatchMode`
9946
- # is set to `STANDALONE`.
11352
+ # single 12-person team, and the additional player count is set to 2,
11353
+ # only 10 players are selected for the match. This parameter is not used
11354
+ # if `FlexMatchMode` is set to `STANDALONE`.
9947
11355
  #
9948
11356
  # @option params [String] :custom_event_data
9949
11357
  # Information to add to all events related to the matchmaking
@@ -9951,7 +11359,7 @@ module Aws::GameLift
9951
11359
  #
9952
11360
  # @option params [Array<Types::GameProperty>] :game_properties
9953
11361
  # A set of key-value pairs that can store custom data in a game session.
9954
- # For example: `\{"Key": "difficulty", "Value": "novice"\}`. This
11362
+ # For example: `{"Key": "difficulty", "Value": "novice"}`. This
9955
11363
  # information is added to the new `GameSession` object that is created
9956
11364
  # for a successful match. This parameter is not used if `FlexMatchMode`
9957
11365
  # is set to `STANDALONE`.
@@ -9959,10 +11367,10 @@ module Aws::GameLift
9959
11367
  # @option params [String] :game_session_data
9960
11368
  # A set of custom game session properties, formatted as a single string
9961
11369
  # value. This data is passed to a game server process with a request to
9962
- # start a new game session (see [Start a Game Session][1]). This
9963
- # information is added to the game session that is created for a
9964
- # successful match. This parameter is not used if `FlexMatchMode` is set
9965
- # to `STANDALONE`.
11370
+ # start a new game session. For more information, see [Start a game
11371
+ # session][1]. This information is added to the game session that is
11372
+ # created for a successful match. This parameter is not used if
11373
+ # `FlexMatchMode` is set to `STANDALONE`.
9966
11374
  #
9967
11375
  #
9968
11376
  #
@@ -10059,11 +11467,9 @@ module Aws::GameLift
10059
11467
 
10060
11468
  # Updates the runtime configuration for the specified fleet. The runtime
10061
11469
  # configuration tells Amazon GameLift how to launch server processes on
10062
- # computes in the fleet. For managed EC2 fleets, it determines what
10063
- # server processes to run on each fleet instance. For container fleets,
10064
- # it describes what server processes to run in each replica container
10065
- # group. You can update a fleet's runtime configuration at any time
10066
- # after the fleet is created; it does not need to be in `ACTIVE` status.
11470
+ # computes in managed EC2 and Anywhere fleets. You can update a fleet's
11471
+ # runtime configuration at any time after the fleet is created; it does
11472
+ # not need to be in `ACTIVE` status.
10067
11473
  #
10068
11474
  # To update runtime configuration, specify the fleet ID and provide a
10069
11475
  # `RuntimeConfiguration` with an updated set of server process
@@ -10168,12 +11574,12 @@ module Aws::GameLift
10168
11574
  # either the script ID or ARN value.
10169
11575
  #
10170
11576
  # @option params [String] :name
10171
- # A descriptive label that is associated with a script. Script names
10172
- # don't need to be unique.
11577
+ # A descriptive label that is associated with a script. Script names do
11578
+ # not need to be unique.
10173
11579
  #
10174
11580
  # @option params [String] :version
10175
- # Version information associated with a build or script. Version strings
10176
- # don't need to be unique.
11581
+ # Version information that is associated with a build or script. Version
11582
+ # strings do not need to be unique.
10177
11583
  #
10178
11584
  # @option params [Types::S3Location] :storage_location
10179
11585
  # The location of the Amazon S3 bucket where a zipped file containing
@@ -10296,7 +11702,7 @@ module Aws::GameLift
10296
11702
  tracer: tracer
10297
11703
  )
10298
11704
  context[:gem_name] = 'aws-sdk-gamelift'
10299
- context[:gem_version] = '1.93.0'
11705
+ context[:gem_version] = '1.95.0'
10300
11706
  Seahorse::Client::Request.new(handlers, context)
10301
11707
  end
10302
11708