创建Jenkins 打多平台集合包

创建Jenkins 打多平台集合包

要求

  • windows/linux 平台分别在两台jenkins机器上打包之
  • 放到同一个目录压缩并且发布
  • 支持输入commit 打指定commit版本包

实现

  • windows 打完之后同步到linux 指定目录下
  • linux 打完之后进行组合
  • windows 设置远程触发打包,支持参数
  • linux 添加打包参数,commit_id

关键代码

linux 判断是否有commit 输入:

if [ -n "$commit_id" ];then
    commitexsit=$(git log | grep $commit_id)
    if [ -z "$commitexsit" ]; then
        echo "commit is not exsit" 1>&2
        exit 1
    fi
    {
        git branch -D $commit_id
        git checkout $commit_id -b $commit_id
        GIT_COMMIT=$commit_id
     }||{
        git checkout $commit_id -b $commit_id
        GIT_COMMIT=$commit_id
    }
fi
curl -X POST "http://user_name:passwd**@10.*.*.*:*/view/**/job/**/buildWithParameters?token=Win_Dwfiletrans_1_0&commit_id=${commit_id}"

windows 判断是否需要打commit:

rem dwfiletrans 接收远程参数
echo %commit_id%
if not "%commit_id%"=="" ( 
"C:\\Program Files\\Git\\bin\\git.exe" branch -D %commit_id%
"C:\\Program Files\\Git\\bin\\git.exe" checkout %commit_id% -b %commit_id% 
set GIT_COMMIT=%commit_id%
)

注意点:

  • 当前路径处理
  • 远程触发参数
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章