jenkins 多個jobs 間參數傳遞,可以減少job個數。
1. 首先創建一個簡單的job (如test2)
執行簡單的windows bat腳本
echo "current workspace is %WORKSPACE%"
echo "JOB_NAME is %JOB_NAME%"
2. 再創建一個參數化job(test2_deploy)
也執行一個簡單的命令行腳本:
echo "current workspace is %WORKSPACE%"
echo "parameter version is %version%"
echo "parameter test2_workspace is %test2_workspace%"
echo "current work directory %cd%"
cd "%test2_workspace%"
e:
echo "current work directory %cd% after change"
3. 修改job test2的配置,
在“構建後操作” 或 "Post-build actions" 裏面選擇 “Trigger parameterized build on other projects",如果沒有這個選項,先安裝”Parameterized Trigger“插件。
並增加在job test2_deploy預定義的參數,這樣兩個job建立起了先後關係,test2 build後自動執行test_deploy,而且可以傳遞參數。
4. 測試結果:
upstream project test2的console out:
對應的downstream job test2_deploy的console out: