ECR Repository
ECR repo with lifecycle rules, scan-on-push, immutable tags, and cross-account/replication policies.
Verification
Live-testedReally deployed, verified, idempotent and destroyed in a cloud sandbox.
Conformance
- Static validation (fmt · validate · tflint)
- Security scan clean (Checkov)
- Plan tests (mocked: validation rules · outputs)
Provenance
- SHA-256 checksum
- Signature (pending)
Functional
- Live-tested — applied, verified, destroyed
Last verified 2026-06-11 · how we verify
Documentation
aws-ecr
ECR repository with lifecycle rules, scan-on-push, immutable tags, and
cross-account/replication policies — the lifecycle-policy JSON and
least-privilege repository policy are generated for you from typed inputs.
Works with Terraform and OpenTofu (>= 1.6), AWS provider >= 6.0, < 7.0.
Secure defaults:
- Immutable tags — pushed tags can never be silently overwritten
- Scan on push enabled
- Images always encrypted at rest (AES256, or your CMK via
kms_key_arn) force_delete = false— Terraform refuses to destroy a repository that still holds images- Untagged images (superseded layers, failed pushes) expire after 14 days
Lifecycle presets compose into one correctly-prioritized policy:
tagged_image_retention— keep-last-N rules per tag-prefix setuntagged_expiry_days— age out untagged imagesmax_image_count— hard cap on total images (ECR requires thistagStatus=anyrule to carry the highest priority — handled for you)
Cross-account access is least-privilege: pull_principal_arns get exactly the
three pull actions, push_principal_arns add the four push actions, and
allow_lambda_pull grants the Lambda service principal scoped to functions in
your own account. Pass repository_policy / lifecycle_policy JSON to take
full manual control.
Requirements
- Terraform or OpenTofu
>= 1.6 hashicorp/aws>= 6.0, < 7.0
Verification
Static-validated (fmt, validate, tflint). Live apply/destroy testing pending cloud sandbox availability — see catalog status.
License
Commercial — IaC Bazaar EULA. © IaC Bazaar. Original work (not derived from a third-party module).
Usage code & full reference unlock after purchase
The complete copy-paste usage, the full input/output reference, and operational notes ship with your licence — shown here and bundled in the download.
- Usage
- Inputs
- Outputs