azure - 在 azure devops 管道中找不到 Databricks 命令
问题描述
我正在尝试通过 Azure Devops 管道将文件复制到 Azure Databricks DBFS。以下是我正在使用的 yml 文件的片段:
stages:
- stage: MYBuild
displayName: "My Build"
jobs:
- job: BuildwhlAndRunPytest
pool:
vmImage: 'ubuntu-16.04'
steps:
- task: UsePythonVersion@0
displayName: 'Use Python 3.7'
inputs:
versionSpec: '3.7'
addToPath: true
architecture: 'x64'
- script: |
pip install pytest requests setuptools wheel pytest-cov
pip install -U databricks-connect==7.3.*
displayName: 'Load Python Dependencies'
- checkout: self
persistCredentials: true
clean: true
- script: |
echo "y
$(databricks-host)
$(databricks-token)
$(databricks-cluster)
$(databricks-org-id)
8787" | databricks-connect configure
databricks-connect test
env:
databricks-token: $(databricks-token)
displayName: 'Configure DBConnect'
- script: |
databricks fs cp test-proj/pyspark-lib/configs/config.ini dbfs:/configs/test-proj/config.ini
在调用 databricks fs cp 命令的阶段出现以下错误:
/home/vsts/work/_temp/2278f7d5-1d96-4c4e-a501-77c07419773b.sh: line 7: databricks: command not found
但是,当我运行时databricks-connect test
,它能够成功执行命令。如果我在某处遗漏了一些步骤,请提供帮助。
解决方案
该databricks
命令位于databricks-cli
包中,而不是在 中databricks-connect
,因此您需要更改pip install
命令。
此外,对于databricks
命令,您只需设置环境变量DATABRICKS_HOST
,DATABRICKS_TOKEN
它就会起作用,如下所示:
- script: |
pip install pytest requests setuptools wheel
pip install -U databricks-cli
displayName: 'Load Python Dependencies'
- script: |
databricks fs cp ... dbfs:/...
env:
DATABRICKS_HOST: $(DATABRICKS_HOST)
DATABRICKS_TOKEN: $(DATABRICKS_TOKEN)
displayName: 'Copy artifacts'
PS 这是一个关于如何在 Databricks + 笔记本上进行 CI/CD 的示例。您也可能对cicd-templates 项目感兴趣。
推荐阅读
- mysql - nodejs连接mysql报错ER_NOT_SUPPORTED_AUTH_MODE?
- json - 从 Mongodb 提取到 python 的嵌套 Json 字段
- django - IllegalArgumentException:Shell 不是 LinearRing
- discord - discord.py 加入位置返回
sorted_members = sorted(ctx.guild.members, key=lambda m:m.joined_at) ind = sorted_members.index(ctx.author) + 1
- centos - ufw无法在centos上打开23端口
- excel - 在数据通过 VBA 代码移动时触发数据验证
- json - 以 zip 格式获取目录中的所有文件
- reactjs - 用数组反应 useState
- java - Quarkus Panache MongoDb Query,其中查询参数是一个列表
- python - 在 python 中使用 lmfit 库进行多峰曲线拟合