{"id":24087267,"url":"https://github.com/hazelops/terraform-aws-ecr","last_synced_at":"2026-02-08T03:33:47.899Z","repository":{"id":103061567,"uuid":"273442057","full_name":"hazelops/terraform-aws-ecr","owner":"hazelops","description":"Terraform ECR Repo","archived":false,"fork":false,"pushed_at":"2024-12-27T22:10:08.000Z","size":32,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2026-01-30T16:54:51.465Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"HCL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hazelops.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-06-19T08:18:24.000Z","updated_at":"2024-12-27T22:08:10.000Z","dependencies_parsed_at":null,"dependency_job_id":"451b908f-5a38-43af-88f4-4bff55bd643d","html_url":"https://github.com/hazelops/terraform-aws-ecr","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/hazelops/terraform-aws-ecr","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hazelops%2Fterraform-aws-ecr","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hazelops%2Fterraform-aws-ecr/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hazelops%2Fterraform-aws-ecr/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hazelops%2Fterraform-aws-ecr/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hazelops","download_url":"https://codeload.github.com/hazelops/terraform-aws-ecr/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hazelops%2Fterraform-aws-ecr/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29219274,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-08T03:18:47.732Z","status":"ssl_error","status_checked_at":"2026-02-08T03:15:31.985Z","response_time":57,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-01-10T03:03:20.363Z","updated_at":"2026-02-08T03:33:47.885Z","avatar_url":"https://github.com/hazelops.png","language":"HCL","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Terraform ECR Module\n[![Terraform Tests](https://github.com/hazelops/terraform-aws-ecr/actions/workflows/linter.yml/badge.svg)](https://github.com/hazelops/terraform-aws-ecr/actions/workflows/linter.yml)\n\n\nTerraform module that creates ECR resources on AWS.\n\n\n## Description\n\nProvision [ECR Repository](https://docs.aws.amazon.com/AmazonECR/latest/userguide/Repositories.html),\n[Repository Policy](https://docs.aws.amazon.com/AmazonECR/latest/userguide/RepositoryPolicies.html) and\n[Lifecycle Policy](https://docs.aws.amazon.com/AmazonECR/latest/userguide/LifecyclePolicies.html).\n\nThis module provides settings:\n\n- Enable access by ARN\n- Automation of cleaning up unused images\n\n## Usage\n\n### Minimal setup \u0026 Unrestricted access to ECR\n\n```hcl\nmodule \"ecr\" {\n  source = \"hazelops/ecr/aws\"\n  version = \"~\u003e 2.0\"\n  name = \"test\"\n}\n```\n\n\u003c!-- BEGIN_TF_DOCS --\u003e\n## Requirements\n\nNo requirements.\n\n## Providers\n\n| Name | Version |\n|------|---------|\n| \u003ca name=\"provider_aws\"\u003e\u003c/a\u003e [aws](#provider\\_aws) | n/a |\n\n## Modules\n\nNo modules.\n\n## Resources\n\n| Name | Type |\n|------|------|\n| [aws_ecr_lifecycle_policy.default](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/ecr_lifecycle_policy) | resource |\n| [aws_ecr_repository.this](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/ecr_repository) | resource |\n| [aws_ecr_repository_policy.this](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/ecr_repository_policy) | resource |\n| [aws_iam_policy_document.this](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/iam_policy_document) | data source |\n\n## Inputs\n\n| Name | Description | Type | Default | Required |\n|------|-------------|------|---------|:--------:|\n| \u003ca name=\"input_ecr_policy\"\u003e\u003c/a\u003e [ecr\\_policy](#input\\_ecr\\_policy) | Optional ECR policy to be applied. | `list(string)` | `[]` | no |\n| \u003ca name=\"input_enabled\"\u003e\u003c/a\u003e [enabled](#input\\_enabled) | If not enabled, no resources will be created. | `bool` | `true` | no |\n| \u003ca name=\"input_encryption_type\"\u003e\u003c/a\u003e [encryption\\_type](#input\\_encryption\\_type) | The encryption type for the repository. Must be one of: `KMS` or `AES256`. Defaults to `AES256.` | `string` | `null` | no |\n| \u003ca name=\"input_force_delete\"\u003e\u003c/a\u003e [force\\_delete](#input\\_force\\_delete) | If true, will delete the repository even if it contains images. | `bool` | `false` | no |\n| \u003ca name=\"input_image_scan_on_push\"\u003e\u003c/a\u003e [image\\_scan\\_on\\_push](#input\\_image\\_scan\\_on\\_push) | Indicates whether images are scanned after being pushed to the repository (`true`) or not scanned (`false`). | `bool` | `false` | no |\n| \u003ca name=\"input_image_tag_mutability\"\u003e\u003c/a\u003e [image\\_tag\\_mutability](#input\\_image\\_tag\\_mutability) | The tag mutability setting for the repository. Must be one of: `MUTABLE` or `IMMUTABLE`. Defaults to `MUTABLE`. | `string` | `\"MUTABLE\"` | no |\n| \u003ca name=\"input_kms_key\"\u003e\u003c/a\u003e [kms\\_key](#input\\_kms\\_key) | The ARN of the KMS key to use when encryption\\_type is `KMS`. If not specified, uses the default AWS managed key for ECR. | `string` | `null` | no |\n| \u003ca name=\"input_max_any_image_count\"\u003e\u003c/a\u003e [max\\_any\\_image\\_count](#input\\_max\\_any\\_image\\_count) | Maximum number of images that you want to retain in repository. | `number` | `100` | no |\n| \u003ca name=\"input_name\"\u003e\u003c/a\u003e [name](#input\\_name) | Name of the ECR repository. | `any` | n/a | yes |\n| \u003ca name=\"input_pull_arns\"\u003e\u003c/a\u003e [pull\\_arns](#input\\_pull\\_arns) | List of IAM ARNs that can pull images. | `list(string)` | `[]` | no |\n| \u003ca name=\"input_push_arns\"\u003e\u003c/a\u003e [push\\_arns](#input\\_push\\_arns) | List of IAM ARNs that can push and pull images and tags. | `list(string)` | `[]` | no |\n| \u003ca name=\"input_tags\"\u003e\u003c/a\u003e [tags](#input\\_tags) | A map of tags to add to all resources. | `map(string)` | `{}` | no |\n\n## Outputs\n\n| Name | Description |\n|------|-------------|\n| \u003ca name=\"output_repository_id\"\u003e\u003c/a\u003e [repository\\_id](#output\\_repository\\_id) | n/a |\n| \u003ca name=\"output_repository_url\"\u003e\u003c/a\u003e [repository\\_url](#output\\_repository\\_url) | n/a |\n\u003c!-- END_TF_DOCS --\u003e\n\n### Terraform Module Registry\n\n![Hazelops logo](https://avatars0.githubusercontent.com/u/63737915?s=25\u0026v=4) [Terraform ECR Repo\n](https://registry.terraform.io/modules/hazelops/ecr/aws)\n\nInspired by modules from [justinm](https://registry.terraform.io/modules/justinm) and [tmknom](https://registry.terraform.io/modules/tmknom)\n\nMaintainer: [Dmitry Borisov](https://github.com/kobrikx)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhazelops%2Fterraform-aws-ecr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhazelops%2Fterraform-aws-ecr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhazelops%2Fterraform-aws-ecr/lists"}