Skip to content

devops-workflow/terraform-aws-ecs-service-nexus

Repository files navigation

terraform-aws-ecs-service-nexus

CircleCI Github release

Terraform module to manage Nexus service in an ECS cluster

Terraform registry

Usage

Basic Example

module "" {
  source        = "devops-workflow/ecs-service-nexus/aws"
  version       = "0.0.1"
}

Inputs

Name Description Type Default Required
acm_cert_domain Domain name of ACM-managed certificate string `` no
attributes Suffix name with additional attributes (policy, role, etc.) list <list> no
aws_profile - string `` no
delimiter Delimiter to be used between name, namespaces, attributes, etc. string - no
docker_image Docker image to use for task string sonatype/nexus3 no
docker_memory Hard limit on memory use for task container (default 256) string 2048 no
docker_memory_reservation Soft limit on memory use for task container (default 128) string 2048 no
ecs_cluster_arn ARN of ECS cluster in which the service will be deployed string `` no
ecs_desired_count Desired number of containers in the task (default 1) string 1 no
ecs_security_group_id Security group ID of ECS cluster in which the service will be deployed string `` no
environment Environment (ex: dev, qa, stage, prod). (Second or top level namespace. Depending on namespacing options) string mgmt no
instance_type AWS Instance type, if you change, make sure it is compatible with AMI, not all AMIs allow all instance types string t3.medium no
key_name SSH key name to use string devops-2018-12-04 no
lb_enable_http Enable HTTP listener in LB (http or https MUST be enabled) string true no
lb_enable_https Enable HTTPS listener in LB (http or https MUST be enabled) string false no
lb_https_ports - string 443 no
lb_ingress_cidr_blocks CIDR block to whitelist for the load balancer list <list> no
lb_internal Configure LB as internal-only string true no
lb_subnet_ids VPC subnet IDs in which to create the LB (unnecessary if neither lb_enable_https or lb_enable_http are true) list <list> no
mount_point Host directory to map as /nexus-data in container string `` no
name Base name for resources string nexus no
namespace-env Prefix name with the environment. If true, format is: {env}-{name} string true no
namespace-org Prefix name with the organization. If true, format is: {org}-{env namespaced name}. If both env and org namespaces are used, format will be {org}-{env}-{name} string false no
organization Organization name (Top level namespace). string appzen no
region - string us-east-1 no
tags A map of additional tags map <map> no
vpc_id ID of VPC in which ECS cluster is located string `` no

Outputs

Name Description
container_json -
service_iam_role_arn ARN of the IAM Role for the ECS Service
service_iam_role_name Name of the IAM Role for the ECS Task
task_iam_role_arn ARN of the IAM Role for the ECS Task
task_iam_role_name Name of the IAM Role for the ECS Task

Resource Graph of plan

Terraform Graph