Skip to content

Create Repository Creation Template

ecr_create_repository_creation_template R Documentation

Creates a repository creation template

Description

Creates a repository creation template. This template is used to define the settings for repositories created by Amazon ECR on your behalf. For example, repositories created through pull through cache actions. For more information, see Private repository creation templates in the Amazon Elastic Container Registry User Guide.

Usage

ecr_create_repository_creation_template(prefix, description,
  encryptionConfiguration, resourceTags, imageTagMutability,
  repositoryPolicy, lifecyclePolicy, appliedFor, customRoleArn)

Arguments

prefix

[required] The repository namespace prefix to associate with the template. All repositories created using this namespace prefix will have the settings defined in this template applied. For example, a prefix of prod would apply to all repositories beginning with ⁠prod/⁠. Similarly, a prefix of prod/team would apply to all repositories beginning with ⁠prod/team/⁠.

To apply a template to all repositories in your registry that don't have an associated creation template, you can use ROOT as the prefix.

There is always an assumed / applied to the end of the prefix. If you specify ecr-public as the prefix, Amazon ECR treats that as ⁠ecr-public/⁠. When using a pull through cache rule, the repository prefix you specify during rule creation is what you should specify as your repository creation template prefix as well.

description

A description for the repository creation template.

encryptionConfiguration

The encryption configuration to use for repositories created using the template.

resourceTags

The metadata to apply to the repository to help you categorize and organize. Each tag consists of a key and an optional value, both of which you define. Tag keys can have a maximum character length of 128 characters, and tag values can have a maximum length of 256 characters.

imageTagMutability

The tag mutability setting for the repository. If this parameter is omitted, the default setting of MUTABLE will be used which will allow image tags to be overwritten. If IMMUTABLE is specified, all image tags within the repository will be immutable which will prevent them from being overwritten.

repositoryPolicy

The repository policy to apply to repositories created using the template. A repository policy is a permissions policy associated with a repository to control access permissions.

lifecyclePolicy

The lifecycle policy to use for repositories created using the template.

appliedFor

[required] A list of enumerable strings representing the Amazon ECR repository creation scenarios that this template will apply towards. The two supported scenarios are PULL_THROUGH_CACHE and REPLICATION

customRoleArn

The ARN of the role to be assumed by Amazon ECR. This role must be in the same account as the registry that you are configuring. Amazon ECR will assume your supplied role when the customRoleArn is specified. When this field isn't specified, Amazon ECR will use the service-linked role for the repository creation template.

Value

A list with the following syntax:

list(
  registryId = "string",
  repositoryCreationTemplate = list(
    prefix = "string",
    description = "string",
    encryptionConfiguration = list(
      encryptionType = "AES256"|"KMS",
      kmsKey = "string"
    ),
    resourceTags = list(
      list(
        Key = "string",
        Value = "string"
      )
    ),
    imageTagMutability = "MUTABLE"|"IMMUTABLE",
    repositoryPolicy = "string",
    lifecyclePolicy = "string",
    appliedFor = list(
      "REPLICATION"|"PULL_THROUGH_CACHE"
    ),
    customRoleArn = "string",
    createdAt = as.POSIXct(
      "2015-01-01"
    ),
    updatedAt = as.POSIXct(
      "2015-01-01"
    )
  )
)

Request syntax

svc$create_repository_creation_template(
  prefix = "string",
  description = "string",
  encryptionConfiguration = list(
    encryptionType = "AES256"|"KMS",
    kmsKey = "string"
  ),
  resourceTags = list(
    list(
      Key = "string",
      Value = "string"
    )
  ),
  imageTagMutability = "MUTABLE"|"IMMUTABLE",
  repositoryPolicy = "string",
  lifecyclePolicy = "string",
  appliedFor = list(
    "REPLICATION"|"PULL_THROUGH_CACHE"
  ),
  customRoleArn = "string"
)

Examples

## Not run: 
# This example creates a repository creation template.
svc$create_repository_creation_template(
  appliedFor = list(
    "REPLICATION",
    "PULL_THROUGH_CACHE"
  ),
  description = "Repos for testing images",
  encryptionConfiguration = list(
    encryptionType = "AES256"
  ),
  imageTagMutability = "MUTABLE",
  lifecyclePolicy = "{\r\n    \"rules\": [\r\n        {\r\n            \"ruleP...",
  prefix = "eng/test",
  repositoryPolicy = "{\r\n  "Version": "2012-10-17",\r\n  "Statement": [\r...",
  resourceTags = list(
    list(
      Key = "environment",
      Value = "test"
    )
  )
)

## End(Not run)