Sie können geheime verschlüsselte Werte auf Terraform-Konfigurationen anwenden, die Sie zu Cloud Assembly-Cloud-Vorlagendesigns hinzufügen.

  1. Fügen Sie in Ihrem Git-Repository eine Terraform-Konfigurationsquelldatei hinzu, die die geheimen Eigenschaften als Variablen behandelt.

    In diesem Beispiel einer Terraform-Konfigurationsquelle fungieren die API und Anwendungsschlüssel als geheime Variablen.

    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. Navigieren Sie in Cloud Assembly zu Infrastruktur > Verwaltung > Geheimnisse und geben Sie die geheimen Eigenschaftswerte ein.

    Fügen Sie geheime Namen und entsprechende Werte hinzu. Für die Namen sollte einfach derselbe Name wie der Variablenname aus der Terraform-Quelle eingegeben werden.

    Weitere Informationen finden Sie gegebenenfalls unter Geheime Cloud Assembly-Eigenschaften.

    Liste der Geheimnisse
  3. Importieren Sie in Cloud Assembly die Terraform-Konfiguration zur Verwendung in einer Cloud-Vorlage.

    Navigieren Sie zu Design > Cloud-Vorlagen und klicken Sie auf Neu von > Terraform.

    Hinweis: Obwohl die zur Auswahl stehenden Variablen auf der letzten Seite des Assistenten angezeigt werden, müssen Sie die geheimen Variablen nicht als „Vertraulich“ festlegen. Geheime Cloud Assembly-Variablen sind bereits verschlüsselt und benötigen die vom Assistenten angewendete Verschlüsselung nicht.

    Weitere Informationen finden Sie gegebenenfalls unter Entwerfen für Terraform-Konfigurationen in Cloud Assembly.

    Die Beispiel-Cloud-Vorlage sollte dem folgenden Code ähneln:

    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. Ändern Sie wie angezeigt input im Code-Editor manuell in secret für die geheimen Werte.
    terraform:
      type: Cloud.Terraform.Configuration
      properties:
        variables:
          datadog_api_key: '${secret.datadog_api_key}'
          datadog_app_key: '${secret.datadog_app_key}'
  5. Entfernen Sie im Abschnitt inputs: des Codes die Eingabeeinträge, die durch die Bindungen an geheime Eigenschaften ersetzt wurden.