[![license](https://img.shields.io/github/license/mashape/apistatus.svg)](http://opensource.org/licenses/MIT) ![Jenkins Plugins](https://img.shields.io/jenkins/plugin/v/upload-pgyer) ![Jenkins Plugin installs](https://img.shields.io/jenkins/plugin/i/upload-pgyer) ### 简单介绍 [蒲公英官网文档](https://www.pgyer.com/doc/view/jenkins_plugin) 蒲公英平台可以让开发者和企业将应用上传到网站,生成安装链接和二维码用户在手机上打开安装链接,或扫码二维码,即可开始安装! 因此,这款upload-pgyer的Jenkins插件可以让开发者将apk/ipa文件上传到蒲公英平台!**并且这款插件可以将蒲公英平台返回的应用信息解析后注入到Jenkins的全局变量中,这样你就可以很方便的在其他构建步骤中使用这些返回的信息**。 ### 安装插件 - 推荐的安装方式 `Manage Jenkins` -> `Manage Plugins` -> `Available` -> `Search ` -> *输入* `Upload to pgyer` -> `install` - 备用的安装方式 1. 点击 [这里](https://updates.jenkins-ci.org/latest/upload-pgyer.hpi) 下载最新的版本 2. `Manage Jenkins` -> `Manage Plugins` -> `Advanced` -> `Upload Plugin` -> `Choose file` -> *选择刚才下载的* `upload-pgyer.hpi` -> `Upload` ### 构建参数 在2.1版本中删除了两个构建参数,分别是`isUploadPgyer`和`uploadPgyerTimeout`,将构建参数`buildName`更改为`buildType`并且`buildType`为必填项 ### 使用指南 你可以在Jenkins的job配置页面的`构建`和`构建后操作`这两个操作中点击添加构建步骤选择`upload to pgyer with apiV2`。然后你就可以看到类似下面图片的操作界面: ![](./images/setting-screenshot.png) ### 参数介绍 需要填写的字段|字段的解释 ----:|:---------- pgyer api_key|(必填) API Key,用来识别API调用者的身份,
如不特别说明,每个接口中都需要含有此参数。
对于同一个蒲公英的注册用户来说,这个值在固定的。
[点击获取_api_key](https://www.pgyer.com/account/api) scandir|`(必填)` 需要上传的apk/ipa文件所在的文件夹或者父文件夹,
当前默认路径是`${WORKSPACE}`,它代表了当前项目的绝对路径。
这个功能的实现使用了ant框架的DirectoryScanner类,[点击查看DirectoryScanner类](https://ant.apache.org/manual/api/org/apache/tools/ant/DirectoryScanner.html),
这个字段就是DirectoryScanner类中的basedir方法的参数[点击查看basedir方法](https://ant.apache.org/manual/api/org/apache/tools/ant/DirectoryScanner.html#basedir) file wildcard|`(必填)` 需要上传的apk/ipa文件的名字,支持通配符,
就像这样: \*\*/\*.apk
或者像这样: \*\*/Test?/\*_sign.apk,
这个功能的实现使用了ant框架的DirectoryScanner类,[点击查看DirectoryScanner类](https://ant.apache.org/manual/api/org/apache/tools/ant/DirectoryScanner.html),
这个字段就是DirectoryScanner类中的includes方法的参数,[点击查看includes方法](https://ant.apache.org/manual/api/org/apache/tools/ant/DirectoryScanner.html#includes) buildType|`(必填)` 需要上传应用程序类型,支持,
如: android
如: ios
默认值是: android installType|`(选填)` 应用安装方式,值为(1,2,3)。
1:公开,2:密码安装,3:邀请安装。
默认为1公开 password|`(选填)` 设置App安装密码,如果不想设置密码,请传空字符串,或不传。 updateDescription|`(选填)` 版本更新描述,请传空字符串,或不传。 channelShortcut|`(选填)` 所需更新的指定渠道的下载短链接,只可指定一个渠道,字符串型,如:abcd ### 运行截图 ![](./images/pgyer-app-upload-running-log.png) 当你的应用上传成功后,在Jenkins中你就能看到上面图片中的信息。同时,你就可以在其他构建步骤中使用蒲公英返回来的信息,例如我的经验: ![](./images/pgyer-app-upload-backdata.png) ### Change Log 版本 2.1(2022-10-26) - **最低兼容Jenkins: [2.277.1](http://mirrors.jenkins.io/war-stable/2.277.1)** - 移除apiv1的相关配置 - 删除' isUploadPgyer '构建参数 - 删除' uploadPgyerTimeout '构建参数 - 删除' buildName '构建参数 - 添加' buildType '构建参数(必填项) - api变化 - 升级Gson 2.9.0 - 升级OkHttp3 4.10.0 - 优化代码以提高稳定性 版本 1.34(2020-08-15) - **最低兼容Jenkins: [2.164.1](http://mirrors.jenkins.io/war-stable/2.164.1)** - 添加 `isUploadPgyer` 构建参数 - 添加 `uploadPgyerTimeout` 构建参数 - 升级蒲公英API,添加 `channelShortcut` 参数 - `installType` 默认值设置为1 - 优化参数校验 - 升级Gson 2.8.6 - 升级Ant 1.10.8 - 升级OkHttp3 3.14.9 - 优化代码,提升稳定性 版本 1.33(2019-09-07) - 修复[SECURITY-1044](https://issues.jenkins-ci.org/browse/SECURITY-1044) - 升级Gson 2.8.5 版本 1.31(2018-05-07) - 升级Gson 2.8.4 - 优化上传日志 - 更换readme.md图片地址 版本 1.30(2018-04-16) - 移除Jsoup,并引入okhttp作为网络库 - 增加文件上传进度 - 增加蒲公英[APIV2](https://www.pgyer.com/doc/view/api#uploadApp)