container_group_definitions
Creates, updates, deletes or gets a container_group_definition
resource or lists container_group_definitions
in a region
Overview
Name | container_group_definitions |
Type | Resource |
Description | The AWS::GameLift::ContainerGroupDefinition resource creates an Amazon GameLift container group definition. |
Id | aws.gamelift.container_group_definitions |
Fields
Name | Datatype | Description |
---|---|---|
container_group_definition_arn | string | The Amazon Resource Name (ARN) that is assigned to a Amazon GameLift container group resource and uniquely identifies it across all AWS Regions. |
name | string | A descriptive label for the container group definition. |
creation_time | string | A time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (for example "1469498468.057"). |
scheduling_strategy | string | Specifies whether the container group includes replica or daemon containers. |
total_memory_limit | integer | The maximum amount of memory (in MiB) to allocate for this container group. |
total_cpu_limit | integer | The maximum number of CPU units reserved for this container group. The value is expressed as an integer amount of CPU units. (1 vCPU is equal to 1024 CPU units.) |
container_definitions | array | A collection of container definitions that define the containers in this group. |
tags | array | An array of key-value pairs to apply to this resource. |
operating_system | string | The operating system of the container group |
region | string | AWS region. |
Methods
Name | Accessible by | Required Params |
---|---|---|
create_resource | INSERT | Name, TotalMemoryLimit, TotalCpuLimit, ContainerDefinitions, OperatingSystem, region |
delete_resource | DELETE | data__Identifier, region |
update_resource | UPDATE | data__Identifier, data__PatchDocument, region |
list_resources | SELECT | region |
get_resource | SELECT | data__Identifier, region |
SELECT
examples
Gets all container_group_definitions
in a region.
SELECT
region,
container_group_definition_arn,
name,
creation_time,
scheduling_strategy,
total_memory_limit,
total_cpu_limit,
container_definitions,
tags,
operating_system
FROM aws.gamelift.container_group_definitions
WHERE region = 'us-east-1';
Gets all properties from an individual container_group_definition
.
SELECT
region,
container_group_definition_arn,
name,
creation_time,
scheduling_strategy,
total_memory_limit,
total_cpu_limit,
container_definitions,
tags,
operating_system
FROM aws.gamelift.container_group_definitions
WHERE region = 'us-east-1' AND data__Identifier = '<Name>';
INSERT
example
Use the following StackQL query and manifest file to create a new container_group_definition
resource, using stack-deploy
.
- Required Properties
- All Properties
- Manifest
/*+ create */
INSERT INTO aws.gamelift.container_group_definitions (
Name,
TotalMemoryLimit,
TotalCpuLimit,
ContainerDefinitions,
OperatingSystem,
region
)
SELECT
'{{ Name }}',
'{{ TotalMemoryLimit }}',
'{{ TotalCpuLimit }}',
'{{ ContainerDefinitions }}',
'{{ OperatingSystem }}',
'{{ region }}';
/*+ create */
INSERT INTO aws.gamelift.container_group_definitions (
Name,
SchedulingStrategy,
TotalMemoryLimit,
TotalCpuLimit,
ContainerDefinitions,
Tags,
OperatingSystem,
region
)
SELECT
'{{ Name }}',
'{{ SchedulingStrategy }}',
'{{ TotalMemoryLimit }}',
'{{ TotalCpuLimit }}',
'{{ ContainerDefinitions }}',
'{{ Tags }}',
'{{ OperatingSystem }}',
'{{ region }}';
version: 1
name: stack name
description: stack description
providers:
- aws
globals:
- name: region
value: '{{ vars.AWS_REGION }}'
resources:
- name: container_group_definition
props:
- name: Name
value: '{{ Name }}'
- name: SchedulingStrategy
value: '{{ SchedulingStrategy }}'
- name: TotalMemoryLimit
value: '{{ TotalMemoryLimit }}'
- name: TotalCpuLimit
value: '{{ TotalCpuLimit }}'
- name: ContainerDefinitions
value:
- ContainerName: '{{ ContainerName }}'
ImageUri: '{{ ImageUri }}'
ResolvedImageDigest: '{{ ResolvedImageDigest }}'
MemoryLimits:
SoftLimit: '{{ SoftLimit }}'
HardLimit: '{{ HardLimit }}'
PortConfiguration:
ContainerPortRanges:
- FromPort: '{{ FromPort }}'
Protocol: '{{ Protocol }}'
ToPort: '{{ ToPort }}'
Cpu: '{{ Cpu }}'
HealthCheck:
Command:
- '{{ Command[0] }}'
Interval: '{{ Interval }}'
Timeout: '{{ Timeout }}'
Retries: '{{ Retries }}'
StartPeriod: '{{ StartPeriod }}'
Command:
- '{{ Command[0] }}'
Essential: '{{ Essential }}'
EntryPoint:
- '{{ EntryPoint[0] }}'
WorkingDirectory: '{{ WorkingDirectory }}'
Environment:
- Name: '{{ Name }}'
Value: '{{ Value }}'
DependsOn:
- ContainerName: '{{ ContainerName }}'
Condition: '{{ Condition }}'
- name: Tags
value:
- Key: '{{ Key }}'
Value: '{{ Value }}'
- name: OperatingSystem
value: '{{ OperatingSystem }}'
DELETE
example
/*+ delete */
DELETE FROM aws.gamelift.container_group_definitions
WHERE data__Identifier = '<Name>'
AND region = 'us-east-1';
Permissions
To operate on the container_group_definitions
resource, the following permissions are required:
Create
gamelift:CreateContainerGroupDefinition,
gamelift:DescribeContainerGroupDefinition,
gamelift:ListTagsForResource,
gamelift:TagResource,
ecr:BatchCheckLayerAvailability,
ecr:BatchGetImage,
ecr:GetDownloadUrlForLayer,
ecr:DescribeImages
Read
gamelift:DescribeContainerGroupDefinition,
gamelift:ListTagsForResource
Update
gamelift:ListTagsForResource,
gamelift:TagResource,
gamelift:UntagResource
Delete
gamelift:DescribeContainerGroupDefinition,
gamelift:DeleteContainerGroupDefinition
List
gamelift:ListContainerGroupDefinitions