You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过服务主体将Azure DevOps仓库复制到Databricks Repos

解决方案:通过Azure DevOps服务主体将工件部署到Databricks /Repos

前提条件

  • 服务主体已获得Databricks工作区的Repos管理员或工作区管理员权限
  • Azure DevOps CI管道已配置Azure Resource Manager服务连接(自动注入服务主体身份变量,无需明文密钥)
  • CI代理已安装Azure CLI和Databricks CLI(可通过管道任务临时安装)

步骤1:通过Azure AD认证配置Databricks CLI

利用服务主体的Azure AD身份获取Databricks访问令牌,无需存储明文密钥:

  1. 登录Azure CLI(使用服务连接注入的变量):
az login --service-principal -u $(servicePrincipalId) -p $(servicePrincipalKey) --tenant $(tenantId)
  1. 获取Databricks工作区的Azure AD访问令牌:
DATABRICKS_TOKEN=$(az account get-access-token --resource 2ff814a6-3304-4ab8-85cb-cd0e6f879c1d --query accessToken -o tsv)

(注:2ff814a6-3304-4ab8-85cb-cd0e6f879c1d是Databricks的固定Azure AD资源ID)
3. 配置Databricks CLI指向目标工作区:

echo "$DATABRICKS_TOKEN" | databricks configure --token --host $(databricksWorkspaceUrl)

(databricksWorkspaceUrl为你的Databricks工作区URL,如https://eastus.azuredatabricks.net,可存入管道变量)

步骤2:解压Azure DevOps zip工件

假设工件已下载至$(Pipeline.Workspace)/artifact目录,解压到临时目录:

mkdir -p /tmp/repo-content
unzip $(Pipeline.Workspace)/artifact/your-repo.zip -d /tmp/repo-content

步骤3:同步内容到Databricks /Repos目录

使用Databricks CLI的fs cp命令递归上传内容到目标路径(替换为你的实际/Repos目录):

# 若目标目录已存在,可先删除(可选)
databricks fs rm --recursive dbfs:/Repos/<团队/用户目录>/<目标仓库名>

# 上传解压后的内容
databricks fs cp --recursive /tmp/repo-content dbfs:/Repos/<团队/用户目录>/<目标仓库名>

步骤4:验证部署结果(可选)

添加任务确认文件已成功上传:

databricks fs ls dbfs:/Repos/<团队/用户目录>/<目标仓库名>

内容的提问来源于stack exchange,提问作者Apuntatis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 04:57:44