Skip to content

ruebroad/terraform-aws-ohp-ecr

 
 

Repository files navigation

Terrform Module - AWS Elastic Container Repositories

license

GitHub Workflow Status

GitHub tag (latest by date)

Maintainer

  • Platform Services

Usage

Requirements

Name Version
terraform ~> 1.0
aws >= 3.0

Providers

Name Version
aws >= 3.0

Modules

No modules.

Resources

Name Type
aws_ecr_lifecycle_policy.main resource
aws_ecr_repository.main resource
aws_ecr_repository_policy.main resource
aws_iam_access_key.pull resource
aws_iam_access_key.push resource
aws_iam_role.ecr_pull_role resource
aws_iam_role.ecr_push_role resource
aws_iam_role_policy_attachment.ecr_pull_role resource
aws_iam_role_policy_attachment.ecr_push_role resource
aws_iam_user.pull resource
aws_iam_user.push resource
aws_iam_user_policy.pull resource
aws_iam_user_policy.push resource
aws_secretsmanager_secret.pull resource
aws_secretsmanager_secret.push resource
aws_secretsmanager_secret_version.pull resource
aws_secretsmanager_secret_version.push resource
aws_iam_policy_document.assume_role_policy_pull data source
aws_iam_policy_document.assume_role_policy_push data source
aws_iam_policy_document.ecr_policy_auth data source
aws_iam_policy_document.ecr_policy_pull data source
aws_iam_policy_document.ecr_policy_push data source
aws_iam_policy_document.ecr_pull_user_policy data source
aws_iam_policy_document.ecr_push_user_policy data source

Inputs

Name Description Type Default Required
create_ecr_policy n/a bool false no
create_iam_role_pull n/a bool false no
create_iam_role_push n/a bool false no
create_iam_user_pull n/a bool false no
create_iam_user_push n/a bool false no
create_lifecycle_policy n/a bool true no
custom_ecr_policy Json formatted ECR policy - overrides any default policy any null no
default_ecr_policy_type pull or push any null no
ecr_policy_principal_type List of principals allowed to use the ECR policy string "AWS" no
ecr_policy_principals List of principals allowed to use the ECR policy list
[
"*"
]
no
ecr_pull_role_policy_arn Arn of ECR policy to attach to pull role string null no
ecr_pull_role_principal_type n/a string "*" no
ecr_pull_role_principals n/a list(any)
[
"*"
]
no
ecr_push_role_policy_arn Arn of ECR policy to attach to push role string null no
ecr_push_role_principal_type n/a string "*" no
ecr_push_role_principals n/a list(any)
[
"*"
]
no
encryption_type (Optional) The encryption type to use for the repository. Valid values are AES256 or KMS. Defaults to AES256 string "AES256" no
expire_untagged_image_days Expire untagged images older than X days number 30 no
image_tag_mutability Image tag immutablity MUTABLE/IMMUTABLE string "IMMUTABLE" no
keep_last_x_tagged_images Keep last X tagged images number 10 no
kms_key (Optional) The ARN of the KMS key to use when encryption_type is KMS. If not specified, uses the default AWS managed key for ECR any null no
lifecycle_policy ECR lifecycle policy (jsonencoded) any null no
name EC Repository Name any n/a yes
pull_iam_role_name ECR Pull Role name - leave blank for default name based on var.name any null no
pull_iam_user_name ECR Pull User name - leave blank for default name based on var.name any null no
push_iam_role_name ECR Push Role name - leave blank for default name based on var.name any null no
push_iam_user_name ECR Push User name - leave blank for default name based on var.name any null no
scan_image_on_push Scan image for vulnerabilities on push bool true no
tag_prefix_list List of tag prefixes list
[
"v"
]
no
tags (Required) Map of tags to apply to repository map(any) {} no

Outputs

Name Description
arn Full ARN of the repository
id The registry ID where the repository was created
url The URL of the repository

About

Terraform Module for AWS ECR

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • HCL 60.6%
  • JavaScript 36.8%
  • Shell 2.6%