“ databricks configure --token”挂起输入

问题描述

我在Azure DevOps中运行以下任务,它总是挂起输入?为什么我的bash自动补给不能正常工作?

databricksUrl=https://...
databricksToken=*****

databricks configure --token << EOF
$(databricksUrl)
$(databricksToken)
EOF

解决方法

您尝试使用以下Inline bash脚本对Azure Databricks 不带变量进行身份验证。

databricks configure --token <<EOF
https://centralus.azuredatabricks.net
dapXXXXXXXXXXXXXXXXXXXXXX467
EOF

enter image description here

您尝试使用以下Inline bash脚本通过带有变量的Azure Databricks进行身份验证。

adburl="https://centralus.azuredatabricks.net"
token=dapXXXXXXXXXXXXXXXXXXXXXXXXX467
databricks configure --token <<EOF
$adburl
$token
EOF

enter image description here

已成功通过Azure Databricks进行身份验证:

enter image description here

OR

您可以使用DevOps for Azure Databricks extension

此扩展程序为您带来了一系列任务,可用于操作构建,测试和部署Databricks作业和笔记本。

一旦安装了适用于Azure Databricks的DevOps扩展,您可以通过单击添加任务直接使用Configure Databricks CLI。

enter image description here

,

我有同样的问题。我的发布管道过去运行良好,现在即使没有进行任何更改,它也停留在身份验证步骤。

UPDATTE: 该问题是由string_value = "hi" print(type(string_value) == str) # True (0.12.0)的新版本引起的。 使用0.11.0版可以解决此问题:

databricks-cli
,

Databricks CLI > 0.11.0 有两种解决方案:

  • 直接在表单中生成~/.databricks.cfg
echo "[DEFAULT]                                                               
host = $url
token = $token" > ~/.databricks.cfg
  • 使用新选项 --host--token-file 指定主机和令牌:
echo $token > token-file
databricks configure --host $url --token-file token-file
rm -f token-file