Jenkins 项目配置(五)
2017-08-31 本文已影响346人
Mr_不靠谱_先森
文章目录
项目示例
所有配置完成构建成功后的页面

源码管理
1.SVN

2.GIT

构建触发器

构建环境

构建

shell脚本上传蒲公英
# build -> Add build step -> Execute shell
pgyerApiKey="**************************"
pgyerUKey="*************************"
echo "获取apk版本号..."
# ${WORKSPACE} 是jenkins提供的环境变量,表示当前项目跟目录路径
# 下面的命令是获取 app/build.gradle 的第23行内容,然后按照双引号进行切换,提取第2部分内容,即上面图示中的 1.1.4
versionName=`sed -n '23p' ${WORKSPACE}/cdel-frameProjectDemo/app/build.gradle | cut -d \" -f 2`
echo "获取apk所在路径..."
# _360 是项目中定义了多渠道,但由于之前在 Build - Task 中设置的打包命令,直接指定了渠道号,因此这里也直接固定写好就可以;
# \cdel-frameProjectDemo\app\build\outputs\apk\package 项目apk存放的路径 CdelFrameDemo_V1.0.0_release_2017-08-30_pgy apk名称
# 这里需要弄成动态的
apkAbsPath="${WORKSPACE}/cdel-frameProjectDemo/app/build/outputs/apk/package/CdelFrameDemo_V1.0.0_release_2017-08-31_pgy.apk"
echo "上传apk到蒲公英进行发布..."
response=$(curl -F "file=@${apkAbsPath}" -F "uKey=${pgyerUKey}" -F "_api_key=${pgyerApiKey}" https://qiniu-storage.pgyer.com/apiv1/app/upload)
echo "上传结束"
# 原本上传结束后想要使用 jq 工具 (`brew install jq`) 对蒲公英上传时返回的response进行json处理的,结果在电脑的shell中测试可行,但写到这里就一直不成功,无奈,只好放弃
# 提取蒲公英返回的json数据中的 appShortcutUrl 字段值,可拼接成下载地址
#responseCode=$(echo -E "${response}" | jq .code)
#if [ $((responseCode)) == 0 ]
#then
# echo "上传结束,处理返回相应..."
# appShortcutUrl=$(echo -E "${response}" | jq ".data.appShortcutUrl" | cut -d \" -f 2)
# apkOnlineUrl="https://www.pgyer.com/${appShortcutUrl}"
#else
# echo "上传失败,返回码为: ${responseCode} ,具体请看日志"
#fi
构建后操作
