Overview
Build a Terraform module to automate the deployment of the WAF Assessment Tool on Databricks, replacing (or complementing) the manual install.ipynb notebook approach.
Motivation
- Enable repeatable, version-controlled, CI/CD-friendly deployments
- Remove the need to manually run a Databricks notebook to stand up the stack
- Support multi-workspace and multi-environment (dev/staging/prod) deployments
Scope
Resources to provision via Terraform
Variables / inputs
workspace_url
catalog, schema
cluster_policy_id (optional)
job_schedule (cron)
genie_space_title
Outputs
- Dashboard URL
- Genie Space URL
- Streamlit App URL
- Job ID
Acceptance Criteria
terraform apply deploys the full stack on a clean workspace
terraform destroy cleanly removes all created resources
- Module is parameterized for multi-workspace use
- State can be stored remotely (e.g., S3/GCS/Azure Blob)
Open Questions
- Which Terraform provider version supports
databricks_dashboard and databricks_app?
- Should this live in a
/terraform directory or a separate repo?
- Do we wrap this in a Terraform Cloud workspace or keep it CLI-only?
Overview
Build a Terraform module to automate the deployment of the WAF Assessment Tool on Databricks, replacing (or complementing) the manual
install.ipynbnotebook approach.Motivation
Scope
Resources to provision via Terraform
WAF_ASSESSMENTv1.7.1.lvdash.jsontemplateuiSettings.genieSpace.overrideIdstreamlit-waf-automation/as a Databricks Appwaf_reload.pyon scheduleVariables / inputs
workspace_urlcatalog,schemacluster_policy_id(optional)job_schedule(cron)genie_space_titleOutputs
Acceptance Criteria
terraform applydeploys the full stack on a clean workspaceterraform destroycleanly removes all created resourcesOpen Questions
databricks_dashboardanddatabricks_app?/terraformdirectory or a separate repo?