用戶無法查看工作結果在使用遠程Git源代碼

磚沒有管理權限遠程回購,所以你必須同步變化與當地筆記本所以非管理用戶可以查看結果。

寫的ravirahul.padmanabhan

去年發表在:2023年3月7日

問題

您正在運行一個工作用筆記本存儲在遠程Git存儲庫(AWS|Azure|GCP)。磚的用戶可以查看權限(不是一個工作區管理或工作)的所有者不能訪問或視圖的結果提交通過短暫的工作dbutils.notebook.run ()從父母的筆記本。

導致

當工作能見度控製(AWS|Azure|GCP在工作區中啟用),用戶隻能看到工作允許的訪問控製級別。這是預期筆記本存儲在工作區。然而,磚並不為遠程管理訪問控製Git存儲庫時,所以它不知道是否有權限限製筆記本存儲在Git。唯一磚肯定用戶有權限訪問的筆記本在偏遠的Git存儲庫是老板的工作。因此,其他非管理用戶無法查看,即使他們有可以查看磚的權限。

解決方案

你可以解決這個問題通過配置工作筆記本源磚工作區,使你的工作的首要任務從遠程Git存儲庫獲取最新的變化。

這允許場景工作必須確保使用最新版本的一個筆記本存儲在一個共享,遠程Git存儲庫。

工作流程工作首先同步變化從一個遠程回購本地筆記本。

這張圖片說明了兩部分的過程。首先,您獲取最新更改的筆記本從遠程Git存儲庫。之後,最新版本的筆記本已經同步,你開始運行筆記本作為工作的一部分。

刪除

信息

當你創建你的工作在UI中,確保類型被設置為筆記本被設置為工作空間。選擇回購在選擇筆記本路徑。
樣本就業型將筆記本和源設置為工作區。

配置秘密訪問

創建一個磚個人訪問令牌

遵循個人用戶訪問令牌(AWS|Azure|GCP)的文檔創建一個個人訪問令牌。

創建一個秘密範圍

遵循創建一個Databricks-backed秘密範圍(AWS|Azure|GCP)文檔創建秘密範圍。

你的個人訪問令牌和磚實例存儲在保密範圍

遵循創建一個秘密Databricks-backed範圍(AWS|Azure|GCP)文檔存儲個人訪問令牌和磚實例創建新的秘密範圍內你的秘密。

磚實例是工作空間的主機名,例如,xxxxx.cloud.m.eheci.com。

使用一個腳本同步最新的變化

這個示例Python代碼將從遠程Git存儲庫的最新修訂,並與當地的筆記本同步。這樣可以確保當地的筆記本電腦是最新的前處理工作。

你需要運行腳本之前替換以下值:

  • < repo-id >——遠程Git存儲庫的名稱。
  • < scope-name >——你的名字包含秘密範圍。
  • < secret-name-1 >——秘密的名字會握著你的磚實例。
  • < secret-name-2 >——秘密的名稱保存你的個人訪問令牌。


% python導入請求導入json databricks_instance = dbutils.secrets。get(範圍= " < scope-name >”,關鍵= < secret-name-1 >)令牌= dbutils.secrets。get(範圍= " < scope-name >”,關鍵= < secret-name-2 >) url = f”{databricks_instance} / api / 2.0 /回購/ < repo-id >”#使用回購api獲得回購id https://docs.m.eheci.com/dev-tools/api/latest/repos.html操作/ get-repos載荷= json。轉儲({“分支”:“主要”#使用分支/標記。請參閱https://docs.m.eheci.com/dev-tools/api/latest/repos.html操作/ update-repo})頭={“授權”:f“無記名{牌}”,“內容類型”:“application / json”} =請求響應。url請求(“補丁”,標題=頭,data =有效載荷,超時= 60)打印(response.text)如果反應。status_code ! = 200:提高提取操作期間例外(f”失敗。響應代碼:{響應}”)
這篇文章有用嗎?