Home > Software engineering >  Pulumi python resource naming convention
Pulumi python resource naming convention

Time:09-22

There is a prebuilt way to include prefixes on resource names when creating them? I am looking for something similar to terraform, but not sure if we need to create it programmatically ...

In terraform I had something like:

variable "org" {
  type = string
  validation {
    condition     = length(var.org) <= 3
    error_message = "The org variable cannot be larger than 3 characters."
  }
}

variable "tenant" {
  type = string
  validation {
    condition     = length(var.tenant) <= 4
    error_message = "The tenant variable cannot be larger than 4 characters."
  }
}

variable "environment" {
  type = string
  validation {
    condition     = length(var.environment) <= 4
    error_message = "The environment variable cannot be larger than 4 characters."
  }
}

And I use the above variables to name an azure resource group like:

module "resource_group_name" {
  source   = "gsoft-inc/naming/azurerm//modules/general/resource_group"
  name     = "main"
  prefixes = [var.org, var.tenant, var.environment]
}

Is possible to do something similar in pulumi?
I saw a similar issue reported here, but looks like this is more under programmatically control(?)

CodePudding user response:

You could use Python's formatting functions directly, like

resource_group = = azure_native.resources.ResourceGroup("main",
    location="eastus",
    resource_group_name="{0}-{1}-{2}-{3}".format(org, tenant, environment, rgname))

You could also define a helper function and use it in multiple places.

  • Related