From 5a4c133ab311ec19e4762faf73082003418e8643 Mon Sep 17 00:00:00 2001 From: Adrien Barret Date: Mon, 4 Apr 2022 15:40:52 -0400 Subject: [PATCH] add search services --- modules/search/search_service/main.tf | 12 ++++++++++++ modules/search/search_service/outputs.tf | 4 ++++ modules/search/search_service/variables.tf | 21 +++++++++++++++++++++ modules/search/search_service/versions.tf | 3 +++ templating/data.json | 11 ++++++++++- templating/package-lock.json | 1 + 6 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 modules/search/search_service/main.tf create mode 100644 modules/search/search_service/outputs.tf create mode 100644 modules/search/search_service/variables.tf create mode 100644 modules/search/search_service/versions.tf diff --git a/modules/search/search_service/main.tf b/modules/search/search_service/main.tf new file mode 100644 index 0000000..9f2fc1a --- /dev/null +++ b/modules/search/search_service/main.tf @@ -0,0 +1,12 @@ +module "search_service" { + source = "../../../." + name = var.name + prefixes = var.prefixes + suffixes = var.suffixes + separator = var.separator != null ? var.separator : "-" + max_length = 64 +} + +locals { + result = regex("^[a-zA-Z0-9]{1}[a-zA-Z0-9-_.]*$", module.search_service.result) +} \ No newline at end of file diff --git a/modules/search/search_service/outputs.tf b/modules/search/search_service/outputs.tf new file mode 100644 index 0000000..e939444 --- /dev/null +++ b/modules/search/search_service/outputs.tf @@ -0,0 +1,4 @@ +output "result" { + description = "The generated Search Service name." + value = local.result +} \ No newline at end of file diff --git a/modules/search/search_service/variables.tf b/modules/search/search_service/variables.tf new file mode 100644 index 0000000..b4290c8 --- /dev/null +++ b/modules/search/search_service/variables.tf @@ -0,0 +1,21 @@ +variable "name" { + description = "Search Service name." + type = string +} + +variable "separator" { + description = "Separator string use to delimit resource name segments." + type = string + default = null +} + +variable "prefixes" { + description = "List of prefixes to append in front of the resource name." + type = list(string) +} + +variable "suffixes" { + description = "List of suffixes to append at the end of the resource name." + type = list(string) + default = null +} \ No newline at end of file diff --git a/modules/search/search_service/versions.tf b/modules/search/search_service/versions.tf new file mode 100644 index 0000000..6b6318d --- /dev/null +++ b/modules/search/search_service/versions.tf @@ -0,0 +1,3 @@ +terraform { + required_version = ">= 0.13" +} diff --git a/templating/data.json b/templating/data.json index 0bb3f19..03af0b1 100644 --- a/templating/data.json +++ b/templating/data.json @@ -296,6 +296,15 @@ "max_length": 130, "separator": "-", "regex": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-][^-]*$" - } + }, + { + "source": "../../../.", + "name": "search_service", + "long_name": "Search Service", + "category": "search", + "max_length": 64, + "separator": "-", + "regex": "^[a-zA-Z0-9]{1}[a-zA-Z0-9-_.]*$" + } ] } diff --git a/templating/package-lock.json b/templating/package-lock.json index 0c1acb2..22a6753 100644 --- a/templating/package-lock.json +++ b/templating/package-lock.json @@ -5,6 +5,7 @@ "requires": true, "packages": { "": { + "name": "templating", "version": "1.0.0", "license": "ISC", "devDependencies": {