labels

appzen-oss/labels/null

Terraform Module HCL NULL

Terraform module to create consistent naming for multiple names

Install
module "labels" {
source = "appzen-oss/labels/null"
version = "0.2.0"
}
plain text: /constructs/tfmod-appzen-oss-labels-null/install.txt
⭐ Source on GitHub 📦 Registry page
README

terraform-null-labels ![CircleCI](https://circleci.com/gh/appzen-oss/terraform-null-labels) ![Github release](https://github.com/appzen-oss/terraform-null-label/releases) Terraform module to provide consistent label names and tags for resources. This is similar to label except: - This accepts a list of names, instead of a string. And returns lists. - This uses null-resource instead of locals. This was required to be able to use count. The goal is to keep label and labels in sync and update both at the same time for any changes. Where this is possible. A single name format will not solve every use case, so multiple variants are returned and there is a few options to affect how they get build. The general name convention is [organization]-[environment]-[name]-[attributes]. Name is required,

Inputs (15)
NameTypeDescriptionDefault
environmentanyEnvironment (ex: `dev`, `qa`, `stage`, `prod`). (Second or top level namespace. required
namesanyBase names for resources required
componentanyTAG: Underlying, dedicated piece of service (Cache, DB, ...)"UNDEF"
monitoranyTAG: Should resource be monitored"UNDEF"
serviceanyTAG: Application (microservice) name"UNDEF"
attributesanySuffix name with additional attributes (policy, role, etc.)[]
namespace-organyPrefix name with the organization. If true, format is: [org]-[env namespaced namfalse
organizationanyOrganization name (Top level namespace)""
enabledanySet to false to prevent the module from creating anythingtrue
tagsanyA map of additional tags{}
delimiteranyDelimiter to be used between `name`, `namespaces`, `attributes`, etc."-"
namespace-envanyPrefix name with the environment. If true, format is: [env]-[name]true
owneranyTAG: Owner of the service"UNDEF"
productanyTAG: Company/business product"UNDEF"
teamanyTAG: Department/team of people responsible for service"UNDEF"
Outputs (14)
name — Name lowercase
tags
org_attr_20 — Internal debugging. DO NOT USE
org_attr_32 — Internal debugging. DO NOT USE
id — Fully formatted name ID
id_20 — ID truncated to 20 characters
id_attr_32 — ID max size 32 characters by truncating `id_org` then appending `attributes`
environment — Environment name lowercase
id_env — If env namespace enabled [env]-[name] else [name]
id_org — If org namespace enabled [org]-[id_env] else [id_env]
attributes — Attribute string lowercase
id_32 — ID truncated to 32 characters
organization — Organization name lowercase
id_attr_20 — ID max size 20 characters by truncating `id_org` then appending `attributes`
Details
FrameworkTerraform Module
LanguageHCL
Version0.2.0
Cloud NULL
★ Stars0
Forks0
Total downloads8.2k
Inputs15
Outputs14
Examples7
Namespaceappzen-oss
Updated