shell - 使用 databricks cli 创建配置文件而不传递参数
问题描述
我正在尝试在天蓝色的 devops 管道中使用 databricks-cli。为此,我需要创建一个配置文件,使用:
databricks configure --profile Profile --token
问题是,当我运行该命令时,它会要求我提供主机和令牌,这会破坏我等待用户输入的管道。我想知道是否可以在不传递参数的情况下做到这一点。
我已经尝试过了:
echo "configuring databrick-cli authentication"
declare DATABRICKS_URL="https://westeurope.azuredatabricks.net"
declare DATABRICKS_ACCESS_TOKEN="authentication_token_generated_from_databricks_ux"
declare dbconfig=$(<~/.databrickscfg)
if [[ $dbconfig = *"host = "* && $dbconfig = *"token = "* ]]; then
echo "file [~/.databrickscfg] is already configured"
else
if [[ -z "$DATABRICKS_URL" || -z "$DATABRICKS_ACCESS_TOKEN" ]]; then
echo "file [~/.databrickscfg] is not configured, but [DATABRICKS_URL],[DATABRICKS_ACCESS_TOKEN] env vars are not set"
else
echo "populating [~/.databrickscfg]"
> ~/.databrickscfg
echo "[DEFAULT]" >> ~/.databrickscfg
echo "host = $DATABRICKS_URL" >> ~/.databrickscfg
echo "token = $DATABRICKS_ACCESS_TOKEN" >> ~/.databrickscfg
echo "" >> ~/.databrickscfg
fi
fi
我正在尝试将主机和令牌放入,databrickscfg
但它只是挂在那里,我猜它正在等待用户再次输入
我究竟做错了什么?
解决方案
您可以通过同时传递多个值来配置命令来实现这一点,就像这里为 Databricks Connect 所做的那样:
echo "$(databricks_host)
$(databricks_token)" | databricks configure --token
但实际上,您可以只使用环境变量DATABRICKS_HOST
,并且DATABRICKS_TOKEN
如文档中所述- Databricks CLI 将获取它们。
您需要考虑的唯一一件事 - 像 Databricks 令牌这样的敏感数据需要安全地存储在管道定义中,并且您需要以特殊方式访问它们 - 通过env
(完整定义在这里):
- script: |
echo "[{{cookiecutter.profile}}]" >> ~/.databrickscfg
echo "host = $DATABRICKS_HOST" >> ~/.databrickscfg
echo "token = $DATABRICKS_TOKEN" >> ~/.databrickscfg
env:
DATABRICKS_HOST: $(DATABRICKS_HOST)
DATABRICKS_TOKEN: $(DATABRICKS_TOKEN)
PS 您可以使用cicd-templates 项目为 Azure DevOps(或 Github Actions)生成模板,该模板可与 Databricks 一起使用。
推荐阅读
- java - 在更新 Comparator 比较函数的计数时返回列表的索引
- asp.net - 动态自定义 RazorViewEngine?
- tensorflow - MNIST - tf.estimator.DNNClassifier
- database - 将 Excel 数据保存到 Access 数据库
- c# - 健康滑块如果启用了语句线渲染器 Unity
- c++ - 这些标头详细信息是否正确编写?
- flutter - 有没有办法创建一个具有圆角半径、渐变和动态阴影的按钮?
- mysql - 计算已完成任务mysql中的百分比总数
- docker - 在 OpenLDAP 服务器中以纯文本形式存储用户密码
- c - 指向结构的指针数组