Class CfnContainerGroupDefinition

java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
software.amazon.awscdk.CfnElement
software.amazon.awscdk.CfnRefElement
software.amazon.awscdk.CfnResource
software.amazon.awscdk.services.gamelift.CfnContainerGroupDefinition
All Implemented Interfaces:
IInspectable, ITaggableV2, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct, software.constructs.IDependable

@Generated(value="jsii-pacmak/1.104.0 (build e79254c)", date="2025-01-15T21:09:19.841Z") @Stability(Stable) public class CfnContainerGroupDefinition extends CfnResource implements IInspectable, ITaggableV2
The properties that describe a container group resource.

You can update all properties of a container group definition properties. Updates to a container group definition are saved as new versions.

Used with: CreateContainerGroupDefinition

Returned by: DescribeContainerGroupDefinition , ListContainerGroupDefinitions , UpdateContainerGroupDefinition

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.gamelift.*;
 CfnContainerGroupDefinition cfnContainerGroupDefinition = CfnContainerGroupDefinition.Builder.create(this, "MyCfnContainerGroupDefinition")
         .name("name")
         .operatingSystem("operatingSystem")
         .totalMemoryLimitMebibytes(123)
         .totalVcpuLimit(123)
         // the properties below are optional
         .containerGroupType("containerGroupType")
         .gameServerContainerDefinition(GameServerContainerDefinitionProperty.builder()
                 .containerName("containerName")
                 .imageUri("imageUri")
                 .serverSdkVersion("serverSdkVersion")
                 // the properties below are optional
                 .dependsOn(List.of(ContainerDependencyProperty.builder()
                         .condition("condition")
                         .containerName("containerName")
                         .build()))
                 .environmentOverride(List.of(ContainerEnvironmentProperty.builder()
                         .name("name")
                         .value("value")
                         .build()))
                 .mountPoints(List.of(ContainerMountPointProperty.builder()
                         .instancePath("instancePath")
                         // the properties below are optional
                         .accessLevel("accessLevel")
                         .containerPath("containerPath")
                         .build()))
                 .portConfiguration(PortConfigurationProperty.builder()
                         .containerPortRanges(List.of(ContainerPortRangeProperty.builder()
                                 .fromPort(123)
                                 .protocol("protocol")
                                 .toPort(123)
                                 .build()))
                         .build())
                 .resolvedImageDigest("resolvedImageDigest")
                 .build())
         .sourceVersionNumber(123)
         .supportContainerDefinitions(List.of(SupportContainerDefinitionProperty.builder()
                 .containerName("containerName")
                 .imageUri("imageUri")
                 // the properties below are optional
                 .dependsOn(List.of(ContainerDependencyProperty.builder()
                         .condition("condition")
                         .containerName("containerName")
                         .build()))
                 .environmentOverride(List.of(ContainerEnvironmentProperty.builder()
                         .name("name")
                         .value("value")
                         .build()))
                 .essential(false)
                 .healthCheck(ContainerHealthCheckProperty.builder()
                         .command(List.of("command"))
                         // the properties below are optional
                         .interval(123)
                         .retries(123)
                         .startPeriod(123)
                         .timeout(123)
                         .build())
                 .memoryHardLimitMebibytes(123)
                 .mountPoints(List.of(ContainerMountPointProperty.builder()
                         .instancePath("instancePath")
                         // the properties below are optional
                         .accessLevel("accessLevel")
                         .containerPath("containerPath")
                         .build()))
                 .portConfiguration(PortConfigurationProperty.builder()
                         .containerPortRanges(List.of(ContainerPortRangeProperty.builder()
                                 .fromPort(123)
                                 .protocol("protocol")
                                 .toPort(123)
                                 .build()))
                         .build())
                 .resolvedImageDigest("resolvedImageDigest")
                 .vcpu(123)
                 .build()))
         .tags(List.of(CfnTag.builder()
                 .key("key")
                 .value("value")
                 .build()))
         .versionDescription("versionDescription")
         .build();
 

See Also:
  • Field Details

    • CFN_RESOURCE_TYPE_NAME

      @Stability(Stable) public static final String CFN_RESOURCE_TYPE_NAME
      The CloudFormation resource type name for this resource class.
  • Constructor Details

    • CfnContainerGroupDefinition

      protected CfnContainerGroupDefinition(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnContainerGroupDefinition

      protected CfnContainerGroupDefinition(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnContainerGroupDefinition

      @Stability(Stable) public CfnContainerGroupDefinition(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull CfnContainerGroupDefinitionProps props)
      Parameters:
      scope - Scope in which this resource is defined. This parameter is required.
      id - Construct identifier for this resource (unique in its scope). This parameter is required.
      props - Resource properties. This parameter is required.
  • Method Details

    • inspect

      @Stability(Stable) public void inspect(@NotNull TreeInspector inspector)
      Examines the CloudFormation resource and discloses attributes.

      Specified by:
      inspect in interface IInspectable
      Parameters:
      inspector - tree inspector to collect and process attributes. This parameter is required.
    • renderProperties

      @Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
      Overrides:
      renderProperties in class CfnResource
      Parameters:
      props - This parameter is required.
    • getAttrContainerGroupDefinitionArn

      @Stability(Stable) @NotNull public String getAttrContainerGroupDefinitionArn()
      The Amazon Resource Name ( ARN ) that is assigned to an Amazon GameLift ContainerGroupDefinition resource. It uniquely identifies the resource across all AWS Regions. Format is arn:aws:gamelift:[region]::containergroupdefinition/[container group definition name]:[version] .
    • getAttrCreationTime

      @Stability(Stable) @NotNull public String getAttrCreationTime()
      A time stamp indicating when this data object was created.

      Format is a number expressed in Unix time as milliseconds (for example "1469498468.057" ).

    • getAttrStatus

      @Stability(Stable) @NotNull public String getAttrStatus()
      Current status of the container group definition resource. Values include:.

      • COPYING -- Amazon GameLift is in the process of making copies of all container images that are defined in the group. While in this state, the resource can't be used to create a container fleet.
      • READY -- Amazon GameLift has copied the registry images for all containers that are defined in the group. You can use a container group definition in this status to create a container fleet.
      • FAILED -- Amazon GameLift failed to create a valid container group definition resource. For more details on the cause of the failure, see StatusReason . A container group definition resource in failed status will be deleted within a few minutes.
    • getAttrStatusReason

      @Stability(Stable) @NotNull public String getAttrStatusReason()
      Additional information about a container group definition that's in FAILED status. Possible reasons include:.

      • An internal issue prevented Amazon GameLift from creating the container group definition resource. Delete the failed resource and call CreateContainerGroupDefinition again.
      • An access-denied message means that you don't have permissions to access the container image on ECR. See IAM permission examples for help setting up required IAM permissions for Amazon GameLift.
      • The ImageUri value for at least one of the containers in the container group definition was invalid or not found in the current AWS account.
      • At least one of the container images referenced in the container group definition exceeds the allowed size. For size limits, see Amazon GameLift endpoints and quotas .
      • At least one of the container images referenced in the container group definition uses a different operating system than the one defined for the container group.
    • getAttrVersionNumber

      @Stability(Stable) @NotNull public Number getAttrVersionNumber()
      Indicates the version of a particular container group definition.

      This number is incremented automatically when you update a container group definition. You can view, update, or delete individual versions or the entire container group definition.

    • getCdkTagManager

      @Stability(Stable) @NotNull public TagManager getCdkTagManager()
      Tag Manager which manages the tags for this resource.
      Specified by:
      getCdkTagManager in interface ITaggableV2
    • getCfnProperties

      @Stability(Stable) @NotNull protected Map<String,Object> getCfnProperties()
      Overrides:
      getCfnProperties in class CfnResource
    • getName

      @Stability(Stable) @NotNull public String getName()
      A descriptive identifier for the container group definition.
    • setName

      @Stability(Stable) public void setName(@NotNull String value)
      A descriptive identifier for the container group definition.
    • getOperatingSystem

      @Stability(Stable) @NotNull public String getOperatingSystem()
      The platform that all containers in the container group definition run on.
    • setOperatingSystem

      @Stability(Stable) public void setOperatingSystem(@NotNull String value)
      The platform that all containers in the container group definition run on.
    • getTotalMemoryLimitMebibytes

      @Stability(Stable) @NotNull public Number getTotalMemoryLimitMebibytes()
      The amount of memory (in MiB) on a fleet instance to allocate for the container group.
    • setTotalMemoryLimitMebibytes

      @Stability(Stable) public void setTotalMemoryLimitMebibytes(@NotNull Number value)
      The amount of memory (in MiB) on a fleet instance to allocate for the container group.
    • getTotalVcpuLimit

      @Stability(Stable) @NotNull public Number getTotalVcpuLimit()
      The amount of vCPU units on a fleet instance to allocate for the container group (1 vCPU is equal to 1024 CPU units).
    • setTotalVcpuLimit

      @Stability(Stable) public void setTotalVcpuLimit(@NotNull Number value)
      The amount of vCPU units on a fleet instance to allocate for the container group (1 vCPU is equal to 1024 CPU units).
    • getContainerGroupType

      @Stability(Stable) @Nullable public String getContainerGroupType()
      The type of container group.
    • setContainerGroupType

      @Stability(Stable) public void setContainerGroupType(@Nullable String value)
      The type of container group.
    • getGameServerContainerDefinition

      @Stability(Stable) @Nullable public Object getGameServerContainerDefinition()
      The definition for the game server container in this group.
    • setGameServerContainerDefinition

      @Stability(Stable) public void setGameServerContainerDefinition(@Nullable IResolvable value)
      The definition for the game server container in this group.
    • setGameServerContainerDefinition

      @Stability(Stable) public void setGameServerContainerDefinition(@Nullable CfnContainerGroupDefinition.GameServerContainerDefinitionProperty value)
      The definition for the game server container in this group.
    • getSourceVersionNumber

      @Stability(Stable) @Nullable public Number getSourceVersionNumber()
      A specific ContainerGroupDefinition version to be updated.
    • setSourceVersionNumber

      @Stability(Stable) public void setSourceVersionNumber(@Nullable Number value)
      A specific ContainerGroupDefinition version to be updated.
    • getSupportContainerDefinitions

      @Stability(Stable) @Nullable public Object getSupportContainerDefinitions()
      The set of definitions for support containers in this group.
    • setSupportContainerDefinitions

      @Stability(Stable) public void setSupportContainerDefinitions(@Nullable IResolvable value)
      The set of definitions for support containers in this group.
    • setSupportContainerDefinitions

      @Stability(Stable) public void setSupportContainerDefinitions(@Nullable List<Object> value)
      The set of definitions for support containers in this group.
    • getTags

      @Stability(Stable) @Nullable public List<CfnTag> getTags()
      An array of key-value pairs to apply to this resource.
    • setTags

      @Stability(Stable) public void setTags(@Nullable List<CfnTag> value)
      An array of key-value pairs to apply to this resource.
    • getVersionDescription

      @Stability(Stable) @Nullable public String getVersionDescription()
      An optional description that was provided for a container group definition update.
    • setVersionDescription

      @Stability(Stable) public void setVersionDescription(@Nullable String value)
      An optional description that was provided for a container group definition update.