Skip to content

AwesomeCICD/ceratf-module-helm-nexus

Repository files navigation

ceratf-module-helm-nexus

Terraform module using Helm to deploy Nexus.

Relies on AWS credentials to retrieve a token for interacting with an EKS cluster. This means that you must have already assumed an AWS role with access to the cluster before you can successfully deploy this Helm chart.

What is Nexus

Nexus by Sonatype is a repository manager that organizes, stores and distributes artifacts needed for development. With Nexus, developers can completely control access to, and deployment of, every artifact in an organization from a single location, making it easier to distribute software.

Requirements

Name Version
terraform >= 1.0
helm >=2.9.0
kubectl >=1.14.0
nexus >=1.21.2

Usage

Basic usage of this module is as follows:

module "nexus" {
	source  = "git@github.com:AwesomeCICD/ceratf-module-helm-nexus?ref=1.0.0"

	depends_on = [module.vault_config]
}

Resources

Name Type
helm_release.nexus resource
kubernetes_namespace.nexus_namespace resource
nexus_repository_docker_hosted.cera_hosted resource
nexus_repository_helm_hosted.cera_helm resource
nexus_security_anonymous.system resource
nexus_security_realms.example resource
nexus_security_role.cera_deploy resource
nexus_security_user.cera_deployer resource
random_password.deployer_password resource
vault_kv_secret_v2.cera_deployer resource

Inputs

Name Description Type Default Required
chart_version helm chart version string "55.0.0" no
namespace namespace to deploy nexus to string "nexus" no
namespace_annotations namespace to deploy nexus to map(string)
{
"istio-injection": "enabled"
}
no
values path to values.yaml file string "." no
vault_mount_path n/a string "secret" no

Outputs

Name Description
admin_password n/a
deployer_password n/a
deployer_username n/a
namespace n/a