0

有人可以帮助解决如何自动化 ci/cd 管道以在来自 bitbucket 存储库的 databricks 存储库中更新和创建新文件。

4

1 回答 1

0

如果您想将 BitBucket 存储库中的更改同步到 Databricks Repos,那么您有以下可能性:

databricks repos update --path /Repos/user/repository --branch <branch_name>
  • 使用Repos API 的 Update 命令,但它太低级了,因为它不适用于路径,并且您需要知道可以通过Workspace API获得的 Repository ID 。所以它是几个命令而不是单个命令:
curl -s -n -X GET -o /tmp/staging-repo-info.json "$DATABRICKS_HOST/api/2.0/workspace/get-status" -H "Authorization: Bearer $DATABRICKS_TOKEN" -d '{"path":"/Repos/Staging/databricks-nutter-projects-demo"}'
export STAGING_REPOS_ID=$(cat /tmp/staging-repo-info.json|grep '"object_type":"REPO"'|sed -e 's|^.*"object_id":\([0-9]*\).*$|\1|')
curl -s -n -X PATCH -o "/tmp/$(Build.SourceBranchName)-out.json" "$DATABRICKS_HOST/api/2.0/repos/$STAGING_REPOS_ID" \
    -H "Authorization: Bearer $DATABRICKS_TOKEN" -d "{\"branch\": \"$(Build.SourceBranchName)\"}"

PS 你可以在这个存储库中找到带有 Repos 和 Azure DevOps 的端到端 CI/CD 演示。虽然它不是 BitBucket,但管道的结构保持不变。

于 2022-02-17T15:19:54.350 回答