Skip to content

Commit

Permalink
Gcp workspace (#153)
Browse files Browse the repository at this point in the history
* initial changes

* uc error

* Update library/functions.tmpl

Co-authored-by: Arpit Jasapara <87999496+arpitjasa-db@users.noreply.github.com>

* Update library/functions.tmpl

Co-authored-by: Arpit Jasapara <87999496+arpitjasa-db@users.noreply.github.com>

* Update library/template_variables.tmpl

Co-authored-by: Arpit Jasapara <87999496+arpitjasa-db@users.noreply.github.com>

* Update databricks_template_schema.json

Co-authored-by: Arpit Jasapara <87999496+arpitjasa-db@users.noreply.github.com>

* Update library/template_variables.tmpl

Co-authored-by: Arpit Jasapara <87999496+arpitjasa-db@users.noreply.github.com>

* removing dupes

* Update databricks_template_schema.json

Co-authored-by: Arpit Jasapara <87999496+arpitjasa-db@users.noreply.github.com>

* Update tests/utils.py

Co-authored-by: Arpit Jasapara <87999496+arpitjasa-db@users.noreply.github.com>

* dupes in doc

* de-dedupes

* apply comments

* Additional fixes

* Fix gcp and uc skip tests

* fix yaml

* fix yaml

---------

Co-authored-by: Arpit Jasapara <87999496+arpitjasa-db@users.noreply.github.com>
Co-authored-by: Arpit Jasapara <arpit.jasapara@databricks.com>
  • Loading branch information
3 people authored Mar 1, 2024
1 parent 2f94833 commit 038b4f1
Show file tree
Hide file tree
Showing 19 changed files with 180 additions and 92 deletions.
11 changes: 9 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ This will prompt for parameters for initialization. Some of these parameters are
We expect Data Scientists to specify ``Project_Only`` to get
started in a development capacity, and when ready to move the project to Staging/Production, CI/CD can be set up. We expect that step to be done by Machine Learning Engineers (MLEs) who can specify ``CICD_Only`` during initialization and use the provided workflow to setup CI/CD for one or more projects.
* ``input_root_dir``: name of the root directory. When initializing with ``CICD_and_Project``, this field will automatically be set to ``input_project_name``.
* ``input_cloud``: Cloud provider you use with Databricks (AWS or Azure), note GCP is not supported at this time.
* ``input_cloud``: Cloud provider you use with Databricks (AWS, Azure, or GCP).

Others must be correctly specified for CI/CD to work:
* ``input_cicd_platform`` : CI/CD platform of choice (GitHub Actions or GitHub Actions for GitHub Enterprise Servers or Azure DevOps)
Expand Down Expand Up @@ -198,7 +198,7 @@ a generated new ML project. To do this, you can create an example
project from your local checkout of the repo, and inspect its contents/run tests within
the project.

We provide example project configs for Azure (using both GitHub and Azure DevOps) and AWS (using GitHub) under `tests/example-project-configs`.
We provide example project configs for Azure (using both GitHub and Azure DevOps), AWS (using GitHub), and GCP (using GitHub) under `tests/example-project-configs`.
To create an example Azure project, using Azure DevOps as the CI/CD platform, run the following from the desired parent directory
of the example project:

Expand All @@ -214,3 +214,10 @@ To create an example AWS project, using GitHub Actions for CI/CD, run:
MLOPS_STACKS_PATH=~/mlops-stacks
databricks bundle init "$MLOPS_STACKS_PATH" --config-file "$MLOPS_STACKS_PATH/tests/example-project-configs/aws/aws-github.json"
```

To create an example GCP project, using GitHub Actions for CI/CD, run:
```
# Note: update MLOPS_STACKS_PATH to the path to your local checkout of the MLOps Stacks repo
MLOPS_STACKS_PATH=~/mlops-stacks
databricks bundle init "$MLOPS_STACKS_PATH" --config-file "$MLOPS_STACKS_PATH/tests/example-project-configs/gcp/gcp-github.json"
```
6 changes: 3 additions & 3 deletions databricks_template_schema.json
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@
"type": "string",
"description": "\nSelect cloud",
"default": "azure",
"enum": ["azure", "aws"]
"enum": ["azure", "aws", "gcp"]
},
"input_cicd_platform": {
"order": 5,
Expand All @@ -61,7 +61,7 @@
"input_databricks_staging_workspace_host": {
"order": 6,
"type": "string",
"default": "{{if eq .input_cloud `azure`}}https://adb-xxxx.xx.azuredatabricks.net{{else if eq .input_cloud `aws`}}https://your-staging-workspace.cloud.databricks.com{{end}}",
"default": "{{if eq .input_cloud `azure`}}https://adb-xxxx.xx.azuredatabricks.net{{else if eq .input_cloud `aws`}}https://your-staging-workspace.cloud.databricks.com{{else if eq .input_cloud `gcp`}}https://your-staging-workspace.gcp.databricks.com{{end}}",
"description": "\nURL of staging Databricks workspace,\nIt will run PR CI and preview changes before they're deployed to production.\nDefault",
"pattern": "^(https.*)?$",
"pattern_match_failure_message": "Databricks staging workspace host URLs must start with https. Got invalid workspace host.",
Expand All @@ -76,7 +76,7 @@
"input_databricks_prod_workspace_host": {
"order": 7,
"type": "string",
"default": "{{if eq .input_cloud `azure`}}https://adb-xxxx.xx.azuredatabricks.net{{else if eq .input_cloud `aws`}}https://your-prod-workspace.cloud.databricks.com{{end}}",
"default": "{{if eq .input_cloud `azure`}}https://adb-xxxx.xx.azuredatabricks.net{{else if eq .input_cloud `aws`}}https://your-prod-workspace.cloud.databricks.com{{else if eq .input_cloud `gcp`}}https://your-prod-workspace.gcp.databricks.com{{end}}",
"description": "\nURL of production Databricks workspace.\nDefault",
"pattern": "^(https.*)?$",
"pattern_match_failure_message": "Databricks production workspace host URLs must start with https. Got invalid workspace host.",
Expand Down
1 change: 0 additions & 1 deletion hooks/pre_gen_project.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@

if __name__ == "__main__":
raise ValueError(
"MLOps project creation has been migrated to use Databricks CLI. "
Expand Down
8 changes: 7 additions & 1 deletion library/functions.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,15 @@
{{- else -}}
https://docs.databricks.com/{{ print .path }}
{{- end -}}
{{- else if eq .cloud `gcp` -}}
{{- if eq .path `repos/git-operations-with-repos#add-a-repo-and-connect-remotely-later` -}}
https://docs.gcp.databricks.com/en/repos/git-operations-with-repos.html#clone-a-repo-connected-to-a-remote-repo
{{- else -}}
https://docs.gcp.databricks.com/{{ print .path }}
{{- end -}}
{{- else if eq .cloud `azure` -}}
https://learn.microsoft.com/azure/databricks/{{ (regexp `\.html`).ReplaceAllString (print .path) `` }}
{{- else -}}
{{ fail `Invalid selection of cloud in function generate_doc_link. Please choose from [azure, aws]` }}
{{ fail `Invalid selection of cloud in function generate_doc_link. Please choose from [azure, aws, gcp]` }}
{{- end -}}
{{- end }}
4 changes: 4 additions & 0 deletions library/input_validation.tmpl
Original file line number Diff line number Diff line change
@@ -1,2 +1,6 @@
{{ define `validation` }}
- Validate to not try UC + GCP
{{- if and (eq .input_include_models_in_unity_catalog `yes`) (eq .input_cloud `gcp`) -}}
{{ fail `The Model Registry in Unity Catalog cannot be used with GCP at this time. Please only use one of the two or neither.` }}
{{- end -}}
{{- end -}}
6 changes: 6 additions & 0 deletions library/template_variables.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@
https://adb-xxxx.xx.azuredatabricks.net
{{- else if eq .input_cloud `aws` -}}
https://your-prod-workspace.cloud.databricks.com
{{- else if eq .input_cloud `gcp` -}}
https://your-prod-workspace.gcp.databricks.com
{{- end -}}
{{- end -}}
{{- end }}
Expand All @@ -23,6 +25,8 @@
https://adb-xxxx.xx.azuredatabricks.net
{{- else if eq .input_cloud `aws` -}}
https://your-staging-workspace.cloud.databricks.com
{{- else if eq .input_cloud `gcp` -}}
https://your-staging-workspace.gcp.databricks.com
{{- end -}}
{{- end -}}
{{- end }}
Expand All @@ -33,6 +37,8 @@
i3.xlarge
{{- else if (eq .input_cloud `azure`) -}}
Standard_D3_v2
{{- else if (eq .input_cloud `gcp`) -}}
n2-highmem-4
{{- else -}}
{{ fail `Unknown cloud platform` }}
{{- end -}}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -68,12 +68,12 @@ jobs:
displayName: Initialize CI/CD Bundle
env:
DATABRICKS_HOST: {{template `databricks_staging_workspace_host` .}}
{{ if (eq .input_cloud `aws`) -}}
DATABRICKS_TOKEN: $(STAGING_WORKSPACE_TOKEN)
{{- else if (eq .input_cloud `azure`) -}}
{{ if (eq .input_cloud `azure`) -}}
ARM_TENANT_ID: $(STAGING_AZURE_SP_TENANT_ID)
ARM_CLIENT_ID: $(STAGING_AZURE_SP_APPLICATION_ID)
ARM_CLIENT_SECRET: $(STAGING_AZURE_SP_CLIENT_SECRET)
{{ else -}}
DATABRICKS_TOKEN: $(STAGING_WORKSPACE_TOKEN)
{{- end }}

# Create Branch and Commit CICD Bundle
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,12 +58,12 @@ stages:
workingDirectory: $(workingDirectory)
displayName: 'Validate bundle for staging'
env:
{{ if (eq .input_cloud `aws`) -}}
DATABRICKS_TOKEN: $(STAGING_WORKSPACE_TOKEN)
{{- else if (eq .input_cloud `azure`) -}}
{{ if (eq .input_cloud `azure`) -}}
ARM_TENANT_ID: $(STAGING_AZURE_SP_TENANT_ID)
ARM_CLIENT_ID: $(STAGING_AZURE_SP_APPLICATION_ID)
ARM_CLIENT_SECRET: $(STAGING_AZURE_SP_CLIENT_SECRET)
{{ else -}}
DATABRICKS_TOKEN: $(STAGING_WORKSPACE_TOKEN)
{{- end }}


Expand Down Expand Up @@ -91,12 +91,12 @@ stages:
workingDirectory: $(workingDirectory)
displayName: 'Validate bundle for prod'
env:
{{ if (eq .input_cloud `aws`) -}}
DATABRICKS_TOKEN: $(PROD_WORKSPACE_TOKEN)
{{- else if (eq .input_cloud `azure`) -}}
{{ if (eq .input_cloud `azure`) -}}
ARM_TENANT_ID: $(PROD_AZURE_SP_TENANT_ID)
ARM_CLIENT_ID: $(PROD_AZURE_SP_APPLICATION_ID)
ARM_CLIENT_SECRET: $(PROD_AZURE_SP_CLIENT_SECRET)
{{ else -}}
DATABRICKS_TOKEN: $(PROD_WORKSPACE_TOKEN)
{{- end }}

# Run StagingBundleCD stage after successfully merging into the {{ .input_default_branch }} branch
Expand Down Expand Up @@ -136,12 +136,12 @@ stages:
workingDirectory: $(workingDirectory)
displayName: 'Validate bundle for staging'
env:
{{ if (eq .input_cloud `aws`) -}}
DATABRICKS_TOKEN: $(STAGING_WORKSPACE_TOKEN)
{{- else if (eq .input_cloud `azure`) -}}
{{ if (eq .input_cloud `azure`) -}}
ARM_TENANT_ID: $(STAGING_AZURE_SP_TENANT_ID)
ARM_CLIENT_ID: $(STAGING_AZURE_SP_APPLICATION_ID)
ARM_CLIENT_SECRET: $(STAGING_AZURE_SP_CLIENT_SECRET)
{{ else -}}
DATABRICKS_TOKEN: $(STAGING_WORKSPACE_TOKEN)
{{- end }}

# Deploy bundle to Staging workspace
Expand All @@ -150,12 +150,12 @@ stages:
workingDirectory: $(workingDirectory)
displayName: 'Deploy bundle to staging'
env:
{{ if (eq .input_cloud `aws`) -}}
DATABRICKS_TOKEN: $(STAGING_WORKSPACE_TOKEN)
{{- else if (eq .input_cloud `azure`) -}}
{{ if (eq .input_cloud `azure`) -}}
ARM_TENANT_ID: $(STAGING_AZURE_SP_TENANT_ID)
ARM_CLIENT_ID: $(STAGING_AZURE_SP_APPLICATION_ID)
ARM_CLIENT_SECRET: $(STAGING_AZURE_SP_CLIENT_SECRET)
{{ else -}}
DATABRICKS_TOKEN: $(STAGING_WORKSPACE_TOKEN)
{{- end }}

# Run prod bundle CD stage after successfully merging into the {{ .input_release_branch }} branch
Expand Down Expand Up @@ -195,12 +195,12 @@ stages:
workingDirectory: $(workingDirectory)
displayName: 'Validate bundle for prod'
env:
{{ if (eq .input_cloud `aws`) -}}
DATABRICKS_TOKEN: $(PROD_WORKSPACE_TOKEN)
{{- else if (eq .input_cloud `azure`) -}}
{{ if (eq .input_cloud `azure`) -}}
ARM_TENANT_ID: $(PROD_AZURE_SP_TENANT_ID)
ARM_CLIENT_ID: $(PROD_AZURE_SP_APPLICATION_ID)
ARM_CLIENT_SECRET: $(PROD_AZURE_SP_CLIENT_SECRET)
{{ else -}}
DATABRICKS_TOKEN: $(PROD_WORKSPACE_TOKEN)
{{- end }}

# Deploy bundle to prod workspace
Expand All @@ -209,10 +209,10 @@ stages:
workingDirectory: $(workingDirectory)
displayName: 'Deploy bundle to prod'
env:
{{ if (eq .input_cloud `aws`) -}}
DATABRICKS_TOKEN: $(PROD_WORKSPACE_TOKEN)
{{- else if (eq .input_cloud `azure`) -}}
{{ if (eq .input_cloud `azure`) -}}
ARM_TENANT_ID: $(PROD_AZURE_SP_TENANT_ID)
ARM_CLIENT_ID: $(PROD_AZURE_SP_APPLICATION_ID)
ARM_CLIENT_SECRET: $(PROD_AZURE_SP_CLIENT_SECRET)
{{ else -}}
DATABRICKS_TOKEN: $(PROD_WORKSPACE_TOKEN)
{{- end }}
Original file line number Diff line number Diff line change
Expand Up @@ -86,12 +86,12 @@ jobs:
workingDirectory: $(workingDirectory)
displayName: Validate bundle for test deployment target in staging workspace
env:
{{ if (eq .input_cloud `aws`) -}}
DATABRICKS_TOKEN: $(STAGING_WORKSPACE_TOKEN)
{{- else if (eq .input_cloud `azure`) -}}
{{ if (eq .input_cloud `azure`) -}}
ARM_TENANT_ID: $(STAGING_AZURE_SP_TENANT_ID)
ARM_CLIENT_ID: $(STAGING_AZURE_SP_APPLICATION_ID)
ARM_CLIENT_SECRET: $(STAGING_AZURE_SP_CLIENT_SECRET)
{{ else -}}
DATABRICKS_TOKEN: $(STAGING_WORKSPACE_TOKEN)
{{- end }}

# Deploy bundle to staging workspace
Expand All @@ -100,12 +100,12 @@ jobs:
workingDirectory: $(workingDirectory)
displayName: Deploy bundle to test deployment target in staging workspace
env:
{{ if (eq .input_cloud `aws`) -}}
DATABRICKS_TOKEN: $(STAGING_WORKSPACE_TOKEN)
{{- else if (eq .input_cloud `azure`) -}}
{{ if (eq .input_cloud `azure`) -}}
ARM_TENANT_ID: $(STAGING_AZURE_SP_TENANT_ID)
ARM_CLIENT_ID: $(STAGING_AZURE_SP_APPLICATION_ID)
ARM_CLIENT_SECRET: $(STAGING_AZURE_SP_CLIENT_SECRET)
{{ else -}}
DATABRICKS_TOKEN: $(STAGING_WORKSPACE_TOKEN)
{{- end }}

{{ if (eq .input_include_feature_store `yes`) }}
Expand All @@ -115,12 +115,12 @@ jobs:
workingDirectory: $(workingDirectory)
displayName: Run Feature Engineering Workflow for test deployment target in Staging Workspace
env:
{{ if (eq .input_cloud `aws`) -}}
DATABRICKS_TOKEN: $(STAGING_WORKSPACE_TOKEN)
{{- else if (eq .input_cloud `azure`) -}}
{{ if (eq .input_cloud `azure`) -}}
ARM_TENANT_ID: $(STAGING_AZURE_SP_TENANT_ID)
ARM_CLIENT_ID: $(STAGING_AZURE_SP_APPLICATION_ID)
ARM_CLIENT_SECRET: $(STAGING_AZURE_SP_CLIENT_SECRET)
{{ else -}}
DATABRICKS_TOKEN: $(STAGING_WORKSPACE_TOKEN)
{{- end }}
{{ end }}

Expand All @@ -130,10 +130,10 @@ jobs:
workingDirectory: $(workingDirectory)
displayName: Run training workflow for test deployment target in staging workspace
env:
{{ if (eq .input_cloud `aws`) -}}
DATABRICKS_TOKEN: $(STAGING_WORKSPACE_TOKEN)
{{- else if (eq .input_cloud `azure`) -}}
{{ if (eq .input_cloud `azure`) -}}
ARM_TENANT_ID: $(STAGING_AZURE_SP_TENANT_ID)
ARM_CLIENT_ID: $(STAGING_AZURE_SP_APPLICATION_ID)
ARM_CLIENT_SECRET: $(STAGING_AZURE_SP_CLIENT_SECRET)
{{ else -}}
DATABRICKS_TOKEN: $(STAGING_WORKSPACE_TOKEN)
{{- end }}
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@ on:

env:
DATABRICKS_HOST: {{template `databricks_staging_workspace_host` .}}
{{ if (eq .input_cloud `aws`) -}}
DATABRICKS_TOKEN: {{`${{ secrets.STAGING_WORKSPACE_TOKEN }}`}}
{{- else if (eq .input_cloud `azure`) -}}
{{ if (eq .input_cloud `azure`) -}}
ARM_TENANT_ID: {{`${{ secrets.STAGING_AZURE_SP_TENANT_ID }}`}}
ARM_CLIENT_ID: {{`${{ secrets.STAGING_AZURE_SP_APPLICATION_ID }}`}}
ARM_CLIENT_SECRET: {{`${{ secrets.STAGING_AZURE_SP_CLIENT_SECRET }}`}}
{{ else -}}
DATABRICKS_TOKEN: {{`${{ secrets.STAGING_WORKSPACE_TOKEN }}`}}
{{- end }}

jobs:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,12 @@ defaults:
working-directory: ./{{template `project_name_alphanumeric_underscore` .}}

env:
{{ if (eq .input_cloud `aws`) -}}
DATABRICKS_TOKEN: {{`${{ secrets.PROD_WORKSPACE_TOKEN }}`}}
{{- else if (eq .input_cloud `azure`) -}}
{{ if (eq .input_cloud `azure`) -}}
ARM_TENANT_ID: {{`${{ secrets.PROD_AZURE_SP_TENANT_ID }}`}}
ARM_CLIENT_ID: {{`${{ secrets.PROD_AZURE_SP_APPLICATION_ID }}`}}
ARM_CLIENT_SECRET: {{`${{ secrets.PROD_AZURE_SP_CLIENT_SECRET }}`}}
{{ else -}}
DATABRICKS_TOKEN: {{`${{ secrets.PROD_WORKSPACE_TOKEN }}`}}
{{- end }}

jobs:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,12 @@ defaults:
working-directory: ./{{template `project_name_alphanumeric_underscore` .}}

env:
{{ if (eq .input_cloud `aws`) -}}
DATABRICKS_TOKEN: {{`${{ secrets.STAGING_WORKSPACE_TOKEN }}`}}
{{- else if (eq .input_cloud `azure`) -}}
{{ if (eq .input_cloud `azure`) -}}
ARM_TENANT_ID: {{`${{ secrets.STAGING_AZURE_SP_TENANT_ID }}`}}
ARM_CLIENT_ID: {{`${{ secrets.STAGING_AZURE_SP_APPLICATION_ID }}`}}
ARM_CLIENT_SECRET: {{`${{ secrets.STAGING_AZURE_SP_CLIENT_SECRET }}`}}
{{ else -}}
DATABRICKS_TOKEN: {{`${{ secrets.STAGING_WORKSPACE_TOKEN }}`}}
{{- end }}

jobs:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,16 +14,16 @@ defaults:
working-directory: ./{{template `project_name_alphanumeric_underscore` .}}/

env:
{{ if (eq .input_cloud `aws`) -}}
STAGING_WORKSPACE_TOKEN: {{`${{ secrets.STAGING_WORKSPACE_TOKEN }}`}}
PROD_WORKSPACE_TOKEN: {{`${{ secrets.PROD_WORKSPACE_TOKEN }}`}}
{{- else if (eq .input_cloud `azure`) -}}
{{ if (eq .input_cloud `azure`) -}}
STAGING_ARM_TENANT_ID: {{`${{ secrets.STAGING_AZURE_SP_TENANT_ID }}`}}
STAGING_ARM_CLIENT_ID: {{`${{ secrets.STAGING_AZURE_SP_APPLICATION_ID }}`}}
STAGING_ARM_CLIENT_SECRET: {{`${{ secrets.STAGING_AZURE_SP_CLIENT_SECRET }}`}}
PROD_ARM_TENANT_ID: {{`${{ secrets.PROD_AZURE_SP_TENANT_ID }}`}}
PROD_ARM_CLIENT_ID: {{`${{ secrets.PROD_AZURE_SP_APPLICATION_ID }}`}}
PROD_ARM_CLIENT_SECRET: {{`${{ secrets.PROD_AZURE_SP_CLIENT_SECRET }}`}}
{{ else -}}
STAGING_WORKSPACE_TOKEN: {{`${{ secrets.STAGING_WORKSPACE_TOKEN }}`}}
PROD_WORKSPACE_TOKEN: {{`${{ secrets.PROD_WORKSPACE_TOKEN }}`}}
{{- end }}

jobs:
Expand All @@ -38,12 +38,12 @@ jobs:
- name: Validate Bundle For Staging
id: validate
env:
{{ if (eq .input_cloud `aws`) -}}
DATABRICKS_TOKEN: {{`${{ env.STAGING_WORKSPACE_TOKEN }}`}}
{{- else if (eq .input_cloud `azure`) -}}
{{ if (eq .input_cloud `azure`) -}}
ARM_TENANT_ID: {{`${{ env.STAGING_ARM_TENANT_ID }}`}}
ARM_CLIENT_ID: {{`${{ env.STAGING_ARM_CLIENT_ID }}`}}
ARM_CLIENT_SECRET: {{`${{ env.STAGING_ARM_CLIENT_SECRET }}`}}
{{ else -}}
DATABRICKS_TOKEN: {{`${{ env.STAGING_WORKSPACE_TOKEN }}`}}
{{- end }}
run: |
databricks bundle validate -t {{ .input_staging_catalog_name }} > ../validate_output.txt
Expand Down Expand Up @@ -82,12 +82,12 @@ jobs:
- name: Validate Bundle For Prod
id: validate
env:
{{ if (eq .input_cloud `aws`) -}}
DATABRICKS_TOKEN: {{`${{ env.PROD_WORKSPACE_TOKEN }}`}}
{{- else if (eq .input_cloud `azure`) -}}
{{ if (eq .input_cloud `azure`) -}}
ARM_TENANT_ID: {{`${{ env.PROD_ARM_TENANT_ID }}`}}
ARM_CLIENT_ID: {{`${{ env.PROD_ARM_CLIENT_ID }}`}}
ARM_CLIENT_SECRET: {{`${{ env.PROD_ARM_CLIENT_SECRET }}`}}
{{ else -}}
DATABRICKS_TOKEN: {{`${{ env.PROD_WORKSPACE_TOKEN }}`}}
{{- end }}
run: |
databricks bundle validate -t {{ .input_prod_catalog_name }} > ../validate_output.txt
Expand Down
Loading

0 comments on commit 038b4f1

Please sign in to comment.