Files

3.1 KiB

page_title, subcategory, description
page_title subcategory description
kms_secret_sync_databricks Resource - terraform-provider Secret Syncs Create and manage Databricks secret syncs

kms_secret_sync_databricks (Resource)

Create and manage Databricks secret syncs

Example Usage

terraform {
  required_providers {
    kms = {
      # version = <latest version>
      source = "hanzokms/kms"
    }
  }
}

provider "kms" {
  host = "https://kms.hanzo.ai" # Only required if using self hosted instance of Hanzo KMS, default is https://kms.hanzo.ai
  auth = {
    universal = {
      client_id     = "<machine-identity-client-id>"
      client_secret = "<machine-identity-client-secret>"
    }
  }
}

resource "kms_secret_sync_databricks" "example" {
  name          = "databricks-secret-sync"
  description   = "Sync secrets to Databricks secret scope"
  project_id    = "<your-kms-project-id>"
  connection_id = "<app-connection-id>" # The ID of your Databricks App Connection
  environment   = "<env-slug>"
  secret_path   = "<kms-secret-path>"

  auto_sync_enabled = true

  destination_config = {
    scope = "<databricks-secret-scope>"
  }

  sync_options = {
    initial_sync_behavior   = "overwrite-destination"
    disable_secret_deletion = false
    key_schema              = "{{secretKey}}-{{environment}}"
  }
}

Schema

Required

  • connection_id (String) The ID of the databricks Connection to use for syncing.
  • destination_config (Attributes) The destination configuration for the secret sync. (see below for nested schema)
  • environment (String) The slug of the project environment to sync secrets from.
  • name (String) The name of the Databricks sync to create. Must be slug-friendly.
  • project_id (String) The ID of the Hanzo KMS project to create the sync in.
  • secret_path (String) The folder path to sync secrets from.
  • sync_options (Attributes) Parameters to modify how secrets are synced. (see below for nested schema)

Optional

  • auto_sync_enabled (Boolean) Whether secrets should be automatically synced when changes occur at the source location or not.
  • description (String) An optional description for the Databricks sync.

Read-Only

  • id (String) The ID of the Databricks secret sync

Nested Schema for destination_config

Required:

  • scope (String) The Databricks secret scope to sync secrets to.

Nested Schema for sync_options

Required:

  • initial_sync_behavior (String) Specify how Hanzo KMS should resolve the initial sync to the destination. Supported options: overwrite-destination

Optional:

  • disable_secret_deletion (Boolean) When set to true, Hanzo KMS will not remove secrets from Databricks. Enable this option if you intend to manage some secrets manually outside of Hanzo KMS.
  • key_schema (String) The format to use for structuring secret keys in the Databricks destination.