2010-11-11 112 views
5

我想將當前登錄用戶的teamcity用戶名傳遞給從teamcity調用的構建腳本,是否有一個屬性具有此屬性?當我看時,我沒有看到一個。它不能是一個用戶指定的屬性,因爲我希望它與他們的實際登錄綁定,因此他們是誰的某種身份驗證。當前登錄用戶的Teamcity屬性

回答

1

答案取決於你在「當前登錄用戶」下的含義。登錄在哪裏以及爲什麼? 一般來說,TeamCity不需要登錄就可以開始構建。例如,您可以將TeamCity配置爲在對指定VCS根進行的每次提交時開始構建。在這種情況下,您只能傳遞用戶的名稱,該用戶的帳戶用於訪問VCS根目錄(%vcsroot.user%)。

另一種情況是,如果你需要windows用戶的名字,在哪個帳號下TeamCity 構建代理正在運行?如果是這樣,你不能使用TeamCity。您需要在構建腳本中檢索它。

+1

我的意思是團隊城市登錄,這些構建不會自動啓動,它們都是由用戶手動運行,因爲他們在這種情況下執行部署。 – jtruelove 2010-11-11 21:55:39

+1

清除。我在每個手動生成運行的Windows通告程序中看到了這個值。引發構建的TeamCity用戶的名稱。我在通知程序模板文件中找到了一個名爲$ {build.triggeredBy.user.descriptiveName}的屬性。但不幸的是,當我嘗試在構建配置中使用此屬性(如%build.triggeredBy.user.descriptiveName%)時,它使我的構建配置無效,TeamCity甚至無法啓動構建。 – 2010-11-12 15:56:46

+0

似乎這個參數不被構建運行器支持,它只存在於TeamCity的通知子系統中。我的TeamCity版本是5.1.3(版本13506)。無論如何,我會建議你在TeamCity論壇上提問這個問題。相信,你會在那裏得到更合格的答案。 – 2010-11-12 15:57:44

2

我使用了屬性%teamcity.build.triggeredBy%和%teamcity.build.triggeredBy.username%。這些屬性返回「John Doe」和「[email protected]」。 使用這個值我可以允許運行一個構建與否。

我讀過應該先安裝groovy插件才能使用這些屬性。但我無法檢查是否安裝了它。我只是無法訪問TeamCity管理設置。