Puede aplicar valores cifrados secretos a las configuraciones de Terraform que agregue a los diseños de plantillas de nube de Cloud Assembly.

  1. En el repositorio de git, agregue un archivo de origen de configuración de Terraform que haga referencia a las propiedades secretas como variables.

    En este ejemplo de origen de configuración de Terraform, las claves de API y aplicación son las variables secretas.

    variable "datadog_api_key" {
      description = "Datadog API Key"
    }
     
    variable "datadog_app_key" {
      description = "Datadog App Key"
    }
    provider "datadog" {
      api_key = "${var.datadog_api_key}"
      app_key = "${var.datadog_app_key}"
    }
     
    # Create a new monitor
    resource "datadog_monitor" "default" {
      # ...
    }
     
    # Create a new timeboard
    resource "datadog_timeboard" "default" {
      # ...
    }
  2. En Cloud Assembly, vaya a Infraestructura > Administración > Secretos e introduzca los valores de propiedad secretos.

    Agregue nombres secretos y sus valores correspondientes. Para los nombres, es más fácil introducir simplemente el mismo nombre de la variable del origen de Terraform.

    Si es necesario, consulte Propiedades secretas de Cloud Assembly para obtener más información.

    Lista de secretos
  3. En Cloud Assembly, importe la configuración de Terraform para su uso en una plantilla de nube.

    Vaya a Diseño > Plantillas de nube y haga clic en Nuevo desde > Terraform.

    Nota: A pesar de que las variables aparecen para su selección en la última página del asistente, no es necesario que configure las variables secretas como confidenciales. Las variables secretas de Cloud Assembly ya estarán cifradas y no necesitarán el cifrado que aplica el asistente.

    Si es necesario, consulte Diseñar para configuraciones de Terraform en Cloud Assembly para obtener más información.

    La plantilla de nube de ejemplo debe ser similar al siguiente código:

    inputs:
      datadog_api_key:
        type: string
        description: Datadog API Key
      datadog_app_key:
        type: string
        description: Datadog App Key
    resources:
      terraform:
        type: Cloud.Terraform.Configuration
        properties:
          variables:
            datadog_api_key: '${input.datadog_api_key}'
            datadog_app_key: '${input.datadog_app_key}'
          providers: []
          terraformVersion: 0.12.29
          configurationSource:
            repositoryId: 0fbf8f5e-54e1-4da3-9508-2b701gf25f51
            commitId: ed12424b249aa50439kr1c268942a4616bd751b6
            sourceDirectory: datadog
  4. En el editor de código, para los valores secretos, cambie manualmente input a secret tal y como se muestra.
    terraform:
      type: Cloud.Terraform.Configuration
      properties:
        variables:
          datadog_api_key: '${secret.datadog_api_key}'
          datadog_app_key: '${secret.datadog_app_key}'
  5. En la sección inputs: del código, elimine las entradas que se reemplazaron por los enlaces a las propiedades secretas.