簡體   English   中英

在Windows上使用Subversion發布提交腳本的Teamcity

[英]Teamcity with Subversion post commit script on windows

我們希望Teamcity在每次提交到Subversion的提交中建立我們的解決方案。 根據文檔,我們將創建一個.sh腳本:-

SERVER=https://buildserver-url
USER=buildserver-user
PASS="<password>"

LOCATOR=$1

# The following is one-line:
(sleep 10;  curl --user $USER:$PASS -X POST "$SERVER/app/rest/vcs-root-instances/commitHookNotification?locator=$LOCATOR" -o /dev/null) >/dev/null 2>&1 <&1 &

exit 0

Subversion在Windows環境上運行,因此.sh文件將失敗。 我們正在嘗試將其轉換為我們具有的.bat文件:

set SERVER=https://buildserver-url
set USER=buildserver
set PASS=password

LOCATOR=%1%

(timeout 10;  curl --user %USER%:%PASS% -X POST "%SERVER%/app/rest/vcs-root-instances/commitHookNotification?locator=%LOCATOR%" -o /dev/null) >/dev/null 2>%1% <%1% &

exit 0

但是,在嘗試執行時仍然失敗

"The system cannot find the path specified"

看來我們可能沒有正確轉換此值?

您引用的程序(例如curltimeout.exe )是否位於$PATH / %PATH%變量中的位置? 您要引用的其他任何文件如何-是否指定完整路徑

旁注:您是否在Windows服務器上安裝curltimeout.exe

而且, /dev/null在Windows上不存在。 您需要重定向到NUL 您不僅可以更改文件擴展名和某些語法,而且希望bash腳本在Windows上運行。

如果我不滿意,我將完全跳過批處理,並使用諸如Powershell之類的現代而理智的腳本來編寫腳本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM