ECR
Terraform module to create AWS ECR resources
Inputs
30
attach_repository_policyoptionalboolDetermines whether a repository policy will be attached to the repository
truecreateoptionalboolDetermines whether resources will be created (affects all resources)
truecreate_lifecycle_policyoptionalboolDetermines whether a lifecycle policy will be created
truecreate_registry_policyoptionalboolDetermines whether a registry policy will be created
falsecreate_registry_replication_configurationoptionalboolDetermines whether a registry replication configuration will be created
falsecreate_repositoryoptionalboolDetermines whether a repository will be created
truecreate_repository_policyoptionalboolDetermines whether a repository policy will be created
truemanage_registry_scanning_configurationoptionalboolDetermines whether the registry scanning configuration will be managed
falsepublic_repository_catalog_dataoptionalobject({ about_text = optional(string) architectures = optional(list(string)) de…Catalog data configuration for the repository
nullregionoptionalstringRegion where this resource will be managed. Defaults to the Region set in the provider configuration.
nullregistry_policyoptionalstringThe policy document. This is a JSON formatted string
nullregistry_pull_through_cache_rulesoptionalmap(object({ ecr_repository_prefix = string upstream_registry_url = string crede…List of pull through cache rules to create
{}registry_replication_rulesoptionallist(object({ destinations = list(object({ region = string registry_id = string …The replication rules for a replication configuration. A maximum of 10 are allowed
nullregistry_scan_rulesoptionallist(object({ scan_frequency = string filter = list(object({ filter = string fil…One or multiple blocks specifying scanning rules to determine which repository filters are used and at what frequency scanning will occur
nullregistry_scan_typeoptionalstringthe scanning type to set for the registry. Can be either `ENHANCED` or `BASIC`
ENHANCEDrepository_encryption_typeoptionalstringThe encryption type for the repository. Must be one of: `KMS` or `AES256`. Defaults to `AES256`
nullrepository_force_deleteoptionalboolIf `true`, will delete the repository even if it contains images. Defaults to `false`
nullrepository_image_scan_on_pushoptionalboolIndicates whether images are scanned after being pushed to the repository (`true`) or not scanned (`false`)
truerepository_image_tag_mutabilityoptionalstringThe tag mutability setting for the repository. Must be one of: `MUTABLE`, `MUTABLE_WITH_EXCLUSION`, `IMMUTABLE`, or `IMMUTABLE_WITH_EXCLUSION`. Defaults to `IMMUTABLE`
IMMUTABLErepository_image_tag_mutability_exclusion_filteroptionallist(object({ filter = string filter_type = string }))Configuration block that defines filters to specify which image tags can override the default tag mutability setting. Only applicable when image_tag_mutability is set to IMMUTABLE_WITH_EXCLUSION or MUTABLE_WITH_EXCLUSION.
nullrepository_kms_keyoptionalstringThe ARN of the KMS key to use when encryption_type is `KMS`. If not specified, uses the default AWS managed key for ECR
nullrepository_lambda_read_access_arnsoptionallist(string)The ARNs of the Lambda service roles that have read access to the repository
[]repository_lifecycle_policyoptionalstringThe policy document. This is a JSON formatted string. See more details about [Policy Parameters](http://docs.aws.amazon.com/AmazonECR/latest/userguide/LifecyclePolicies.html#lifecycle_policy_parameters) in the official AWS docs
""repository_nameoptionalstringThe name of the repository
""repository_policyoptionalstringThe JSON policy to apply to the repository. If not specified, uses the default policy
nullrepository_policy_statementsoptionalmap(object({ sid = optional(string) actions = optional(list(string)) not_actions…A map of IAM policy [statements](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/iam_policy_document#statement) for custom permission usage
nullrepository_read_access_arnsoptionallist(string)The ARNs of the IAM users/roles that have read access to the repository
[]repository_read_write_access_arnsoptionallist(string)The ARNs of the IAM users/roles that have read/write access to the repository
[]repository_typeoptionalstringThe type of repository to create. Either `public` or `private`
privatetagsoptionalmap(string)A map of tags to add to all resources
{}All 30 are optional — the module deploys with none of them set.
Outputs
4
repository_arnFull ARN of the repository
repository_nameName of the repository
repository_registry_idThe registry ID where the repository was created
repository_urlThe URL of the repository
What the agent wires into the next module. An edge on the architecture diagram is one of these consumed by something else.