AI/BI dashboards can now be managed through Terraform.
Dashboard using serialized_dashboard attribute:
data "databricks_sql_warehouse" "starter" {
name = "Starter Warehouse"
}
resource "databricks_dashboard" "dashboard" {
display_name = "New Dashboard"
warehouse_id = data.databricks_sql_warehouse.starter.id
serialized_dashboard = "{\"pages\":[{\"name\":\"new_name\",\"displayName\":\"New Page\"}]}"
embed_credentials = false // Optional
parent_path = "/Shared/provider-test"
}
Dashboard using file_path attribute:
data "databricks_sql_warehouse" "starter" {
name = "Starter Warehouse"
}
resource "databricks_dashboard" "dashboard" {
display_name = "New Dashboard"
warehouse_id = data.databricks_sql_warehouse.starter.id
file_path = "${path.module}/dashboard.json"
embed_credentials = false // Optional
parent_path = "/Shared/provider-test"
}
Argument Reference
The following arguments are supported:
- display_name - (Required) The display name of the dashboard.
- warehouse_id - (Required) The warehouse ID used to run the dashboard.
- serialized_dashboard - (Optional) The contents of the dashboard in serialized string form. Conflicts with file_path.
- file_path - (Optional) The path to the dashboard JSON file. Conflicts with serialized_dashboard.
- embed_credentials - (Optional) Whether to embed credentials in the dashboard. Default is true.
- parent_path - (Required) The workspace path of the folder containing the dashboard. Includes leading slash and no trailing slash.
Ajay Kumar Pandey