使用 Jenkins 插件上传应用到蒲公英

129 阅读2分钟

背景

蒲公英是应用内测分发平台,致力于为广大开发者提供全面、高效、安全、稳定的开发者服务。拥有国内领先的应用内测分发平台;具备专业解决应用测试和上线问题的能力;提供轻量级Bug管理平台、网站错误监控平台、Git管理工具、知识库管理系统。

通过选择蒲公英应用分发平台来快速实现内测分发目的,也是为了提升用户更好的体验感,也为了后期快速通过应用商店的审核成功上架。

技术实现

功能

  1. 通过可视化表单信息填写,上传 ipa/apk 文件到蒲公英。
  2. 可以将上传后蒲公英返回的信息用于 jenkins 的其他构建步骤。

安装方法

手动安装:

  1. 下载插件 upload-pgyer.hpi,手动导入 jenkins,点击这里下载插件安装包
  2. 选择 jenkins -> 系统管理 -> 插件管理 -> 高级,找到 Deploy Plugin,点击 选择文件,然后选择上一步中下载的文件,点击按钮 Deploy,如图:

通过插件库安装:

在 jenkins 中选择 Manage Jenkins -> Manage Plugins -> Available -> Search -> 输入 Upload to pgyer -> install

使用插件

  1. 在 jenkins 的 job 配置页面 构建后操作中添加构建步骤 upload to pgyer with apiV2, 如下图:

image.png 插件添加成功后,会显示一下效果:

image.png

  1. 插件填写参数说明:
参数说明
pgyer api_key蒲公英的api_key(必填)
scandiripa/apk 所在目录 (必填)
file widcard上传文件的通配符 (必填) 如: android 或者ios, 默认android
buildType需要上传应用程序类型,支持 (必填)
installType(optional)应用安装方式,值为(1,2,3)默认值为1。1: 公开安装 2:密码安装,3:邀请安装。(选填)
password(optional)设置App安装密码(选填)
updateDescription(optional)版本更新描述(选填)
  1. 执行构建,蒲公英上传插件将输出相应的 log,如下图:

image.png 3. 上传蒲公英成功后,可在 jenkins 中的其他构建中使用蒲公英上传成功后返回的参数。插件会将蒲公英返回的参数注入为 jenkins 的全局变量,在其他构建步骤的使用方法直接引用这个全局变量即可,变量名称直接使用返回的 key 值。例如:${appBuildURL}

image.png 如果应用发布成功,返回的参数列表为:

参数类型说明
buildKeyStringBuild Key是唯一标识应用的索引ID
buildTypeInteger应用类型(1:iOS; 2:Android)
buildIsFirstInteger是否是第一个App(1:是; 2:否)
buildIsLastestInteger是否是最新版(1:是; 2:否)
buildFileSizeIntegerApp 文件大小
buildNameString应用名称
buildVersionString版本号, 默认为1.0 (是应用向用户宣传时候用到的标识,例如:1.1、8.2.1等。)
buildVersionNoString上传包的版本编号,默认为1 (即编译的版本号,一般来说,编译一次会变动一次这个版本号, 在 Android 上叫 Version Code。对于 iOS 来说,是字符串类型;对于 Android 来说是一个整数。例如:1001,28等。)
buildBuildVersionInteger蒲公英生成的用于区分历史版本的build号
buildIdentifierString应用程序包名,iOS为BundleId,Android为包名
buildIconString应用的Icon图标key,访问地址为 www.pgyer.com/image/view/…]
buildDescriptionString应用介绍
buildUpdateDescriptionString应用更新说明
buildScreenShotsString应用截图的key,获取地址为 www.pgyer.com/image/view/…]
buildShortcutUrlString应用短链接
buildQRCodeURLString应用二维码地址
buildCreatedString应用上传时间
buildUpdatedString应用更新时间

而这些返回参数,被蒲公英插件给设置为全局环境变量了。在其他地方可以通过${变量名}进行访问操作。蒲公英上传成功后返回参数的参考 请看这里