2013-07-29 66 views
7

GitLab具有這種很好的「部署密鑰」功能,可用於CI服務器讀取和拉取存儲庫,因爲他們通常不需要更多。但是,我需要創建標籤並將其推送到存儲庫,以標記從「主」分支構建的每個發行版。推送到CI服務器中的GitLab存儲庫(部署密鑰)

更具體地說,我有一個Jenkins任務,每次構建觸發時都會從'master'分支構建發行版本。如果工作成功,我想用發行編號標記'master'分支HEAD以備將來參考。

我相信我不能使用'部署密鑰'功能來做到這一點。那麼,我該如何去做和做到這一點?我不確定我可以創建一個額外的用戶,只是爲了這個,並讓他訪問該項目......導致每個使用GitLab訪問的用戶都與LDAP綁定。

有什麼建議嗎?

回答

3

這是正確的一個部署密鑰沒有(也不會)有寫權限的項目(如issue 2134所述)。

這使得您:

  • 創建LDAP一般帳戶(如果這些賬戶被授權在您的組織)
  • 在一個單獨的LDAP服務器創建一個虛擬賬戶(但gitlab omniauth-ldap不支持多個LDAP聲明)。
+0

如果我創建了一個單獨的SSH密鑰(只是不要將它與我自己的密鑰混合),並將其添加到每個人的帳戶(即每個應該有權訪問該項目的人),它會工作嗎?這樣,如果我離開,我的帳戶被刪除,它會繼續工作......或者這不會工作? –

+0

@RicardoAmaral它可以,但這將涉及共享私人SSH密鑰,這是一個很大的禁忌。 *特別是*用於具有*寫入*訪問的帳戶。 – VonC

+0

是的,我知道。這就是爲什麼我要從我自己的角度創建一個單獨的。一個可以與開發團隊共享*的人員,負責設置Jenkins系統的人員。我看到的另一個問題是,使用此SSH密鑰推送會將提交與開發人員關聯,如果來自「Jenkins CI」用戶或類似用戶,則會更好,以區分它們。 –

相關問題