aws-sdk-gamelift 1.75.0 → 1.77.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -827,55 +827,337 @@ module Aws::GameLift
827
827
  req.send_request(options)
828
828
  end
829
829
 
830
- # Creates a fleet of Amazon Elastic Compute Cloud (Amazon EC2) instances
831
- # to host your custom game server or Realtime Servers. Use this
832
- # operation to configure the computing resources for your fleet and
833
- # provide instructions for running game servers on each instance.
834
- #
835
- # Most Amazon GameLift fleets can deploy instances to multiple
836
- # locations, including the home Region (where the fleet is created) and
837
- # an optional set of remote locations. Fleets that are created in the
838
- # following Amazon Web Services Regions support multiple locations:
839
- # us-east-1 (N. Virginia), us-west-2 (Oregon), eu-central-1 (Frankfurt),
840
- # eu-west-1 (Ireland), ap-southeast-2 (Sydney), ap-northeast-1 (Tokyo),
841
- # and ap-northeast-2 (Seoul). Fleets that are created in other Amazon
842
- # GameLift Regions can deploy instances in the fleet's home Region
843
- # only. All fleet instances use the same configuration regardless of
844
- # location; however, you can adjust capacity settings and turn
845
- # auto-scaling on/off for each location.
846
- #
847
- # To create a fleet, choose the hardware for your instances, specify a
848
- # game server build or Realtime script to deploy, and provide a runtime
849
- # configuration to direct Amazon GameLift how to start and run game
850
- # servers on each instance in the fleet. Set permissions for inbound
851
- # traffic to your game servers, and enable optional features as needed.
852
- # When creating a multi-location fleet, provide a list of additional
853
- # remote locations.
854
- #
855
- # If you need to debug your fleet, fetch logs, view performance metrics
856
- # or other actions on the fleet, create the development fleet with port
857
- # 22/3389 open. As a best practice, we recommend opening ports for
830
+ # <b>This operation is used with the Amazon GameLift containers feature,
831
+ # which is currently in public preview. </b>
832
+ #
833
+ # Creates a `ContainerGroupDefinition` resource that describes a set of
834
+ # containers for hosting your game server with Amazon GameLift managed
835
+ # EC2 hosting. An Amazon GameLift container group is similar to a
836
+ # container "task" and "pod". Each container group can have one or
837
+ # more containers.
838
+ #
839
+ # Use container group definitions when you create a container fleet.
840
+ # Container group definitions determine how Amazon GameLift deploys your
841
+ # containers to each instance in a container fleet.
842
+ #
843
+ # You can create two types of container groups, based on scheduling
844
+ # strategy:
845
+ #
846
+ # * A **replica container group** manages the containers that run your
847
+ # game server application and supporting software. Replica container
848
+ # groups might be replicated multiple times on each fleet instance,
849
+ # depending on instance resources.
850
+ #
851
+ # * A **daemon container group** manages containers that run other
852
+ # software, such as background services, logging, or test processes.
853
+ # You might use a daemon container group for processes that need to
854
+ # run only once per fleet instance, or processes that need to persist
855
+ # independently of the replica container group.
856
+ #
857
+ # To create a container group definition, specify a group name, a list
858
+ # of container definitions, and maximum total CPU and memory
859
+ # requirements for the container group. Specify an operating system and
860
+ # scheduling strategy or use the default values. When using the Amazon
861
+ # Web Services CLI tool, you can pass in your container definitions as a
862
+ # JSON file.
863
+ #
864
+ # <note markdown="1"> This operation requires Identity and Access Management (IAM)
865
+ # permissions to access container images in Amazon ECR repositories. See
866
+ # [ IAM permissions for Amazon GameLift][1] for help setting the
867
+ # appropriate permissions.
868
+ #
869
+ # </note>
870
+ #
871
+ # If successful, this operation creates a new `ContainerGroupDefinition`
872
+ # resource with an ARN value assigned. You can't change the properties
873
+ # of a container group definition. Instead, create a new one.
874
+ #
875
+ # **Learn more**
876
+ #
877
+ # * [Create a container group definition][2]
878
+ #
879
+ # * [Container fleet design guide][3]
880
+ #
881
+ # * [Create a container definition as a JSON file][4]
882
+ #
883
+ #
884
+ #
885
+ # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-iam-policy-examples.html
886
+ # [2]: https://docs.aws.amazon.com/gamelift/latest/developerguide/containers-create-groups.html
887
+ # [3]: https://docs.aws.amazon.com/gamelift/latest/developerguide/containers-design-fleet.html
888
+ # [4]: https://docs.aws.amazon.com/gamelift/latest/developerguide/containers-definitions.html#containers-definitions-create
889
+ #
890
+ # @option params [required, String] :name
891
+ # A descriptive identifier for the container group definition. The name
892
+ # value must be unique in an Amazon Web Services Region.
893
+ #
894
+ # @option params [String] :scheduling_strategy
895
+ # The method for deploying the container group across fleet instances. A
896
+ # replica container group might have multiple copies on each fleet
897
+ # instance. A daemon container group has one copy per fleet instance.
898
+ # Default value is `REPLICA`.
899
+ #
900
+ # @option params [required, Integer] :total_memory_limit
901
+ # The maximum amount of memory (in MiB) to allocate to the container
902
+ # group. All containers in the group share this memory. If you specify
903
+ # memory limits for individual containers, set this parameter based on
904
+ # the following guidelines. The value must be (1) greater than the sum
905
+ # of the soft memory limits for all containers in the group, and (2)
906
+ # greater than any individual container's hard memory limit.
907
+ #
908
+ # @option params [required, Integer] :total_cpu_limit
909
+ # The maximum amount of CPU units to allocate to the container group.
910
+ # Set this parameter to an integer value in CPU units (1 vCPU is equal
911
+ # to 1024 CPU units). All containers in the group share this memory. If
912
+ # you specify CPU limits for individual containers, set this parameter
913
+ # based on the following guidelines. The value must be equal to or
914
+ # greater than the sum of the CPU limits for all containers in the
915
+ # group.
916
+ #
917
+ # @option params [required, Array<Types::ContainerDefinitionInput>] :container_definitions
918
+ # Definitions for all containers in this group. Each container
919
+ # definition identifies the container image and specifies configuration
920
+ # settings for the container. See the [ Container fleet design guide][1]
921
+ # for container guidelines.
922
+ #
923
+ #
924
+ #
925
+ # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/containers-design-fleet.html
926
+ #
927
+ # @option params [required, String] :operating_system
928
+ # The platform that is used by containers in the container group
929
+ # definition. All containers in a group must run on the same operating
930
+ # system.
931
+ #
932
+ # @option params [Array<Types::Tag>] :tags
933
+ # A list of labels to assign to the container group definition resource.
934
+ # Tags are developer-defined key-value pairs. Tagging Amazon Web
935
+ # Services resources are useful for resource management, access
936
+ # management and cost allocation. For more information, see [ Tagging
937
+ # Amazon Web Services Resources][1] in the *Amazon Web Services General
938
+ # Reference*.
939
+ #
940
+ #
941
+ #
942
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
943
+ #
944
+ # @return [Types::CreateContainerGroupDefinitionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
945
+ #
946
+ # * {Types::CreateContainerGroupDefinitionOutput#container_group_definition #container_group_definition} => Types::ContainerGroupDefinition
947
+ #
948
+ # @example Request syntax with placeholder values
949
+ #
950
+ # resp = client.create_container_group_definition({
951
+ # name: "ContainerGroupDefinitionName", # required
952
+ # scheduling_strategy: "REPLICA", # accepts REPLICA, DAEMON
953
+ # total_memory_limit: 1, # required
954
+ # total_cpu_limit: 1, # required
955
+ # container_definitions: [ # required
956
+ # {
957
+ # container_name: "NonZeroAnd128MaxAsciiString", # required
958
+ # image_uri: "ImageUriString", # required
959
+ # memory_limits: {
960
+ # soft_limit: 1,
961
+ # hard_limit: 1,
962
+ # },
963
+ # port_configuration: {
964
+ # container_port_ranges: [ # required
965
+ # {
966
+ # from_port: 1, # required
967
+ # to_port: 1, # required
968
+ # protocol: "TCP", # required, accepts TCP, UDP
969
+ # },
970
+ # ],
971
+ # },
972
+ # cpu: 1,
973
+ # health_check: {
974
+ # command: ["NonZeroAnd255MaxString"], # required
975
+ # interval: 1,
976
+ # timeout: 1,
977
+ # retries: 1,
978
+ # start_period: 1,
979
+ # },
980
+ # command: ["NonZeroAnd255MaxString"],
981
+ # essential: false,
982
+ # entry_point: ["NonZeroAndMaxString"],
983
+ # working_directory: "NonZeroAnd255MaxString",
984
+ # environment: [
985
+ # {
986
+ # name: "NonZeroAnd255MaxString", # required
987
+ # value: "NonZeroAnd255MaxString", # required
988
+ # },
989
+ # ],
990
+ # depends_on: [
991
+ # {
992
+ # container_name: "NonZeroAnd128MaxAsciiString", # required
993
+ # condition: "START", # required, accepts START, COMPLETE, SUCCESS, HEALTHY
994
+ # },
995
+ # ],
996
+ # },
997
+ # ],
998
+ # operating_system: "AMAZON_LINUX_2023", # required, accepts AMAZON_LINUX_2023
999
+ # tags: [
1000
+ # {
1001
+ # key: "TagKey", # required
1002
+ # value: "TagValue", # required
1003
+ # },
1004
+ # ],
1005
+ # })
1006
+ #
1007
+ # @example Response structure
1008
+ #
1009
+ # resp.container_group_definition.container_group_definition_arn #=> String
1010
+ # resp.container_group_definition.creation_time #=> Time
1011
+ # resp.container_group_definition.operating_system #=> String, one of "AMAZON_LINUX_2023"
1012
+ # resp.container_group_definition.name #=> String
1013
+ # resp.container_group_definition.scheduling_strategy #=> String, one of "REPLICA", "DAEMON"
1014
+ # resp.container_group_definition.total_memory_limit #=> Integer
1015
+ # resp.container_group_definition.total_cpu_limit #=> Integer
1016
+ # resp.container_group_definition.container_definitions #=> Array
1017
+ # resp.container_group_definition.container_definitions[0].container_name #=> String
1018
+ # resp.container_group_definition.container_definitions[0].image_uri #=> String
1019
+ # resp.container_group_definition.container_definitions[0].resolved_image_digest #=> String
1020
+ # resp.container_group_definition.container_definitions[0].memory_limits.soft_limit #=> Integer
1021
+ # resp.container_group_definition.container_definitions[0].memory_limits.hard_limit #=> Integer
1022
+ # resp.container_group_definition.container_definitions[0].port_configuration.container_port_ranges #=> Array
1023
+ # resp.container_group_definition.container_definitions[0].port_configuration.container_port_ranges[0].from_port #=> Integer
1024
+ # resp.container_group_definition.container_definitions[0].port_configuration.container_port_ranges[0].to_port #=> Integer
1025
+ # resp.container_group_definition.container_definitions[0].port_configuration.container_port_ranges[0].protocol #=> String, one of "TCP", "UDP"
1026
+ # resp.container_group_definition.container_definitions[0].cpu #=> Integer
1027
+ # resp.container_group_definition.container_definitions[0].health_check.command #=> Array
1028
+ # resp.container_group_definition.container_definitions[0].health_check.command[0] #=> String
1029
+ # resp.container_group_definition.container_definitions[0].health_check.interval #=> Integer
1030
+ # resp.container_group_definition.container_definitions[0].health_check.timeout #=> Integer
1031
+ # resp.container_group_definition.container_definitions[0].health_check.retries #=> Integer
1032
+ # resp.container_group_definition.container_definitions[0].health_check.start_period #=> Integer
1033
+ # resp.container_group_definition.container_definitions[0].command #=> Array
1034
+ # resp.container_group_definition.container_definitions[0].command[0] #=> String
1035
+ # resp.container_group_definition.container_definitions[0].essential #=> Boolean
1036
+ # resp.container_group_definition.container_definitions[0].entry_point #=> Array
1037
+ # resp.container_group_definition.container_definitions[0].entry_point[0] #=> String
1038
+ # resp.container_group_definition.container_definitions[0].working_directory #=> String
1039
+ # resp.container_group_definition.container_definitions[0].environment #=> Array
1040
+ # resp.container_group_definition.container_definitions[0].environment[0].name #=> String
1041
+ # resp.container_group_definition.container_definitions[0].environment[0].value #=> String
1042
+ # resp.container_group_definition.container_definitions[0].depends_on #=> Array
1043
+ # resp.container_group_definition.container_definitions[0].depends_on[0].container_name #=> String
1044
+ # resp.container_group_definition.container_definitions[0].depends_on[0].condition #=> String, one of "START", "COMPLETE", "SUCCESS", "HEALTHY"
1045
+ # resp.container_group_definition.status #=> String, one of "READY", "COPYING", "FAILED"
1046
+ # resp.container_group_definition.status_reason #=> String
1047
+ #
1048
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/CreateContainerGroupDefinition AWS API Documentation
1049
+ #
1050
+ # @overload create_container_group_definition(params = {})
1051
+ # @param [Hash] params ({})
1052
+ def create_container_group_definition(params = {}, options = {})
1053
+ req = build_request(:create_container_group_definition, params)
1054
+ req.send_request(options)
1055
+ end
1056
+
1057
+ # **This operation has been expanded to use with the Amazon GameLift
1058
+ # containers feature, which is currently in public preview.**
1059
+ #
1060
+ # Creates a fleet of compute resources to host your game servers. Use
1061
+ # this operation to set up the following types of fleets based on
1062
+ # compute type:
1063
+ #
1064
+ # **Managed EC2 fleet**
1065
+ #
1066
+ # An EC2 fleet is a set of Amazon Elastic Compute Cloud (Amazon EC2)
1067
+ # instances. Your game server build is deployed to each fleet instance.
1068
+ # Amazon GameLift manages the fleet's instances and controls the
1069
+ # lifecycle of game server processes, which host game sessions for
1070
+ # players. EC2 fleets can have instances in multiple locations. Each
1071
+ # instance in the fleet is designated a `Compute`.
1072
+ #
1073
+ # To create an EC2 fleet, provide these required parameters:
1074
+ #
1075
+ # * Either `BuildId` or `ScriptId`
1076
+ #
1077
+ # * `ComputeType` set to `EC2` (the default value)
1078
+ #
1079
+ # * `EC2InboundPermissions`
1080
+ #
1081
+ # * `EC2InstanceType`
1082
+ #
1083
+ # * `FleetType`
1084
+ #
1085
+ # * `Name`
1086
+ #
1087
+ # * `RuntimeConfiguration` with at least one `ServerProcesses`
1088
+ # configuration
1089
+ #
1090
+ # If successful, this operation creates a new fleet resource and places
1091
+ # it in `NEW` status while Amazon GameLift initiates the [fleet creation
1092
+ # workflow][1]. To debug your fleet, fetch logs, view performance
1093
+ # metrics or other actions on the fleet, create a development fleet with
1094
+ # port 22/3389 open. As a best practice, we recommend opening ports for
858
1095
  # remote access only when you need them and closing them when you're
859
1096
  # finished.
860
1097
  #
861
- # If successful, this operation creates a new Fleet resource and places
862
- # it in `NEW` status, which prompts Amazon GameLift to initiate the
863
- # [fleet creation workflow][1]. You can track fleet creation by checking
864
- # fleet status using DescribeFleetAttributes and
865
- # DescribeFleetLocationAttributes/, or by monitoring fleet creation
866
- # events using DescribeFleetEvents.
1098
+ # When the fleet status is ACTIVE, you can adjust capacity settings and
1099
+ # turn autoscaling on/off for each location.
1100
+ #
1101
+ # **Managed container fleet**
1102
+ #
1103
+ # A container fleet is a set of Amazon Elastic Compute Cloud (Amazon
1104
+ # EC2) instances. Your container architecture is deployed to each fleet
1105
+ # instance based on the fleet configuration. Amazon GameLift manages the
1106
+ # containers on each fleet instance and controls the lifecycle of game
1107
+ # server processes, which host game sessions for players. Container
1108
+ # fleets can have instances in multiple locations. Each container on an
1109
+ # instance that runs game server processes is registered as a `Compute`.
867
1110
  #
868
- # When the fleet status changes to `ACTIVE`, you can enable automatic
869
- # scaling with PutScalingPolicy and set capacity for the home Region
870
- # with UpdateFleetCapacity. When the status of each remote location
871
- # reaches `ACTIVE`, you can set capacity by location using
872
- # UpdateFleetCapacity.
1111
+ # To create a container fleet, provide these required parameters:
1112
+ #
1113
+ # * `ComputeType` set to `CONTAINER`
1114
+ #
1115
+ # * `ContainerGroupsConfiguration`
1116
+ #
1117
+ # * `EC2InboundPermissions`
1118
+ #
1119
+ # * `EC2InstanceType`
1120
+ #
1121
+ # * `FleetType` set to `ON_DEMAND`
1122
+ #
1123
+ # * `Name`
1124
+ #
1125
+ # * `RuntimeConfiguration` with at least one `ServerProcesses`
1126
+ # configuration
1127
+ #
1128
+ # If successful, this operation creates a new fleet resource and places
1129
+ # it in `NEW` status while Amazon GameLift initiates the [fleet creation
1130
+ # workflow][1].
1131
+ #
1132
+ # When the fleet status is ACTIVE, you can adjust capacity settings and
1133
+ # turn autoscaling on/off for each location.
1134
+ #
1135
+ # **Anywhere fleet**
1136
+ #
1137
+ # An Anywhere fleet represents compute resources that are not owned or
1138
+ # managed by Amazon GameLift. You might create an Anywhere fleet with
1139
+ # your local machine for testing, or use one to host game servers with
1140
+ # on-premises hardware or other game hosting solutions.
1141
+ #
1142
+ # To create an Anywhere fleet, provide these required parameters:
1143
+ #
1144
+ # * `ComputeType` set to `ANYWHERE`
1145
+ #
1146
+ # * `Locations` specifying a custom location
1147
+ #
1148
+ # * `Name`
1149
+ #
1150
+ # If successful, this operation creates a new fleet resource and places
1151
+ # it in `ACTIVE` status. You can register computes with a fleet in
1152
+ # `ACTIVE` status.
873
1153
  #
874
1154
  # **Learn more**
875
1155
  #
876
1156
  # [Setting up fleets][2]
877
1157
  #
878
- # [Debug fleet creation issues][3]
1158
+ # [Setting up a container fleet][3]
1159
+ #
1160
+ # [Debug fleet creation issues][4]
879
1161
  #
880
1162
  # [Multi-location fleets][2]
881
1163
  #
@@ -883,7 +1165,8 @@ module Aws::GameLift
883
1165
  #
884
1166
  # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-creating-all.html#fleets-creation-workflow
885
1167
  # [2]: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-intro.html
886
- # [3]: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-creating-debug.html#fleets-creating-debug-creation
1168
+ # [3]: https://docs.aws.amazon.com/gamelift/latest/developerguide/containers-build-fleet.html
1169
+ # [4]: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-creating-debug.html#fleets-creating-debug-creation
887
1170
  #
888
1171
  # @option params [required, String] :name
889
1172
  # A descriptive label that is associated with a fleet. Fleet names do
@@ -893,17 +1176,18 @@ module Aws::GameLift
893
1176
  # A description for the fleet.
894
1177
  #
895
1178
  # @option params [String] :build_id
896
- # The unique identifier for a custom game server build to be deployed on
897
- # fleet instances. You can use either the build ID or ARN. The build
898
- # must be uploaded to Amazon GameLift and in `READY` status. This fleet
899
- # property can't be changed after the fleet is created.
1179
+ # The unique identifier for a custom game server build to be deployed to
1180
+ # a fleet with compute type `EC2`. You can use either the build ID or
1181
+ # ARN. The build must be uploaded to Amazon GameLift and in `READY`
1182
+ # status. This fleet property can't be changed after the fleet is
1183
+ # created.
900
1184
  #
901
1185
  # @option params [String] :script_id
902
1186
  # The unique identifier for a Realtime configuration script to be
903
- # deployed on fleet instances. You can use either the script ID or ARN.
904
- # Scripts must be uploaded to Amazon GameLift prior to creating the
905
- # fleet. This fleet property can't be changed after the fleet is
906
- # created.
1187
+ # deployed to a fleet with compute type `EC2`. You can use either the
1188
+ # script ID or ARN. Scripts must be uploaded to Amazon GameLift prior to
1189
+ # creating the fleet. This fleet property can't be changed after the
1190
+ # fleet is created.
907
1191
  #
908
1192
  # @option params [String] :server_launch_path
909
1193
  # **This parameter is no longer used.** Specify a server launch path
@@ -928,9 +1212,9 @@ module Aws::GameLift
928
1212
  # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-api.html#gamelift-sdk-server-initialize
929
1213
  #
930
1214
  # @option params [String] :ec2_instance_type
931
- # The Amazon GameLift-supported Amazon EC2 instance type to use for all
932
- # fleet instances. Instance type determines the computing resources that
933
- # will be used to host your game servers, including CPU, memory,
1215
+ # The Amazon GameLift-supported Amazon EC2 instance type to use with EC2
1216
+ # and container fleets. Instance type determines the computing resources
1217
+ # that will be used to host your game servers, including CPU, memory,
934
1218
  # storage, and networking capacity. See [Amazon Elastic Compute Cloud
935
1219
  # Instance Types][1] for detailed descriptions of Amazon EC2 instance
936
1220
  # types.
@@ -940,11 +1224,20 @@ module Aws::GameLift
940
1224
  # [1]: http://aws.amazon.com/ec2/instance-types/
941
1225
  #
942
1226
  # @option params [Array<Types::IpPermission>] :ec2_inbound_permissions
943
- # The allowed IP address ranges and port settings that allow inbound
944
- # traffic to access game sessions on this fleet. If the fleet is hosting
945
- # a custom game build, this property must be set before players can
946
- # connect to game sessions. For Realtime Servers fleets, Amazon GameLift
947
- # automatically sets TCP and UDP ranges.
1227
+ # The IP address ranges and port settings that allow inbound traffic to
1228
+ # access game server processes and other processes on this fleet. Set
1229
+ # this parameter for EC2 and container fleets. You can leave this
1230
+ # parameter empty when creating the fleet, but you must call
1231
+ # UpdateFleetPortSettings to set it before players can connect to game
1232
+ # sessions. As a best practice, we recommend opening ports for remote
1233
+ # access only when you need them and closing them when you're finished.
1234
+ # For Realtime Servers fleets, Amazon GameLift automatically sets TCP
1235
+ # and UDP ranges.
1236
+ #
1237
+ # To manage inbound access for a container fleet, set this parameter to
1238
+ # the same port numbers that you set for the fleet's connection port
1239
+ # range. During the life of the fleet, update this parameter to control
1240
+ # which connection ports are open to inbound traffic.
948
1241
  #
949
1242
  # @option params [String] :new_game_session_protection_policy
950
1243
  # The status of termination protection for active game sessions on the
@@ -960,14 +1253,15 @@ module Aws::GameLift
960
1253
  # terminated during a scale-down event.
961
1254
  #
962
1255
  # @option params [Types::RuntimeConfiguration] :runtime_configuration
963
- # Instructions for how to launch and maintain server processes on
964
- # instances in the fleet. The runtime configuration defines one or more
965
- # server process configurations, each identifying a build executable or
966
- # Realtime script file and the number of processes of that type to run
1256
+ # Instructions for how to launch and run server processes on the fleet.
1257
+ # Set runtime configuration for EC2 fleets and container fleets. For an
1258
+ # Anywhere fleets, set this parameter only if the fleet is running the
1259
+ # Amazon GameLift Agent. The runtime configuration defines one or more
1260
+ # server process configurations. Each server process identifies a game
1261
+ # executable or Realtime script file and the number of processes to run
967
1262
  # concurrently.
968
1263
  #
969
- # <note markdown="1"> The `RuntimeConfiguration` parameter is required unless the fleet is
970
- # being configured using the older parameters `ServerLaunchPath` and
1264
+ # <note markdown="1"> This parameter replaces the parameters `ServerLaunchPath` and
971
1265
  # `ServerLaunchParameters`, which are still supported for backward
972
1266
  # compatibility.
973
1267
  #
@@ -1059,11 +1353,11 @@ module Aws::GameLift
1059
1353
  # fleets in Amazon Web Services Regions that support multiple locations.
1060
1354
  # You can add any Amazon GameLift-supported Amazon Web Services Region
1061
1355
  # as a remote location, in the form of an Amazon Web Services Region
1062
- # code such as `us-west-2`. To create a fleet with instances in the home
1063
- # Region only, don't use this parameter.
1356
+ # code, such as `us-west-2` or Local Zone code. To create a fleet with
1357
+ # instances in the home Region only, don't set this parameter.
1064
1358
  #
1065
- # To use this parameter, Amazon GameLift requires you to use your home
1066
- # location in the request.
1359
+ # When using this parameter, Amazon GameLift requires you to include
1360
+ # your home location in the request.
1067
1361
  #
1068
1362
  # @option params [Array<Types::Tag>] :tags
1069
1363
  # A list of labels to assign to the new fleet resource. Tags are
@@ -1077,28 +1371,46 @@ module Aws::GameLift
1077
1371
  # [1]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
1078
1372
  #
1079
1373
  # @option params [String] :compute_type
1080
- # The type of compute resource used to host your game servers. You can
1081
- # use your own compute resources with Amazon GameLift Anywhere or use
1082
- # Amazon EC2 instances with managed Amazon GameLift. By default, this
1083
- # property is set to `EC2`.
1374
+ # The type of compute resource used to host your game servers.
1375
+ #
1376
+ # * `EC2` The game server build is deployed to Amazon EC2 instances
1377
+ # for cloud hosting. This is the default setting.
1378
+ #
1379
+ # * `CONTAINER` – Container images with your game server build and
1380
+ # supporting software are deployed to Amazon EC2 instances for cloud
1381
+ # hosting. With this compute type, you must specify the
1382
+ # `ContainerGroupsConfiguration` parameter.
1383
+ #
1384
+ # * `ANYWHERE` – Game servers or container images with your game server
1385
+ # and supporting software are deployed to compute resources that are
1386
+ # provided and managed by you. With this compute type, you can also
1387
+ # set the `AnywhereConfiguration` parameter.
1084
1388
  #
1085
1389
  # @option params [Types::AnywhereConfiguration] :anywhere_configuration
1086
1390
  # Amazon GameLift Anywhere configuration options.
1087
1391
  #
1088
1392
  # @option params [String] :instance_role_credentials_provider
1089
1393
  # Prompts Amazon GameLift to generate a shared credentials file for the
1090
- # IAM role defined in `InstanceRoleArn`. The shared credentials file is
1091
- # stored on each fleet instance and refreshed as needed. Use shared
1092
- # credentials for applications that are deployed along with the game
1093
- # server executable, if the game server is integrated with server SDK
1094
- # version 5.x. For more information about using shared credentials, see
1095
- # [ Communicate with other Amazon Web Services resources from your
1394
+ # IAM role that's defined in `InstanceRoleArn`. The shared credentials
1395
+ # file is stored on each fleet instance and refreshed as needed. Use
1396
+ # shared credentials for applications that are deployed along with the
1397
+ # game server executable, if the game server is integrated with server
1398
+ # SDK version 5.x. For more information about using shared credentials,
1399
+ # see [ Communicate with other Amazon Web Services resources from your
1096
1400
  # fleets][1].
1097
1401
  #
1098
1402
  #
1099
1403
  #
1100
1404
  # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-sdk-server-resources.html
1101
1405
  #
1406
+ # @option params [Types::ContainerGroupsConfiguration] :container_groups_configuration
1407
+ # The container groups to deploy to instances in the container fleet and
1408
+ # other fleet-level configuration settings. Use the
1409
+ # CreateContainerGroupDefinition action to create container groups. A
1410
+ # container fleet must have exactly one replica container group, and can
1411
+ # optionally have one daemon container group. You can't change this
1412
+ # property after you create the fleet.
1413
+ #
1102
1414
  # @return [Types::CreateFleetOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1103
1415
  #
1104
1416
  # * {Types::CreateFleetOutput#fleet_attributes #fleet_attributes} => Types::FleetAttributes
@@ -1158,11 +1470,19 @@ module Aws::GameLift
1158
1470
  # value: "TagValue", # required
1159
1471
  # },
1160
1472
  # ],
1161
- # compute_type: "EC2", # accepts EC2, ANYWHERE
1473
+ # compute_type: "EC2", # accepts EC2, ANYWHERE, CONTAINER
1162
1474
  # anywhere_configuration: {
1163
1475
  # cost: "NonNegativeLimitedLengthDouble", # required
1164
1476
  # },
1165
1477
  # instance_role_credentials_provider: "SHARED_CREDENTIAL_FILE", # accepts SHARED_CREDENTIAL_FILE
1478
+ # container_groups_configuration: {
1479
+ # container_group_definition_names: ["ContainerGroupDefinitionNameOrArn"], # required
1480
+ # connection_port_range: { # required
1481
+ # from_port: 1, # required
1482
+ # to_port: 1, # required
1483
+ # },
1484
+ # desired_replica_container_groups_per_instance: 1,
1485
+ # },
1166
1486
  # })
1167
1487
  #
1168
1488
  # @example Response structure
@@ -1194,9 +1514,16 @@ module Aws::GameLift
1194
1514
  # resp.fleet_attributes.stopped_actions[0] #=> String, one of "AUTO_SCALING"
1195
1515
  # resp.fleet_attributes.instance_role_arn #=> String
1196
1516
  # resp.fleet_attributes.certificate_configuration.certificate_type #=> String, one of "DISABLED", "GENERATED"
1197
- # resp.fleet_attributes.compute_type #=> String, one of "EC2", "ANYWHERE"
1517
+ # resp.fleet_attributes.compute_type #=> String, one of "EC2", "ANYWHERE", "CONTAINER"
1198
1518
  # resp.fleet_attributes.anywhere_configuration.cost #=> String
1199
1519
  # resp.fleet_attributes.instance_role_credentials_provider #=> String, one of "SHARED_CREDENTIAL_FILE"
1520
+ # resp.fleet_attributes.container_groups_attributes.container_group_definition_properties #=> Array
1521
+ # resp.fleet_attributes.container_groups_attributes.container_group_definition_properties[0].scheduling_strategy #=> String, one of "REPLICA", "DAEMON"
1522
+ # resp.fleet_attributes.container_groups_attributes.container_group_definition_properties[0].container_group_definition_name #=> String
1523
+ # resp.fleet_attributes.container_groups_attributes.connection_port_range.from_port #=> Integer
1524
+ # resp.fleet_attributes.container_groups_attributes.connection_port_range.to_port #=> Integer
1525
+ # resp.fleet_attributes.container_groups_attributes.container_groups_per_instance.desired_replica_container_groups_per_instance #=> Integer
1526
+ # resp.fleet_attributes.container_groups_attributes.container_groups_per_instance.max_replica_container_groups_per_instance #=> Integer
1200
1527
  # resp.location_states #=> Array
1201
1528
  # resp.location_states[0].location #=> String
1202
1529
  # resp.location_states[0].status #=> String, one of "NEW", "DOWNLOADING", "VALIDATING", "BUILDING", "ACTIVATING", "ACTIVE", "DELETING", "ERROR", "TERMINATED", "NOT_FOUND"
@@ -1210,15 +1537,17 @@ module Aws::GameLift
1210
1537
  req.send_request(options)
1211
1538
  end
1212
1539
 
1213
- # Adds remote locations to a fleet and begins populating the new
1214
- # locations with EC2 instances. The new instances conform to the
1215
- # fleet's instance type, auto-scaling, and other configuration
1540
+ # **This operation has been expanded to use with the Amazon GameLift
1541
+ # containers feature, which is currently in public preview.**
1542
+ #
1543
+ # Adds remote locations to an EC2 or container fleet and begins
1544
+ # populating the new locations with instances. The new instances conform
1545
+ # to the fleet's instance type, auto-scaling, and other configuration
1216
1546
  # settings.
1217
1547
  #
1218
- # <note markdown="1"> This operation cannot be used with fleets that don't support remote
1219
- # locations. Fleets can have multiple locations only if they reside in
1220
- # Amazon Web Services Regions that support this feature and were created
1221
- # after the feature was released in March 2021.
1548
+ # <note markdown="1"> You can't add remote locations to a fleet that resides in an Amazon
1549
+ # Web Services Region that doesn't support multiple locations. Fleets
1550
+ # created prior to March 2021 can't support multiple locations.
1222
1551
  #
1223
1552
  # </note>
1224
1553
  #
@@ -2803,21 +3132,62 @@ module Aws::GameLift
2803
3132
  req.send_request(options)
2804
3133
  end
2805
3134
 
2806
- # Deletes all resources and information related a fleet. Any current
2807
- # fleet instances, including those in remote locations, are shut down.
2808
- # You don't need to call `DeleteFleetLocations` separately.
3135
+ # <b>This operation is used with the Amazon GameLift containers feature,
3136
+ # which is currently in public preview. </b>
3137
+ #
3138
+ # Deletes a container group definition resource. You can delete a
3139
+ # container group definition if there are no fleets using the
3140
+ # definition.
3141
+ #
3142
+ # To delete a container group definition, identify the resource to
3143
+ # delete.
3144
+ #
3145
+ # **Learn more**
3146
+ #
3147
+ # * [Manage a container group definition][1]
3148
+ #
3149
+ # ^
3150
+ #
3151
+ #
3152
+ #
3153
+ # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/containers-create-groups.html
3154
+ #
3155
+ # @option params [required, String] :name
3156
+ # The unique identifier for the container group definition to delete.
3157
+ # You can use either the `Name` or `ARN` value.
3158
+ #
3159
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3160
+ #
3161
+ # @example Request syntax with placeholder values
3162
+ #
3163
+ # resp = client.delete_container_group_definition({
3164
+ # name: "ContainerGroupDefinitionNameOrArn", # required
3165
+ # })
3166
+ #
3167
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/DeleteContainerGroupDefinition AWS API Documentation
3168
+ #
3169
+ # @overload delete_container_group_definition(params = {})
3170
+ # @param [Hash] params ({})
3171
+ def delete_container_group_definition(params = {}, options = {})
3172
+ req = build_request(:delete_container_group_definition, params)
3173
+ req.send_request(options)
3174
+ end
3175
+
3176
+ # Deletes all resources and information related to a fleet and shuts
3177
+ # down any currently running fleet instances, including those in remote
3178
+ # locations.
2809
3179
  #
2810
3180
  # <note markdown="1"> If the fleet being deleted has a VPC peering connection, you first
2811
3181
  # need to get a valid authorization (good for 24 hours) by calling
2812
- # [CreateVpcPeeringAuthorization][1]. You do not need to explicitly
3182
+ # [CreateVpcPeeringAuthorization][1]. You don't need to explicitly
2813
3183
  # delete the VPC peering connection.
2814
3184
  #
2815
3185
  # </note>
2816
3186
  #
2817
3187
  # To delete a fleet, specify the fleet ID to be terminated. During the
2818
- # deletion process the fleet status is changed to `DELETING`. When
3188
+ # deletion process, the fleet status is changed to `DELETING`. When
2819
3189
  # completed, the status switches to `TERMINATED` and the fleet event
2820
- # `FLEET_DELETED` is sent.
3190
+ # `FLEET_DELETED` is emitted.
2821
3191
  #
2822
3192
  # **Learn more**
2823
3193
  #
@@ -3295,17 +3665,31 @@ module Aws::GameLift
3295
3665
  req.send_request(options)
3296
3666
  end
3297
3667
 
3298
- # Removes a compute resource from an Amazon GameLift Anywhere fleet.
3299
- # Deregistered computes can no longer host game sessions through Amazon
3300
- # GameLift.
3668
+ # **This operation has been expanded to use with the Amazon GameLift
3669
+ # containers feature, which is currently in public preview.**
3670
+ #
3671
+ # Removes a compute resource from an Amazon GameLift Anywhere fleet or
3672
+ # container fleet. Deregistered computes can no longer host game
3673
+ # sessions through Amazon GameLift.
3674
+ #
3675
+ # For an Anywhere fleet or a container fleet that's running the Amazon
3676
+ # GameLift Agent, the Agent handles all compute registry tasks for you.
3677
+ # For an Anywhere fleet that doesn't use the Agent, call this operation
3678
+ # to deregister fleet computes.
3679
+ #
3680
+ # To deregister a compute, call this operation from the compute that's
3681
+ # being deregistered and specify the compute name and the fleet ID.
3301
3682
  #
3302
3683
  # @option params [required, String] :fleet_id
3303
3684
  # A unique identifier for the fleet the compute resource is currently
3304
3685
  # registered to.
3305
3686
  #
3306
3687
  # @option params [required, String] :compute_name
3307
- # The name of the compute resource to remove from the specified Anywhere
3308
- # fleet.
3688
+ # The unique identifier of the compute resource to deregister. For an
3689
+ # Anywhere fleet compute, use the registered compute name. For a
3690
+ # container fleet, use the compute name (for example,
3691
+ # `a123b456c789012d3e4567f8a901b23c/1a234b56-7cd8-9e0f-a1b2-c34d567ef8a9`)
3692
+ # or the compute ARN.
3309
3693
  #
3310
3694
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3311
3695
  #
@@ -3470,26 +3854,40 @@ module Aws::GameLift
3470
3854
  req.send_request(options)
3471
3855
  end
3472
3856
 
3857
+ # **This operation has been expanded to use with the Amazon GameLift
3858
+ # containers feature, which is currently in public preview.**
3859
+ #
3473
3860
  # Retrieves properties for a compute resource in an Amazon GameLift
3474
- # fleet. Call ListCompute to get a list of compute resources in a fleet.
3475
- # You can request information for computes in either managed EC2 fleets
3476
- # or Anywhere fleets.
3861
+ # fleet. To get a list of all computes in a fleet, call ListCompute.
3477
3862
  #
3478
- # To request compute properties, specify the compute name and fleet ID.
3863
+ # To request information on a specific compute, provide the fleet ID and
3864
+ # compute name.
3479
3865
  #
3480
3866
  # If successful, this operation returns details for the requested
3481
- # compute resource. For managed EC2 fleets, this operation returns the
3482
- # fleet's EC2 instances. For Anywhere fleets, this operation returns
3483
- # the fleet's registered computes.
3867
+ # compute resource. Depending on the fleet's compute type, the result
3868
+ # includes the following information:
3869
+ #
3870
+ # * For `EC2` fleets, this operation returns information about the EC2
3871
+ # instance.
3872
+ #
3873
+ # * For `ANYWHERE` fleets, this operation returns information about the
3874
+ # registered compute.
3875
+ #
3876
+ # * For `CONTAINER` fleets, this operation returns information about the
3877
+ # container that's registered as a compute, and the instance it's
3878
+ # running on. The compute name is the container name.
3484
3879
  #
3485
3880
  # @option params [required, String] :fleet_id
3486
- # A unique identifier for the fleet that the compute is registered to.
3487
- # You can use either the fleet ID or ARN value.
3881
+ # A unique identifier for the fleet that the compute belongs to. You can
3882
+ # use either the fleet ID or ARN value.
3488
3883
  #
3489
3884
  # @option params [required, String] :compute_name
3490
3885
  # The unique identifier of the compute resource to retrieve properties
3491
3886
  # for. For an Anywhere fleet compute, use the registered compute name.
3492
- # For a managed EC2 fleet instance, use the instance ID.
3887
+ # For an EC2 fleet instance, use the instance ID. For a container fleet,
3888
+ # use the compute name (for example,
3889
+ # `a123b456c789012d3e4567f8a901b23c/1a234b56-7cd8-9e0f-a1b2-c34d567ef8a9`)
3890
+ # or the compute ARN.
3493
3891
  #
3494
3892
  # @return [Types::DescribeComputeOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3495
3893
  #
@@ -3516,6 +3914,12 @@ module Aws::GameLift
3516
3914
  # resp.compute.operating_system #=> String, one of "WINDOWS_2012", "AMAZON_LINUX", "AMAZON_LINUX_2", "WINDOWS_2016", "AMAZON_LINUX_2023"
3517
3915
  # resp.compute.type #=> String, one of "t2.micro", "t2.small", "t2.medium", "t2.large", "c3.large", "c3.xlarge", "c3.2xlarge", "c3.4xlarge", "c3.8xlarge", "c4.large", "c4.xlarge", "c4.2xlarge", "c4.4xlarge", "c4.8xlarge", "c5.large", "c5.xlarge", "c5.2xlarge", "c5.4xlarge", "c5.9xlarge", "c5.12xlarge", "c5.18xlarge", "c5.24xlarge", "c5a.large", "c5a.xlarge", "c5a.2xlarge", "c5a.4xlarge", "c5a.8xlarge", "c5a.12xlarge", "c5a.16xlarge", "c5a.24xlarge", "r3.large", "r3.xlarge", "r3.2xlarge", "r3.4xlarge", "r3.8xlarge", "r4.large", "r4.xlarge", "r4.2xlarge", "r4.4xlarge", "r4.8xlarge", "r4.16xlarge", "r5.large", "r5.xlarge", "r5.2xlarge", "r5.4xlarge", "r5.8xlarge", "r5.12xlarge", "r5.16xlarge", "r5.24xlarge", "r5a.large", "r5a.xlarge", "r5a.2xlarge", "r5a.4xlarge", "r5a.8xlarge", "r5a.12xlarge", "r5a.16xlarge", "r5a.24xlarge", "m3.medium", "m3.large", "m3.xlarge", "m3.2xlarge", "m4.large", "m4.xlarge", "m4.2xlarge", "m4.4xlarge", "m4.10xlarge", "m5.large", "m5.xlarge", "m5.2xlarge", "m5.4xlarge", "m5.8xlarge", "m5.12xlarge", "m5.16xlarge", "m5.24xlarge", "m5a.large", "m5a.xlarge", "m5a.2xlarge", "m5a.4xlarge", "m5a.8xlarge", "m5a.12xlarge", "m5a.16xlarge", "m5a.24xlarge", "c5d.large", "c5d.xlarge", "c5d.2xlarge", "c5d.4xlarge", "c5d.9xlarge", "c5d.12xlarge", "c5d.18xlarge", "c5d.24xlarge", "c6a.large", "c6a.xlarge", "c6a.2xlarge", "c6a.4xlarge", "c6a.8xlarge", "c6a.12xlarge", "c6a.16xlarge", "c6a.24xlarge", "c6i.large", "c6i.xlarge", "c6i.2xlarge", "c6i.4xlarge", "c6i.8xlarge", "c6i.12xlarge", "c6i.16xlarge", "c6i.24xlarge", "r5d.large", "r5d.xlarge", "r5d.2xlarge", "r5d.4xlarge", "r5d.8xlarge", "r5d.12xlarge", "r5d.16xlarge", "r5d.24xlarge", "m6g.medium", "m6g.large", "m6g.xlarge", "m6g.2xlarge", "m6g.4xlarge", "m6g.8xlarge", "m6g.12xlarge", "m6g.16xlarge", "c6g.medium", "c6g.large", "c6g.xlarge", "c6g.2xlarge", "c6g.4xlarge", "c6g.8xlarge", "c6g.12xlarge", "c6g.16xlarge", "r6g.medium", "r6g.large", "r6g.xlarge", "r6g.2xlarge", "r6g.4xlarge", "r6g.8xlarge", "r6g.12xlarge", "r6g.16xlarge", "c6gn.medium", "c6gn.large", "c6gn.xlarge", "c6gn.2xlarge", "c6gn.4xlarge", "c6gn.8xlarge", "c6gn.12xlarge", "c6gn.16xlarge", "c7g.medium", "c7g.large", "c7g.xlarge", "c7g.2xlarge", "c7g.4xlarge", "c7g.8xlarge", "c7g.12xlarge", "c7g.16xlarge", "r7g.medium", "r7g.large", "r7g.xlarge", "r7g.2xlarge", "r7g.4xlarge", "r7g.8xlarge", "r7g.12xlarge", "r7g.16xlarge", "m7g.medium", "m7g.large", "m7g.xlarge", "m7g.2xlarge", "m7g.4xlarge", "m7g.8xlarge", "m7g.12xlarge", "m7g.16xlarge", "g5g.xlarge", "g5g.2xlarge", "g5g.4xlarge", "g5g.8xlarge", "g5g.16xlarge"
3518
3916
  # resp.compute.game_lift_service_sdk_endpoint #=> String
3917
+ # resp.compute.game_lift_agent_endpoint #=> String
3918
+ # resp.compute.instance_id #=> String
3919
+ # resp.compute.container_attributes.container_port_mappings #=> Array
3920
+ # resp.compute.container_attributes.container_port_mappings[0].container_port #=> Integer
3921
+ # resp.compute.container_attributes.container_port_mappings[0].connection_port #=> Integer
3922
+ # resp.compute.container_attributes.container_port_mappings[0].protocol #=> String, one of "TCP", "UDP"
3519
3923
  #
3520
3924
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/DescribeCompute AWS API Documentation
3521
3925
  #
@@ -3526,6 +3930,90 @@ module Aws::GameLift
3526
3930
  req.send_request(options)
3527
3931
  end
3528
3932
 
3933
+ # <b>This operation is used with the Amazon GameLift containers feature,
3934
+ # which is currently in public preview. </b>
3935
+ #
3936
+ # Retrieves the properties of a container group definition, including
3937
+ # all container definitions in the group.
3938
+ #
3939
+ # To retrieve a container group definition, provide a resource
3940
+ # identifier. If successful, this operation returns the complete
3941
+ # properties of the container group definition.
3942
+ #
3943
+ # **Learn more**
3944
+ #
3945
+ # * [Manage a container group definition][1]
3946
+ #
3947
+ # ^
3948
+ #
3949
+ #
3950
+ #
3951
+ # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/containers-create-groups.html
3952
+ #
3953
+ # @option params [required, String] :name
3954
+ # The unique identifier for the container group definition to retrieve
3955
+ # properties for. You can use either the `Name` or `ARN` value.
3956
+ #
3957
+ # @return [Types::DescribeContainerGroupDefinitionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3958
+ #
3959
+ # * {Types::DescribeContainerGroupDefinitionOutput#container_group_definition #container_group_definition} => Types::ContainerGroupDefinition
3960
+ #
3961
+ # @example Request syntax with placeholder values
3962
+ #
3963
+ # resp = client.describe_container_group_definition({
3964
+ # name: "ContainerGroupDefinitionNameOrArn", # required
3965
+ # })
3966
+ #
3967
+ # @example Response structure
3968
+ #
3969
+ # resp.container_group_definition.container_group_definition_arn #=> String
3970
+ # resp.container_group_definition.creation_time #=> Time
3971
+ # resp.container_group_definition.operating_system #=> String, one of "AMAZON_LINUX_2023"
3972
+ # resp.container_group_definition.name #=> String
3973
+ # resp.container_group_definition.scheduling_strategy #=> String, one of "REPLICA", "DAEMON"
3974
+ # resp.container_group_definition.total_memory_limit #=> Integer
3975
+ # resp.container_group_definition.total_cpu_limit #=> Integer
3976
+ # resp.container_group_definition.container_definitions #=> Array
3977
+ # resp.container_group_definition.container_definitions[0].container_name #=> String
3978
+ # resp.container_group_definition.container_definitions[0].image_uri #=> String
3979
+ # resp.container_group_definition.container_definitions[0].resolved_image_digest #=> String
3980
+ # resp.container_group_definition.container_definitions[0].memory_limits.soft_limit #=> Integer
3981
+ # resp.container_group_definition.container_definitions[0].memory_limits.hard_limit #=> Integer
3982
+ # resp.container_group_definition.container_definitions[0].port_configuration.container_port_ranges #=> Array
3983
+ # resp.container_group_definition.container_definitions[0].port_configuration.container_port_ranges[0].from_port #=> Integer
3984
+ # resp.container_group_definition.container_definitions[0].port_configuration.container_port_ranges[0].to_port #=> Integer
3985
+ # resp.container_group_definition.container_definitions[0].port_configuration.container_port_ranges[0].protocol #=> String, one of "TCP", "UDP"
3986
+ # resp.container_group_definition.container_definitions[0].cpu #=> Integer
3987
+ # resp.container_group_definition.container_definitions[0].health_check.command #=> Array
3988
+ # resp.container_group_definition.container_definitions[0].health_check.command[0] #=> String
3989
+ # resp.container_group_definition.container_definitions[0].health_check.interval #=> Integer
3990
+ # resp.container_group_definition.container_definitions[0].health_check.timeout #=> Integer
3991
+ # resp.container_group_definition.container_definitions[0].health_check.retries #=> Integer
3992
+ # resp.container_group_definition.container_definitions[0].health_check.start_period #=> Integer
3993
+ # resp.container_group_definition.container_definitions[0].command #=> Array
3994
+ # resp.container_group_definition.container_definitions[0].command[0] #=> String
3995
+ # resp.container_group_definition.container_definitions[0].essential #=> Boolean
3996
+ # resp.container_group_definition.container_definitions[0].entry_point #=> Array
3997
+ # resp.container_group_definition.container_definitions[0].entry_point[0] #=> String
3998
+ # resp.container_group_definition.container_definitions[0].working_directory #=> String
3999
+ # resp.container_group_definition.container_definitions[0].environment #=> Array
4000
+ # resp.container_group_definition.container_definitions[0].environment[0].name #=> String
4001
+ # resp.container_group_definition.container_definitions[0].environment[0].value #=> String
4002
+ # resp.container_group_definition.container_definitions[0].depends_on #=> Array
4003
+ # resp.container_group_definition.container_definitions[0].depends_on[0].container_name #=> String
4004
+ # resp.container_group_definition.container_definitions[0].depends_on[0].condition #=> String, one of "START", "COMPLETE", "SUCCESS", "HEALTHY"
4005
+ # resp.container_group_definition.status #=> String, one of "READY", "COPYING", "FAILED"
4006
+ # resp.container_group_definition.status_reason #=> String
4007
+ #
4008
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/DescribeContainerGroupDefinition AWS API Documentation
4009
+ #
4010
+ # @overload describe_container_group_definition(params = {})
4011
+ # @param [Hash] params ({})
4012
+ def describe_container_group_definition(params = {}, options = {})
4013
+ req = build_request(:describe_container_group_definition, params)
4014
+ req.send_request(options)
4015
+ end
4016
+
3529
4017
  # Retrieves the instance limits and current utilization for an Amazon
3530
4018
  # Web Services Region or location. Instance limits control the number of
3531
4019
  # instances, per instance type, per location, that your Amazon Web
@@ -3624,13 +4112,17 @@ module Aws::GameLift
3624
4112
  req.send_request(options)
3625
4113
  end
3626
4114
 
3627
- # Retrieves core fleet-wide properties, including the computing hardware
3628
- # and deployment configuration for all instances in the fleet.
4115
+ # **This operation has been expanded to use with the Amazon GameLift
4116
+ # containers feature, which is currently in public preview.**
3629
4117
  #
3630
- # This operation can be used in the following ways:
4118
+ # Retrieves core fleet-wide properties for fleets in an Amazon Web
4119
+ # Services Region. Properties include the computing hardware and
4120
+ # deployment configuration for instances in the fleet.
4121
+ #
4122
+ # You can use this operation in the following ways:
3631
4123
  #
3632
- # * To get attributes for one or more specific fleets, provide a list of
3633
- # fleet IDs or fleet ARNs.
4124
+ # * To get attributes for specific fleets, provide a list of fleet IDs
4125
+ # or fleet ARNs.
3634
4126
  #
3635
4127
  # * To get attributes for all fleets, do not provide a fleet identifier.
3636
4128
  #
@@ -3717,9 +4209,16 @@ module Aws::GameLift
3717
4209
  # resp.fleet_attributes[0].stopped_actions[0] #=> String, one of "AUTO_SCALING"
3718
4210
  # resp.fleet_attributes[0].instance_role_arn #=> String
3719
4211
  # resp.fleet_attributes[0].certificate_configuration.certificate_type #=> String, one of "DISABLED", "GENERATED"
3720
- # resp.fleet_attributes[0].compute_type #=> String, one of "EC2", "ANYWHERE"
4212
+ # resp.fleet_attributes[0].compute_type #=> String, one of "EC2", "ANYWHERE", "CONTAINER"
3721
4213
  # resp.fleet_attributes[0].anywhere_configuration.cost #=> String
3722
4214
  # resp.fleet_attributes[0].instance_role_credentials_provider #=> String, one of "SHARED_CREDENTIAL_FILE"
4215
+ # resp.fleet_attributes[0].container_groups_attributes.container_group_definition_properties #=> Array
4216
+ # resp.fleet_attributes[0].container_groups_attributes.container_group_definition_properties[0].scheduling_strategy #=> String, one of "REPLICA", "DAEMON"
4217
+ # resp.fleet_attributes[0].container_groups_attributes.container_group_definition_properties[0].container_group_definition_name #=> String
4218
+ # resp.fleet_attributes[0].container_groups_attributes.connection_port_range.from_port #=> Integer
4219
+ # resp.fleet_attributes[0].container_groups_attributes.connection_port_range.to_port #=> Integer
4220
+ # resp.fleet_attributes[0].container_groups_attributes.container_groups_per_instance.desired_replica_container_groups_per_instance #=> Integer
4221
+ # resp.fleet_attributes[0].container_groups_attributes.container_groups_per_instance.max_replica_container_groups_per_instance #=> Integer
3723
4222
  # resp.next_token #=> String
3724
4223
  #
3725
4224
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/DescribeFleetAttributes AWS API Documentation
@@ -3731,11 +4230,16 @@ module Aws::GameLift
3731
4230
  req.send_request(options)
3732
4231
  end
3733
4232
 
3734
- # Retrieves the resource capacity settings for one or more fleets. The
3735
- # data returned includes the current fleet capacity (number of EC2
3736
- # instances), and settings that can control how capacity scaling. For
3737
- # fleets with remote locations, this operation retrieves data for the
3738
- # fleet's home Region only.
4233
+ # **This operation has been expanded to use with the Amazon GameLift
4234
+ # containers feature, which is currently in public preview.**
4235
+ #
4236
+ # Retrieves the resource capacity settings for one or more fleets. For a
4237
+ # container fleet, this operation also returns counts for replica
4238
+ # container groups.
4239
+ #
4240
+ # With multi-location fleets, this operation retrieves data for the
4241
+ # fleet's home Region only. To retrieve capacity for remote locations,
4242
+ # see DescribeFleetLocationCapacity.
3739
4243
  #
3740
4244
  # This operation can be used in the following ways:
3741
4245
  #
@@ -3749,10 +4253,9 @@ module Aws::GameLift
3749
4253
  # retrieve results as a set of sequential pages.
3750
4254
  #
3751
4255
  # If successful, a `FleetCapacity` object is returned for each requested
3752
- # fleet ID. Each FleetCapacity object includes a `Location` property,
3753
- # which is set to the fleet's home Region. When a list of fleet IDs is
3754
- # provided, attribute objects are returned only for fleets that
3755
- # currently exist.
4256
+ # fleet ID. Each `FleetCapacity` object includes a `Location` property,
4257
+ # which is set to the fleet's home Region. Capacity values are returned
4258
+ # only for fleets that currently exist.
3756
4259
  #
3757
4260
  # <note markdown="1"> Some API operations may limit the number of fleet IDs that are allowed
3758
4261
  # in one request. If a request exceeds this limit, the request fails and
@@ -3818,6 +4321,10 @@ module Aws::GameLift
3818
4321
  # resp.fleet_capacity[0].instance_counts.idle #=> Integer
3819
4322
  # resp.fleet_capacity[0].instance_counts.terminating #=> Integer
3820
4323
  # resp.fleet_capacity[0].location #=> String
4324
+ # resp.fleet_capacity[0].replica_container_group_counts.pending #=> Integer
4325
+ # resp.fleet_capacity[0].replica_container_group_counts.active #=> Integer
4326
+ # resp.fleet_capacity[0].replica_container_group_counts.idle #=> Integer
4327
+ # resp.fleet_capacity[0].replica_container_group_counts.terminating #=> Integer
3821
4328
  # resp.next_token #=> String
3822
4329
  #
3823
4330
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/DescribeFleetCapacity AWS API Documentation
@@ -3902,6 +4409,7 @@ module Aws::GameLift
3902
4409
  # resp.events[0].message #=> String
3903
4410
  # resp.events[0].event_time #=> Time
3904
4411
  # resp.events[0].pre_signed_log_url #=> String
4412
+ # resp.events[0].count #=> Integer
3905
4413
  # resp.next_token #=> String
3906
4414
  #
3907
4415
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/DescribeFleetEvents AWS API Documentation
@@ -4003,10 +4511,13 @@ module Aws::GameLift
4003
4511
 
4004
4512
  # Retrieves the resource capacity settings for a fleet location. The
4005
4513
  # data returned includes the current capacity (number of EC2 instances)
4006
- # and some scaling settings for the requested fleet location. Use this
4007
- # operation to retrieve capacity information for a fleet's remote
4008
- # location or home Region (you can also retrieve home Region capacity by
4009
- # calling `DescribeFleetCapacity`).
4514
+ # and some scaling settings for the requested fleet location. For a
4515
+ # container fleet, this operation also returns counts for replica
4516
+ # container groups.
4517
+ #
4518
+ # Use this operation to retrieve capacity information for a fleet's
4519
+ # remote location or home Region (you can also retrieve home Region
4520
+ # capacity by calling `DescribeFleetCapacity`).
4010
4521
  #
4011
4522
  # To retrieve capacity data, identify a fleet and location.
4012
4523
  #
@@ -4057,6 +4568,10 @@ module Aws::GameLift
4057
4568
  # resp.fleet_capacity.instance_counts.idle #=> Integer
4058
4569
  # resp.fleet_capacity.instance_counts.terminating #=> Integer
4059
4570
  # resp.fleet_capacity.location #=> String
4571
+ # resp.fleet_capacity.replica_container_group_counts.pending #=> Integer
4572
+ # resp.fleet_capacity.replica_container_group_counts.active #=> Integer
4573
+ # resp.fleet_capacity.replica_container_group_counts.idle #=> Integer
4574
+ # resp.fleet_capacity.replica_container_group_counts.terminating #=> Integer
4060
4575
  #
4061
4576
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/DescribeFleetLocationCapacity AWS API Documentation
4062
4577
  #
@@ -4129,24 +4644,26 @@ module Aws::GameLift
4129
4644
  end
4130
4645
 
4131
4646
  # Retrieves a fleet's inbound connection permissions. Connection
4132
- # permissions specify the range of IP addresses and port settings that
4133
- # incoming traffic can use to access server processes in the fleet. Game
4134
- # sessions that are running on instances in the fleet must use
4135
- # connections that fall in this range.
4647
+ # permissions specify IP addresses and port settings that incoming
4648
+ # traffic can use to access server processes in the fleet. Game server
4649
+ # processes that are running in the fleet must use a port that falls
4650
+ # within this range. To connect to game server processes on a container
4651
+ # fleet, the port settings should include one or more of the fleet's
4652
+ # connection ports.
4136
4653
  #
4137
- # This operation can be used in the following ways:
4654
+ # Use this operation in the following ways:
4138
4655
  #
4139
- # * To retrieve the inbound connection permissions for a fleet, identify
4140
- # the fleet's unique identifier.
4656
+ # * To retrieve the port settings for a fleet, identify the fleet's
4657
+ # unique identifier.
4141
4658
  #
4142
4659
  # * To check the status of recent updates to a fleet remote location,
4143
4660
  # specify the fleet ID and a location. Port setting updates can take
4144
4661
  # time to propagate across all locations.
4145
4662
  #
4146
4663
  # If successful, a set of `IpPermission` objects is returned for the
4147
- # requested fleet ID. When a location is specified, a pending status is
4148
- # included. If the requested fleet has been deleted, the result set is
4149
- # empty.
4664
+ # requested fleet ID. When specifying a location, this operation returns
4665
+ # a pending status. If the requested fleet has been deleted, the result
4666
+ # set is empty.
4150
4667
  #
4151
4668
  # **Learn more**
4152
4669
  #
@@ -5354,11 +5871,16 @@ module Aws::GameLift
5354
5871
  end
5355
5872
 
5356
5873
  # Retrieves a fleet's runtime configuration settings. The runtime
5357
- # configuration tells Amazon GameLift which server processes to run (and
5358
- # how) on each instance in the fleet.
5874
+ # configuration determines which server processes run, and how, on
5875
+ # computes in the fleet. For managed EC2 fleets, the runtime
5876
+ # configuration describes server processes that run on each fleet
5877
+ # instance. For container fleets, the runtime configuration describes
5878
+ # server processes that run in each replica container group. You can
5879
+ # update a fleet's runtime configuration at any time using
5880
+ # UpdateRuntimeConfiguration.
5359
5881
  #
5360
- # To get the runtime configuration that is currently in forces for a
5361
- # fleet, provide the fleet ID.
5882
+ # To get the current runtime configuration for a fleet, provide the
5883
+ # fleet ID.
5362
5884
  #
5363
5885
  # If successful, a `RuntimeConfiguration` object is returned for the
5364
5886
  # requested fleet. If the requested fleet has been deleted, the result
@@ -5646,41 +6168,57 @@ module Aws::GameLift
5646
6168
  req.send_request(options)
5647
6169
  end
5648
6170
 
5649
- # Requests authorization to remotely connect to a compute resource in an
5650
- # Amazon GameLift fleet. Call this action to connect to an instance in a
5651
- # managed EC2 fleet if the fleet's game build uses Amazon GameLift
5652
- # server SDK 5.x or later. To connect to instances with game builds that
5653
- # use server SDK 4.x or earlier, call GetInstanceAccess.
6171
+ # **This operation has been expanded to use with the Amazon GameLift
6172
+ # containers feature, which is currently in public preview.**
5654
6173
  #
5655
- # To request access to a compute, identify the specific EC2 instance and
5656
- # the fleet it belongs to. You can retrieve instances for a managed EC2
5657
- # fleet by calling ListCompute.
6174
+ # Requests authorization to remotely connect to a hosting resource in a
6175
+ # Amazon GameLift managed fleet. This operation is not used with Amazon
6176
+ # GameLift Anywhere fleets
5658
6177
  #
5659
- # If successful, this operation returns a set of temporary Amazon Web
6178
+ # To request access, specify the compute name and the fleet ID. If
6179
+ # successful, this operation returns a set of temporary Amazon Web
5660
6180
  # Services credentials, including a two-part access key and a session
5661
- # token. Use these credentials with Amazon EC2 Systems Manager (SSM) to
5662
- # start a session with the compute. For more details, see [ Starting a
5663
- # session (CLI)][1] in the *Amazon EC2 Systems Manager User Guide*.
6181
+ # token.
6182
+ #
6183
+ # **EC2 fleets**
6184
+ #
6185
+ # With an EC2 fleet (where compute type is `EC2`), use these credentials
6186
+ # with Amazon EC2 Systems Manager (SSM) to start a session with the
6187
+ # compute. For more details, see [ Starting a session (CLI)][1] in the
6188
+ # *Amazon EC2 Systems Manager User Guide*.
6189
+ #
6190
+ # **Container fleets**
6191
+ #
6192
+ # With a container fleet (where compute type is `CONTAINER`), use these
6193
+ # credentials and the target value with SSM to connect to the fleet
6194
+ # instance where the container is running. After you're connected to
6195
+ # the instance, use Docker commands to interact with the container.
5664
6196
  #
5665
6197
  # **Learn more**
5666
6198
  #
5667
- # [Remotely connect to fleet instances][2]
6199
+ # * [Remotely connect to fleet instances][2]
5668
6200
  #
5669
- # [Debug fleet issues][3]
6201
+ # * [Debug fleet issues][3]
6202
+ #
6203
+ # * [ Remotely connect to a container fleet][4]
5670
6204
  #
5671
6205
  #
5672
6206
  #
5673
6207
  # [1]: https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-sessions-start.html#sessions-start-cli
5674
6208
  # [2]: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-remote-access.html
5675
6209
  # [3]: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-creating-debug.html
6210
+ # [4]: https://docs.aws.amazon.com/gamelift/latest/developerguide/containers-remote-access.html
5676
6211
  #
5677
6212
  # @option params [required, String] :fleet_id
5678
- # A unique identifier for the fleet that contains the compute resource
6213
+ # A unique identifier for the fleet that holds the compute resource that
5679
6214
  # you want to connect to. You can use either the fleet ID or ARN value.
5680
6215
  #
5681
6216
  # @option params [required, String] :compute_name
5682
6217
  # A unique identifier for the compute resource that you want to connect
5683
- # to. You can use either a registered compute name or an instance ID.
6218
+ # to. For an EC2 fleet compute, use the instance ID. For a container
6219
+ # fleet, use the compute name (for example,
6220
+ # `a123b456c789012d3e4567f8a901b23c/1a234b56-7cd8-9e0f-a1b2-c34d567ef8a9`)
6221
+ # or the compute ARN.
5684
6222
  #
5685
6223
  # @return [Types::GetComputeAccessOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5686
6224
  #
@@ -5689,6 +6227,7 @@ module Aws::GameLift
5689
6227
  # * {Types::GetComputeAccessOutput#compute_name #compute_name} => String
5690
6228
  # * {Types::GetComputeAccessOutput#compute_arn #compute_arn} => String
5691
6229
  # * {Types::GetComputeAccessOutput#credentials #credentials} => Types::AwsCredentials
6230
+ # * {Types::GetComputeAccessOutput#target #target} => String
5692
6231
  #
5693
6232
  # @example Request syntax with placeholder values
5694
6233
  #
@@ -5706,6 +6245,7 @@ module Aws::GameLift
5706
6245
  # resp.credentials.access_key_id #=> String
5707
6246
  # resp.credentials.secret_access_key #=> String
5708
6247
  # resp.credentials.session_token #=> String
6248
+ # resp.target #=> String
5709
6249
  #
5710
6250
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/GetComputeAccess AWS API Documentation
5711
6251
  #
@@ -5716,15 +6256,26 @@ module Aws::GameLift
5716
6256
  req.send_request(options)
5717
6257
  end
5718
6258
 
5719
- # Requests an authentication token from Amazon GameLift for a registered
5720
- # compute in an Anywhere fleet. The game servers that are running on the
5721
- # compute use this token to authenticate with the Amazon GameLift
5722
- # service. Each server process must provide a valid authentication token
5723
- # in its call to the Amazon GameLift server SDK action `InitSDK()`.
5724
- #
5725
- # Authentication tokens are valid for a limited time span. Use a
5726
- # mechanism to regularly request a fresh authentication token before the
5727
- # current token expires.
6259
+ # Requests an authentication token from Amazon GameLift for a compute
6260
+ # resource in an Amazon GameLift Anywhere fleet or container fleet. Game
6261
+ # servers that are running on the compute use this token to communicate
6262
+ # with the Amazon GameLift service, such as when calling the Amazon
6263
+ # GameLift server SDK action `InitSDK()`. Authentication tokens are
6264
+ # valid for a limited time span, so you need to request a fresh token
6265
+ # before the current token expires.
6266
+ #
6267
+ # Use this operation based on the fleet compute type:
6268
+ #
6269
+ # * For `EC2` fleets, auth token retrieval and refresh is handled
6270
+ # automatically. All game servers that are running on all fleet
6271
+ # instances have access to a valid auth token.
6272
+ #
6273
+ # * For `ANYWHERE` and `CONTAINER` fleets, if you're using the Amazon
6274
+ # GameLift Agent, auth token retrieval and refresh is handled
6275
+ # automatically for any container or Anywhere compute where the Agent
6276
+ # is running. If you're not using the Agent, create a mechanism to
6277
+ # retrieve and refresh auth tokens for computes that are running game
6278
+ # server processes.
5728
6279
  #
5729
6280
  # **Learn more**
5730
6281
  #
@@ -5745,7 +6296,11 @@ module Aws::GameLift
5745
6296
  #
5746
6297
  # @option params [required, String] :compute_name
5747
6298
  # The name of the compute resource you are requesting the authentication
5748
- # token for.
6299
+ # token for. For an Anywhere fleet compute, use the registered compute
6300
+ # name. For an EC2 fleet instance, use the instance ID. For a container
6301
+ # fleet, use the compute name (for example,
6302
+ # `a123b456c789012d3e4567f8a901b23c/1a234b56-7cd8-9e0f-a1b2-c34d567ef8a9`)
6303
+ # or the compute ARN.
5749
6304
  #
5750
6305
  # @return [Types::GetComputeAuthTokenOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
5751
6306
  #
@@ -6083,23 +6638,43 @@ module Aws::GameLift
6083
6638
  req.send_request(options)
6084
6639
  end
6085
6640
 
6086
- # Retrieves the compute resources in an Amazon GameLift fleet. You can
6087
- # request information for either managed EC2 fleets or Anywhere fleets.
6641
+ # **This operation has been expanded to use with the Amazon GameLift
6642
+ # containers feature, which is currently in public preview.**
6643
+ #
6644
+ # Retrieves information on the compute resources in an Amazon GameLift
6645
+ # fleet.
6646
+ #
6647
+ # To request a list of computes, specify the fleet ID. Use the
6648
+ # pagination parameters to retrieve results in a set of sequential
6649
+ # pages.
6650
+ #
6651
+ # You can filter the result set by location.
6652
+ #
6653
+ # If successful, this operation returns information on all computes in
6654
+ # the requested fleet. Depending on the fleet's compute type, the
6655
+ # result includes the following information:
6656
+ #
6657
+ # * For `EC2` fleets, this operation returns information about the EC2
6658
+ # instance. Compute names are instance IDs.
6088
6659
  #
6089
- # To request a list of computes, specify the fleet ID. You can filter
6090
- # the result set by location. Use the pagination parameters to retrieve
6091
- # results in a set of sequential pages.
6660
+ # * For `ANYWHERE` fleets, this operation returns the compute names and
6661
+ # details provided when the compute was registered with
6662
+ # `RegisterCompute`. The `GameLiftServiceSdkEndpoint` or
6663
+ # `GameLiftAgentEndpoint` is included.
6092
6664
  #
6093
- # If successful, this operation returns the compute resource for the
6094
- # requested fleet. For managed EC2 fleets, it returns a list of EC2
6095
- # instances. For Anywhere fleets, it returns a list of registered
6096
- # compute names.
6665
+ # * For `CONTAINER` fleets, this operation returns information about
6666
+ # containers that are registered as computes, and the instances
6667
+ # they're running on. Compute names are container names.
6097
6668
  #
6098
6669
  # @option params [required, String] :fleet_id
6099
6670
  # A unique identifier for the fleet to retrieve compute resources for.
6100
6671
  #
6101
6672
  # @option params [String] :location
6102
- # The name of a location to retrieve compute resources for.
6673
+ # The name of a location to retrieve compute resources for. For an
6674
+ # Amazon GameLift Anywhere fleet, use a custom location. For a
6675
+ # multi-location EC2 or container fleet, provide a Amazon Web Services
6676
+ # Region or Local Zone code (for example: `us-west-2` or
6677
+ # `us-west-2-lax-1`).
6103
6678
  #
6104
6679
  # @option params [Integer] :limit
6105
6680
  # The maximum number of results to return. Use this parameter with
@@ -6142,6 +6717,12 @@ module Aws::GameLift
6142
6717
  # resp.compute_list[0].operating_system #=> String, one of "WINDOWS_2012", "AMAZON_LINUX", "AMAZON_LINUX_2", "WINDOWS_2016", "AMAZON_LINUX_2023"
6143
6718
  # resp.compute_list[0].type #=> String, one of "t2.micro", "t2.small", "t2.medium", "t2.large", "c3.large", "c3.xlarge", "c3.2xlarge", "c3.4xlarge", "c3.8xlarge", "c4.large", "c4.xlarge", "c4.2xlarge", "c4.4xlarge", "c4.8xlarge", "c5.large", "c5.xlarge", "c5.2xlarge", "c5.4xlarge", "c5.9xlarge", "c5.12xlarge", "c5.18xlarge", "c5.24xlarge", "c5a.large", "c5a.xlarge", "c5a.2xlarge", "c5a.4xlarge", "c5a.8xlarge", "c5a.12xlarge", "c5a.16xlarge", "c5a.24xlarge", "r3.large", "r3.xlarge", "r3.2xlarge", "r3.4xlarge", "r3.8xlarge", "r4.large", "r4.xlarge", "r4.2xlarge", "r4.4xlarge", "r4.8xlarge", "r4.16xlarge", "r5.large", "r5.xlarge", "r5.2xlarge", "r5.4xlarge", "r5.8xlarge", "r5.12xlarge", "r5.16xlarge", "r5.24xlarge", "r5a.large", "r5a.xlarge", "r5a.2xlarge", "r5a.4xlarge", "r5a.8xlarge", "r5a.12xlarge", "r5a.16xlarge", "r5a.24xlarge", "m3.medium", "m3.large", "m3.xlarge", "m3.2xlarge", "m4.large", "m4.xlarge", "m4.2xlarge", "m4.4xlarge", "m4.10xlarge", "m5.large", "m5.xlarge", "m5.2xlarge", "m5.4xlarge", "m5.8xlarge", "m5.12xlarge", "m5.16xlarge", "m5.24xlarge", "m5a.large", "m5a.xlarge", "m5a.2xlarge", "m5a.4xlarge", "m5a.8xlarge", "m5a.12xlarge", "m5a.16xlarge", "m5a.24xlarge", "c5d.large", "c5d.xlarge", "c5d.2xlarge", "c5d.4xlarge", "c5d.9xlarge", "c5d.12xlarge", "c5d.18xlarge", "c5d.24xlarge", "c6a.large", "c6a.xlarge", "c6a.2xlarge", "c6a.4xlarge", "c6a.8xlarge", "c6a.12xlarge", "c6a.16xlarge", "c6a.24xlarge", "c6i.large", "c6i.xlarge", "c6i.2xlarge", "c6i.4xlarge", "c6i.8xlarge", "c6i.12xlarge", "c6i.16xlarge", "c6i.24xlarge", "r5d.large", "r5d.xlarge", "r5d.2xlarge", "r5d.4xlarge", "r5d.8xlarge", "r5d.12xlarge", "r5d.16xlarge", "r5d.24xlarge", "m6g.medium", "m6g.large", "m6g.xlarge", "m6g.2xlarge", "m6g.4xlarge", "m6g.8xlarge", "m6g.12xlarge", "m6g.16xlarge", "c6g.medium", "c6g.large", "c6g.xlarge", "c6g.2xlarge", "c6g.4xlarge", "c6g.8xlarge", "c6g.12xlarge", "c6g.16xlarge", "r6g.medium", "r6g.large", "r6g.xlarge", "r6g.2xlarge", "r6g.4xlarge", "r6g.8xlarge", "r6g.12xlarge", "r6g.16xlarge", "c6gn.medium", "c6gn.large", "c6gn.xlarge", "c6gn.2xlarge", "c6gn.4xlarge", "c6gn.8xlarge", "c6gn.12xlarge", "c6gn.16xlarge", "c7g.medium", "c7g.large", "c7g.xlarge", "c7g.2xlarge", "c7g.4xlarge", "c7g.8xlarge", "c7g.12xlarge", "c7g.16xlarge", "r7g.medium", "r7g.large", "r7g.xlarge", "r7g.2xlarge", "r7g.4xlarge", "r7g.8xlarge", "r7g.12xlarge", "r7g.16xlarge", "m7g.medium", "m7g.large", "m7g.xlarge", "m7g.2xlarge", "m7g.4xlarge", "m7g.8xlarge", "m7g.12xlarge", "m7g.16xlarge", "g5g.xlarge", "g5g.2xlarge", "g5g.4xlarge", "g5g.8xlarge", "g5g.16xlarge"
6144
6719
  # resp.compute_list[0].game_lift_service_sdk_endpoint #=> String
6720
+ # resp.compute_list[0].game_lift_agent_endpoint #=> String
6721
+ # resp.compute_list[0].instance_id #=> String
6722
+ # resp.compute_list[0].container_attributes.container_port_mappings #=> Array
6723
+ # resp.compute_list[0].container_attributes.container_port_mappings[0].container_port #=> Integer
6724
+ # resp.compute_list[0].container_attributes.container_port_mappings[0].connection_port #=> Integer
6725
+ # resp.compute_list[0].container_attributes.container_port_mappings[0].protocol #=> String, one of "TCP", "UDP"
6145
6726
  # resp.next_token #=> String
6146
6727
  #
6147
6728
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/ListCompute AWS API Documentation
@@ -6153,46 +6734,151 @@ module Aws::GameLift
6153
6734
  req.send_request(options)
6154
6735
  end
6155
6736
 
6737
+ # <b>This operation is used with the Amazon GameLift containers feature,
6738
+ # which is currently in public preview. </b>
6739
+ #
6740
+ # Retrieves all container group definitions for the Amazon Web Services
6741
+ # account and Amazon Web Services Region that are currently in use. You
6742
+ # can filter the result set by the container groups' scheduling
6743
+ # strategy. Use the pagination parameters to retrieve results in a set
6744
+ # of sequential pages.
6745
+ #
6746
+ # <note markdown="1"> This operation returns the list of container group definitions in no
6747
+ # particular order.
6748
+ #
6749
+ # </note>
6750
+ #
6751
+ # **Learn more**
6752
+ #
6753
+ # * [Manage a container group definition][1]
6754
+ #
6755
+ # ^
6756
+ #
6757
+ #
6758
+ #
6759
+ # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/containers-create-groups.html
6760
+ #
6761
+ # @option params [String] :scheduling_strategy
6762
+ # The type of container group definitions to retrieve.
6763
+ #
6764
+ # * `DAEMON` -- Daemon container groups run background processes and are
6765
+ # deployed once per fleet instance.
6766
+ #
6767
+ # * `REPLICA` -- Replica container groups run your game server
6768
+ # application and supporting software. Replica groups might be
6769
+ # deployed multiple times per fleet instance.
6770
+ #
6771
+ # @option params [Integer] :limit
6772
+ # The maximum number of results to return. Use this parameter with
6773
+ # `NextToken` to get results as a set of sequential pages.
6774
+ #
6775
+ # @option params [String] :next_token
6776
+ # A token that indicates the start of the next sequential page of
6777
+ # results. Use the token that is returned with a previous call to this
6778
+ # operation. To start at the beginning of the result set, do not specify
6779
+ # a value.
6780
+ #
6781
+ # @return [Types::ListContainerGroupDefinitionsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6782
+ #
6783
+ # * {Types::ListContainerGroupDefinitionsOutput#container_group_definitions #container_group_definitions} => Array&lt;Types::ContainerGroupDefinition&gt;
6784
+ # * {Types::ListContainerGroupDefinitionsOutput#next_token #next_token} => String
6785
+ #
6786
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
6787
+ #
6788
+ # @example Request syntax with placeholder values
6789
+ #
6790
+ # resp = client.list_container_group_definitions({
6791
+ # scheduling_strategy: "REPLICA", # accepts REPLICA, DAEMON
6792
+ # limit: 1,
6793
+ # next_token: "NonEmptyString",
6794
+ # })
6795
+ #
6796
+ # @example Response structure
6797
+ #
6798
+ # resp.container_group_definitions #=> Array
6799
+ # resp.container_group_definitions[0].container_group_definition_arn #=> String
6800
+ # resp.container_group_definitions[0].creation_time #=> Time
6801
+ # resp.container_group_definitions[0].operating_system #=> String, one of "AMAZON_LINUX_2023"
6802
+ # resp.container_group_definitions[0].name #=> String
6803
+ # resp.container_group_definitions[0].scheduling_strategy #=> String, one of "REPLICA", "DAEMON"
6804
+ # resp.container_group_definitions[0].total_memory_limit #=> Integer
6805
+ # resp.container_group_definitions[0].total_cpu_limit #=> Integer
6806
+ # resp.container_group_definitions[0].container_definitions #=> Array
6807
+ # resp.container_group_definitions[0].container_definitions[0].container_name #=> String
6808
+ # resp.container_group_definitions[0].container_definitions[0].image_uri #=> String
6809
+ # resp.container_group_definitions[0].container_definitions[0].resolved_image_digest #=> String
6810
+ # resp.container_group_definitions[0].container_definitions[0].memory_limits.soft_limit #=> Integer
6811
+ # resp.container_group_definitions[0].container_definitions[0].memory_limits.hard_limit #=> Integer
6812
+ # resp.container_group_definitions[0].container_definitions[0].port_configuration.container_port_ranges #=> Array
6813
+ # resp.container_group_definitions[0].container_definitions[0].port_configuration.container_port_ranges[0].from_port #=> Integer
6814
+ # resp.container_group_definitions[0].container_definitions[0].port_configuration.container_port_ranges[0].to_port #=> Integer
6815
+ # resp.container_group_definitions[0].container_definitions[0].port_configuration.container_port_ranges[0].protocol #=> String, one of "TCP", "UDP"
6816
+ # resp.container_group_definitions[0].container_definitions[0].cpu #=> Integer
6817
+ # resp.container_group_definitions[0].container_definitions[0].health_check.command #=> Array
6818
+ # resp.container_group_definitions[0].container_definitions[0].health_check.command[0] #=> String
6819
+ # resp.container_group_definitions[0].container_definitions[0].health_check.interval #=> Integer
6820
+ # resp.container_group_definitions[0].container_definitions[0].health_check.timeout #=> Integer
6821
+ # resp.container_group_definitions[0].container_definitions[0].health_check.retries #=> Integer
6822
+ # resp.container_group_definitions[0].container_definitions[0].health_check.start_period #=> Integer
6823
+ # resp.container_group_definitions[0].container_definitions[0].command #=> Array
6824
+ # resp.container_group_definitions[0].container_definitions[0].command[0] #=> String
6825
+ # resp.container_group_definitions[0].container_definitions[0].essential #=> Boolean
6826
+ # resp.container_group_definitions[0].container_definitions[0].entry_point #=> Array
6827
+ # resp.container_group_definitions[0].container_definitions[0].entry_point[0] #=> String
6828
+ # resp.container_group_definitions[0].container_definitions[0].working_directory #=> String
6829
+ # resp.container_group_definitions[0].container_definitions[0].environment #=> Array
6830
+ # resp.container_group_definitions[0].container_definitions[0].environment[0].name #=> String
6831
+ # resp.container_group_definitions[0].container_definitions[0].environment[0].value #=> String
6832
+ # resp.container_group_definitions[0].container_definitions[0].depends_on #=> Array
6833
+ # resp.container_group_definitions[0].container_definitions[0].depends_on[0].container_name #=> String
6834
+ # resp.container_group_definitions[0].container_definitions[0].depends_on[0].condition #=> String, one of "START", "COMPLETE", "SUCCESS", "HEALTHY"
6835
+ # resp.container_group_definitions[0].status #=> String, one of "READY", "COPYING", "FAILED"
6836
+ # resp.container_group_definitions[0].status_reason #=> String
6837
+ # resp.next_token #=> String
6838
+ #
6839
+ # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/ListContainerGroupDefinitions AWS API Documentation
6840
+ #
6841
+ # @overload list_container_group_definitions(params = {})
6842
+ # @param [Hash] params ({})
6843
+ def list_container_group_definitions(params = {}, options = {})
6844
+ req = build_request(:list_container_group_definitions, params)
6845
+ req.send_request(options)
6846
+ end
6847
+
6848
+ # **This operation has been expanded to use with the Amazon GameLift
6849
+ # containers feature, which is currently in public preview.**
6850
+ #
6156
6851
  # Retrieves a collection of fleet resources in an Amazon Web Services
6157
- # Region. You can call this operation to get fleets in a previously
6158
- # selected default Region (see
6159
- # [https://docs.aws.amazon.com/credref/latest/refdocs/setting-global-region.html][1]or
6160
- # specify a Region in your request. You can filter the result set to
6161
- # find only those fleets that are deployed with a specific build or
6162
- # script. For fleets that have multiple locations, this operation
6163
- # retrieves fleets based on their home Region only.
6852
+ # Region. You can filter the result set to find only those fleets that
6853
+ # are deployed with a specific build or script. For fleets that have
6854
+ # multiple locations, this operation retrieves fleets based on their
6855
+ # home Region only.
6164
6856
  #
6165
- # This operation can be used in the following ways:
6857
+ # You can use operation in the following ways:
6166
6858
  #
6167
6859
  # * To get a list of all fleets in a Region, don't provide a build or
6168
6860
  # script identifier.
6169
6861
  #
6170
- # * To get a list of all fleets where a specific custom game build is
6171
- # deployed, provide the build ID.
6862
+ # * To get a list of all fleets where a specific game build is deployed,
6863
+ # provide the build ID.
6172
6864
  #
6173
6865
  # * To get a list of all Realtime Servers fleets with a specific
6174
6866
  # configuration script, provide the script ID.
6175
6867
  #
6868
+ # * To get a list of all fleets with a specific container group
6869
+ # definition, provide the `ContainerGroupDefinition` ID.
6870
+ #
6176
6871
  # Use the pagination parameters to retrieve results as a set of
6177
6872
  # sequential pages.
6178
6873
  #
6179
- # If successful, a list of fleet IDs that match the request parameters
6180
- # is returned. A NextToken value is also returned if there are more
6181
- # result pages to retrieve.
6874
+ # If successful, this operation returns a list of fleet IDs that match
6875
+ # the request parameters. A NextToken value is also returned if there
6876
+ # are more result pages to retrieve.
6182
6877
  #
6183
- # <note markdown="1"> Fleet resources are not listed in a particular order.
6878
+ # <note markdown="1"> Fleet IDs are returned in no particular order.
6184
6879
  #
6185
6880
  # </note>
6186
6881
  #
6187
- # **Learn more**
6188
- #
6189
- # [Setting up Amazon GameLift fleets][2]
6190
- #
6191
- #
6192
- #
6193
- # [1]: https://docs.aws.amazon.com/credref/latest/refdocs/setting-global-region.html
6194
- # [2]: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-intro.html
6195
- #
6196
6882
  # @option params [String] :build_id
6197
6883
  # A unique identifier for the build to request fleets for. Use this
6198
6884
  # parameter to return only fleets using a specified build. Use either
@@ -6203,6 +6889,11 @@ module Aws::GameLift
6203
6889
  # this parameter to return only fleets using a specified script. Use
6204
6890
  # either the script ID or ARN value.
6205
6891
  #
6892
+ # @option params [String] :container_group_definition_name
6893
+ # The container group definition name to request fleets for. Use this
6894
+ # parameter to return only fleets that are deployed with the specified
6895
+ # container group definition.
6896
+ #
6206
6897
  # @option params [Integer] :limit
6207
6898
  # The maximum number of results to return. Use this parameter with
6208
6899
  # `NextToken` to get results as a set of sequential pages.
@@ -6225,6 +6916,7 @@ module Aws::GameLift
6225
6916
  # resp = client.list_fleets({
6226
6917
  # build_id: "BuildIdOrArn",
6227
6918
  # script_id: "ScriptIdOrArn",
6919
+ # container_group_definition_name: "ContainerGroupDefinitionNameOrArn",
6228
6920
  # limit: 1,
6229
6921
  # next_token: "NonZeroAndMaxString",
6230
6922
  # })
@@ -6755,35 +7447,46 @@ module Aws::GameLift
6755
7447
  req.send_request(options)
6756
7448
  end
6757
7449
 
6758
- # Registers a compute resource to an Amazon GameLift Anywhere fleet.
6759
- # With Anywhere fleets you can incorporate your own computing hardware
6760
- # into an Amazon GameLift game hosting solution.
6761
- #
6762
- # To register a compute to a fleet, give the compute a name (must be
6763
- # unique within the fleet) and specify the compute resource's DNS name
6764
- # or IP address. Provide the Anywhere fleet ID and a fleet location to
6765
- # associate with the compute being registered. You can optionally
6766
- # include the path to a TLS certificate on the compute resource.
6767
- #
6768
- # If successful, this operation returns the compute details, including
6769
- # an Amazon GameLift SDK endpoint. Game server processes that run on the
6770
- # compute use this endpoint to communicate with the Amazon GameLift
6771
- # service. Each server process includes the SDK endpoint in its call to
6772
- # the Amazon GameLift server SDK action `InitSDK()`.
7450
+ # **This operation has been expanded to use with the Amazon GameLift
7451
+ # containers feature, which is currently in public preview.**
7452
+ #
7453
+ # Registers a compute resource in an Amazon GameLift fleet. Register
7454
+ # computes with an Amazon GameLift Anywhere fleet or a container fleet.
7455
+ #
7456
+ # For an Anywhere fleet or a container fleet that's running the Amazon
7457
+ # GameLift Agent, the Agent handles all compute registry tasks for you.
7458
+ # For an Anywhere fleet that doesn't use the Agent, call this operation
7459
+ # to register fleet computes.
7460
+ #
7461
+ # To register a compute, give the compute a name (must be unique within
7462
+ # the fleet) and specify the compute resource's DNS name or IP address.
7463
+ # Provide a fleet ID and a fleet location to associate with the compute
7464
+ # being registered. You can optionally include the path to a TLS
7465
+ # certificate on the compute resource.
7466
+ #
7467
+ # If successful, this operation returns compute details, including an
7468
+ # Amazon GameLift SDK endpoint or Agent endpoint. Game server processes
7469
+ # running on the compute can use this endpoint to communicate with the
7470
+ # Amazon GameLift service. Each server process includes the SDK endpoint
7471
+ # in its call to the Amazon GameLift server SDK action `InitSDK()`.
7472
+ #
7473
+ # To view compute details, call [DescribeCompute][1] with the compute
7474
+ # name.
6773
7475
  #
6774
7476
  # **Learn more**
6775
7477
  #
6776
- # * [Create an Anywhere fleet][1]
7478
+ # * [Create an Anywhere fleet][2]
6777
7479
  #
6778
- # * [Test your integration][2]
7480
+ # * [Test your integration][3]
6779
7481
  #
6780
- # * [Server SDK reference guides][3] (for version 5.x)
7482
+ # * [Server SDK reference guides][4] (for version 5.x)
6781
7483
  #
6782
7484
  #
6783
7485
  #
6784
- # [1]: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-creating-anywhere.html
6785
- # [2]: https://docs.aws.amazon.com/gamelift/latest/developerguide/integration-testing.html
6786
- # [3]: https://docs.aws.amazon.com/gamelift/latest/developerguide/reference-serversdk.html
7486
+ # [1]: https://docs.aws.amazon.com/gamelift/latest/apireference/API_DescribeCompute.html
7487
+ # [2]: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-creating-anywhere.html
7488
+ # [3]: https://docs.aws.amazon.com/gamelift/latest/developerguide/integration-testing.html
7489
+ # [4]: https://docs.aws.amazon.com/gamelift/latest/developerguide/reference-serversdk.html
6787
7490
  #
6788
7491
  # @option params [required, String] :fleet_id
6789
7492
  # A unique identifier for the fleet to register the compute to. You can
@@ -6837,6 +7540,12 @@ module Aws::GameLift
6837
7540
  # resp.compute.operating_system #=> String, one of "WINDOWS_2012", "AMAZON_LINUX", "AMAZON_LINUX_2", "WINDOWS_2016", "AMAZON_LINUX_2023"
6838
7541
  # resp.compute.type #=> String, one of "t2.micro", "t2.small", "t2.medium", "t2.large", "c3.large", "c3.xlarge", "c3.2xlarge", "c3.4xlarge", "c3.8xlarge", "c4.large", "c4.xlarge", "c4.2xlarge", "c4.4xlarge", "c4.8xlarge", "c5.large", "c5.xlarge", "c5.2xlarge", "c5.4xlarge", "c5.9xlarge", "c5.12xlarge", "c5.18xlarge", "c5.24xlarge", "c5a.large", "c5a.xlarge", "c5a.2xlarge", "c5a.4xlarge", "c5a.8xlarge", "c5a.12xlarge", "c5a.16xlarge", "c5a.24xlarge", "r3.large", "r3.xlarge", "r3.2xlarge", "r3.4xlarge", "r3.8xlarge", "r4.large", "r4.xlarge", "r4.2xlarge", "r4.4xlarge", "r4.8xlarge", "r4.16xlarge", "r5.large", "r5.xlarge", "r5.2xlarge", "r5.4xlarge", "r5.8xlarge", "r5.12xlarge", "r5.16xlarge", "r5.24xlarge", "r5a.large", "r5a.xlarge", "r5a.2xlarge", "r5a.4xlarge", "r5a.8xlarge", "r5a.12xlarge", "r5a.16xlarge", "r5a.24xlarge", "m3.medium", "m3.large", "m3.xlarge", "m3.2xlarge", "m4.large", "m4.xlarge", "m4.2xlarge", "m4.4xlarge", "m4.10xlarge", "m5.large", "m5.xlarge", "m5.2xlarge", "m5.4xlarge", "m5.8xlarge", "m5.12xlarge", "m5.16xlarge", "m5.24xlarge", "m5a.large", "m5a.xlarge", "m5a.2xlarge", "m5a.4xlarge", "m5a.8xlarge", "m5a.12xlarge", "m5a.16xlarge", "m5a.24xlarge", "c5d.large", "c5d.xlarge", "c5d.2xlarge", "c5d.4xlarge", "c5d.9xlarge", "c5d.12xlarge", "c5d.18xlarge", "c5d.24xlarge", "c6a.large", "c6a.xlarge", "c6a.2xlarge", "c6a.4xlarge", "c6a.8xlarge", "c6a.12xlarge", "c6a.16xlarge", "c6a.24xlarge", "c6i.large", "c6i.xlarge", "c6i.2xlarge", "c6i.4xlarge", "c6i.8xlarge", "c6i.12xlarge", "c6i.16xlarge", "c6i.24xlarge", "r5d.large", "r5d.xlarge", "r5d.2xlarge", "r5d.4xlarge", "r5d.8xlarge", "r5d.12xlarge", "r5d.16xlarge", "r5d.24xlarge", "m6g.medium", "m6g.large", "m6g.xlarge", "m6g.2xlarge", "m6g.4xlarge", "m6g.8xlarge", "m6g.12xlarge", "m6g.16xlarge", "c6g.medium", "c6g.large", "c6g.xlarge", "c6g.2xlarge", "c6g.4xlarge", "c6g.8xlarge", "c6g.12xlarge", "c6g.16xlarge", "r6g.medium", "r6g.large", "r6g.xlarge", "r6g.2xlarge", "r6g.4xlarge", "r6g.8xlarge", "r6g.12xlarge", "r6g.16xlarge", "c6gn.medium", "c6gn.large", "c6gn.xlarge", "c6gn.2xlarge", "c6gn.4xlarge", "c6gn.8xlarge", "c6gn.12xlarge", "c6gn.16xlarge", "c7g.medium", "c7g.large", "c7g.xlarge", "c7g.2xlarge", "c7g.4xlarge", "c7g.8xlarge", "c7g.12xlarge", "c7g.16xlarge", "r7g.medium", "r7g.large", "r7g.xlarge", "r7g.2xlarge", "r7g.4xlarge", "r7g.8xlarge", "r7g.12xlarge", "r7g.16xlarge", "m7g.medium", "m7g.large", "m7g.xlarge", "m7g.2xlarge", "m7g.4xlarge", "m7g.8xlarge", "m7g.12xlarge", "m7g.16xlarge", "g5g.xlarge", "g5g.2xlarge", "g5g.4xlarge", "g5g.8xlarge", "g5g.16xlarge"
6839
7542
  # resp.compute.game_lift_service_sdk_endpoint #=> String
7543
+ # resp.compute.game_lift_agent_endpoint #=> String
7544
+ # resp.compute.instance_id #=> String
7545
+ # resp.compute.container_attributes.container_port_mappings #=> Array
7546
+ # resp.compute.container_attributes.container_port_mappings[0].container_port #=> Integer
7547
+ # resp.compute.container_attributes.container_port_mappings[0].connection_port #=> Integer
7548
+ # resp.compute.container_attributes.container_port_mappings[0].protocol #=> String, one of "TCP", "UDP"
6840
7549
  #
6841
7550
  # @see http://docs.aws.amazon.com/goto/WebAPI/gamelift-2015-10-01/RegisterCompute AWS API Documentation
6842
7551
  #
@@ -6938,7 +7647,7 @@ module Aws::GameLift
6938
7647
 
6939
7648
  # Retrieves a fresh set of credentials for use when uploading a new set
6940
7649
  # of game build files to Amazon GameLift's Amazon S3. This is done as
6941
- # part of the build creation process; see [GameSession][1].
7650
+ # part of the build creation process; see [CreateBuild][1].
6942
7651
  #
6943
7652
  # To request new credentials, specify the build ID as returned with an
6944
7653
  # initial `CreateBuild` request. If successful, a new set of credentials
@@ -6991,7 +7700,12 @@ module Aws::GameLift
6991
7700
  req.send_request(options)
6992
7701
  end
6993
7702
 
6994
- # Retrieves the fleet ID that an alias is currently pointing to.
7703
+ # Attempts to retrieve a fleet ID that is associated with an alias.
7704
+ # Specify a unique alias identifier.
7705
+ #
7706
+ # If the alias has a `SIMPLE` routing strategy, Amazon GameLift returns
7707
+ # a fleet ID. If the alias has a `TERMINAL` routing strategy, the result
7708
+ # is a `TerminalRoutingStrategyException`.
6995
7709
  #
6996
7710
  # **Related actions**
6997
7711
  #
@@ -7107,7 +7821,7 @@ module Aws::GameLift
7107
7821
  # status because that practice can cause you to exceed your API limit
7108
7822
  # and generate errors. Instead, configure an Amazon Simple Notification
7109
7823
  # Service (Amazon SNS) topic to receive notifications from a matchmaker
7110
- # or game session placement queue.
7824
+ # or a game session placement queue.
7111
7825
  #
7112
7826
  # When searching for game sessions, you specify exactly where you want
7113
7827
  # to search and provide a search filter expression, a sort expression,
@@ -7845,15 +8559,17 @@ module Aws::GameLift
7845
8559
  #
7846
8560
  # If successful, Amazon GameLift no longer initiates scaling events
7847
8561
  # except in response to manual changes using [UpdateFleetCapacity][1].
8562
+ # To restart fleet actions again, call [StartFleetActions][2].
7848
8563
  #
7849
8564
  # **Learn more**
7850
8565
  #
7851
- # [Setting up Amazon GameLift Fleets][2]
8566
+ # [Setting up Amazon GameLift Fleets][3]
7852
8567
  #
7853
8568
  #
7854
8569
  #
7855
8570
  # [1]: https://docs.aws.amazon.com/gamelift/latest/apireference/API_UpdateFleetCapacity.html
7856
- # [2]: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-intro.html
8571
+ # [2]: https://docs.aws.amazon.com/gamelift/latest/apireference/API_StartFleetActions.html
8572
+ # [3]: https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-intro.html
7857
8573
  #
7858
8574
  # @option params [required, String] :fleet_id
7859
8575
  # A unique identifier for the fleet to stop actions on. You can use
@@ -8201,10 +8917,10 @@ module Aws::GameLift
8201
8917
  req.send_request(options)
8202
8918
  end
8203
8919
 
8204
- # Updates properties for an alias. To update properties, specify the
8205
- # alias ID to be updated and provide the information to be changed. To
8206
- # reassign an alias to another fleet, provide an updated routing
8207
- # strategy. If successful, the updated alias record is returned.
8920
+ # Updates properties for an alias. Specify the unique identifier of the
8921
+ # alias to be updated and the new property values. When reassigning an
8922
+ # alias to a new fleet, provide an updated routing strategy. If
8923
+ # successful, the updated alias record is returned.
8208
8924
  #
8209
8925
  # **Related actions**
8210
8926
  #
@@ -8328,13 +9044,12 @@ module Aws::GameLift
8328
9044
  req.send_request(options)
8329
9045
  end
8330
9046
 
8331
- # Updates a fleet's mutable attributes, including game session
8332
- # protection and resource creation limits.
9047
+ # Updates a fleet's mutable attributes, such as game session protection
9048
+ # and resource creation limits.
8333
9049
  #
8334
9050
  # To update fleet attributes, specify the fleet ID and the property
8335
- # values that you want to change.
8336
- #
8337
- # If successful, an updated `FleetAttributes` object is returned.
9051
+ # values that you want to change. If successful, Amazon GameLift returns
9052
+ # the identifiers for the updated fleet.
8338
9053
  #
8339
9054
  # **Learn more**
8340
9055
  #
@@ -8421,44 +9136,48 @@ module Aws::GameLift
8421
9136
  req.send_request(options)
8422
9137
  end
8423
9138
 
8424
- # Updates capacity settings for a fleet. For fleets with multiple
8425
- # locations, use this operation to manage capacity settings in each
8426
- # location individually. Fleet capacity determines the number of game
8427
- # sessions and players that can be hosted based on the fleet
8428
- # configuration. Use this operation to set the following fleet capacity
8429
- # properties:
8430
- #
8431
- # * Minimum/maximum size: Set hard limits on fleet capacity. Amazon
8432
- # GameLift cannot set the fleet's capacity to a value outside of this
8433
- # range, whether the capacity is changed manually or through automatic
8434
- # scaling.
8435
- #
8436
- # * Desired capacity: Manually set the number of Amazon EC2 instances to
8437
- # be maintained in a fleet location. Before changing a fleet's
8438
- # desired capacity, you may want to call
8439
- # [DescribeEC2InstanceLimits][1] to get the maximum capacity of the
8440
- # fleet's Amazon EC2 instance type. Alternatively, consider using
8441
- # automatic scaling to adjust capacity based on player demand.
8442
- #
8443
- # This operation can be used in the following ways:
8444
- #
8445
- # * To update capacity for a fleet's home Region, or if the fleet has
8446
- # no remote locations, omit the `Location` parameter. The fleet must
8447
- # be in `ACTIVE` status.
9139
+ # **This operation has been expanded to use with the Amazon GameLift
9140
+ # containers feature, which is currently in public preview.**
9141
+ #
9142
+ # Updates capacity settings for a managed EC2 fleet or container fleet.
9143
+ # For these fleets, you adjust capacity by changing the number of
9144
+ # instances in the fleet. Fleet capacity determines the number of game
9145
+ # sessions and players that the fleet can host based on its
9146
+ # configuration. For fleets with multiple locations, use this operation
9147
+ # to manage capacity settings in each location individually.
9148
+ #
9149
+ # Use this operation to set these fleet capacity properties:
9150
+ #
9151
+ # * Minimum/maximum size: Set hard limits on the number of Amazon EC2
9152
+ # instances allowed. If Amazon GameLift receives a request--either
9153
+ # through manual update or automatic scaling--it won't change the
9154
+ # capacity to a value outside of this range.
9155
+ #
9156
+ # * Desired capacity: As an alternative to automatic scaling, manually
9157
+ # set the number of Amazon EC2 instances to be maintained. Before
9158
+ # changing a fleet's desired capacity, check the maximum capacity of
9159
+ # the fleet's Amazon EC2 instance type by calling
9160
+ # [DescribeEC2InstanceLimits][1].
9161
+ #
9162
+ # To update capacity for a fleet's home Region, or if the fleet has no
9163
+ # remote locations, omit the `Location` parameter. The fleet must be in
9164
+ # `ACTIVE` status.
9165
+ #
9166
+ # To update capacity for a fleet's remote location, set the `Location`
9167
+ # parameter to the location to update. The location must be in `ACTIVE`
9168
+ # status.
8448
9169
  #
8449
- # * To update capacity for a fleet's remote location, include the
8450
- # `Location` parameter set to the location to be updated. The location
8451
- # must be in `ACTIVE` status.
9170
+ # If successful, Amazon GameLift updates the capacity settings and
9171
+ # returns the identifiers for the updated fleet and/or location. If a
9172
+ # requested change to desired capacity exceeds the instance type's
9173
+ # limit, the `LimitExceeded` exception occurs.
8452
9174
  #
8453
- # If successful, capacity settings are updated immediately. In response
8454
- # a change in desired capacity, Amazon GameLift initiates steps to start
8455
- # new instances or terminate existing instances in the requested fleet
8456
- # location. This continues until the location's active instance count
8457
- # matches the new desired instance count. You can track a fleet's
8458
- # current capacity by calling [DescribeFleetCapacity][2] or
8459
- # [DescribeFleetLocationCapacity][3]. If the requested desired instance
8460
- # count is higher than the instance type's limit, the `LimitExceeded`
8461
- # exception occurs.
9175
+ # Updates often prompt an immediate change in fleet capacity, such as
9176
+ # when current capacity is different than the new desired capacity or
9177
+ # outside the new limits. In this scenario, Amazon GameLift
9178
+ # automatically initiates steps to add or remove instances in the fleet
9179
+ # location. You can track a fleet's current capacity by calling
9180
+ # [DescribeFleetCapacity][2] or [DescribeFleetLocationCapacity][3].
8462
9181
  #
8463
9182
  # **Learn more**
8464
9183
  #
@@ -8525,7 +9244,7 @@ module Aws::GameLift
8525
9244
  end
8526
9245
 
8527
9246
  # Updates permissions that allow inbound traffic to connect to game
8528
- # sessions that are being hosted on instances in the fleet.
9247
+ # sessions in the fleet.
8529
9248
  #
8530
9249
  # To update settings, specify the fleet ID to be updated and specify the
8531
9250
  # changes to be made. List the permissions you want to add in
@@ -8533,6 +9252,9 @@ module Aws::GameLift
8533
9252
  # in `InboundPermissionRevocations`. Permissions to be removed must
8534
9253
  # match existing fleet permissions.
8535
9254
  #
9255
+ # For a container fleet, inbound permissions must specify port numbers
9256
+ # that are defined in the fleet's connection port settings.
9257
+ #
8536
9258
  # If successful, the fleet ID for the updated fleet is returned. For
8537
9259
  # fleets with remote locations, port setting updates can take time to
8538
9260
  # propagate across all locations. You can check the status of updates in
@@ -9244,22 +9966,25 @@ module Aws::GameLift
9244
9966
  req.send_request(options)
9245
9967
  end
9246
9968
 
9247
- # Updates the current runtime configuration for the specified fleet,
9248
- # which tells Amazon GameLift how to launch server processes on all
9249
- # instances in the fleet. You can update a fleet's runtime
9250
- # configuration at any time after the fleet is created; it does not need
9251
- # to be in `ACTIVE` status.
9969
+ # Updates the runtime configuration for the specified fleet. The runtime
9970
+ # configuration tells Amazon GameLift how to launch server processes on
9971
+ # computes in the fleet. For managed EC2 fleets, it determines what
9972
+ # server processes to run on each fleet instance. For container fleets,
9973
+ # it describes what server processes to run in each replica container
9974
+ # group. You can update a fleet's runtime configuration at any time
9975
+ # after the fleet is created; it does not need to be in `ACTIVE` status.
9252
9976
  #
9253
9977
  # To update runtime configuration, specify the fleet ID and provide a
9254
9978
  # `RuntimeConfiguration` with an updated set of server process
9255
9979
  # configurations.
9256
9980
  #
9257
9981
  # If successful, the fleet's runtime configuration settings are
9258
- # updated. Each instance in the fleet regularly checks for and retrieves
9259
- # updated runtime configurations. Instances immediately begin complying
9260
- # with the new configuration by launching new server processes or not
9261
- # replacing existing processes when they shut down. Updating a fleet's
9262
- # runtime configuration never affects existing server processes.
9982
+ # updated. Fleet computes that run game server processes regularly check
9983
+ # for and receive updated runtime configurations. The computes
9984
+ # immediately take action to comply with the new configuration by
9985
+ # launching new server processes or by not replacing existing processes
9986
+ # when they shut down. Updating a fleet's runtime configuration never
9987
+ # affects existing server processes.
9263
9988
  #
9264
9989
  # **Learn more**
9265
9990
  #
@@ -9274,11 +9999,11 @@ module Aws::GameLift
9274
9999
  # You can use either the fleet ID or ARN value.
9275
10000
  #
9276
10001
  # @option params [required, Types::RuntimeConfiguration] :runtime_configuration
9277
- # Instructions for launching server processes on each instance in the
9278
- # fleet. Server processes run either a custom game build executable or a
9279
- # Realtime Servers script. The runtime configuration lists the types of
9280
- # server processes to run on an instance, how to launch them, and the
9281
- # number of processes to run concurrently.
10002
+ # Instructions for launching server processes on fleet computes. Server
10003
+ # processes run either a custom game build executable or a Realtime
10004
+ # Servers script. The runtime configuration lists the types of server
10005
+ # processes to run, how to launch them, and the number of processes to
10006
+ # run concurrently.
9282
10007
  #
9283
10008
  # @return [Types::UpdateRuntimeConfigurationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
9284
10009
  #
@@ -9475,7 +10200,7 @@ module Aws::GameLift
9475
10200
  params: params,
9476
10201
  config: config)
9477
10202
  context[:gem_name] = 'aws-sdk-gamelift'
9478
- context[:gem_version] = '1.75.0'
10203
+ context[:gem_version] = '1.77.0'
9479
10204
  Seahorse::Client::Request.new(handlers, context)
9480
10205
  end
9481
10206