插件名
@maloulab/taro-plugins-socksuppet-ci
@maloulab/taro-plugins-socksuppet-ci
安装
yarn add @maloulab/taro-plugins-socksuppet-ci
or
npm i @maloulab/taro-plugins-socksuppet-ci
插件描述
taro官方是提供了小程序集成插件的@tarojs/plugin-mini-ci ,且支持配置。
例如
const CIPluginOpt = {weapp: {appid: '微信小程序appid',privateKeyPath: '密钥文件相对项目根目录的相对路径,例如 key/private.appid.key',},
}
当你需要同时发布多个微信小程序时(马甲包),就需要修改这里,重新构建发布。
解决
所以为了解决该问题,在该插件基础上,增加了马甲包功能,只需要在原先的配置基础上,将weapp对象改为数组即可,(ps: 配置对象也可,只会构建一次)。
weapp: [{appid: '微信小程序appid',privateKeyPath: '密钥文件相对项目根目录的相对路径,例如 key/private.appid.key',}],
plugins: [['@tarojs/plugin-mini-ci', CIPluginFn]],
配置修改为
plugins: [['@tarojs/plugin-mini-ci', { CIPluginFn }]],
使用
plugins: [ ["@tarojs/plugin-mini-ci", CIPluginFn]],
修改为
plugins: [ ["@maloulab/taro-plugins-socksuppet-ci", {CIPluginFn,// 非必传configMap: {},// 非必传// 自定义打包命令 默认自动获取(taro + 命令 + 参数)例:taro upload --type weappcommand: ''
}]],
CIPluginFn
官方插件配置 @tarojs/plugin-mini-ci
配置示例:
由于插件会修改 json 配置中的 appid,以达到构建的目的
需要加入 appid 参数
appid: 必填
appName: 非必填(打包显示)
const CIPluginOpt = {weapp: [{// 必填appid: "微信小程序appid1",privateKeyPath:"密钥文件相对项目根目录的相对路径,例如 key/private.appid.key",},{// 必填appid: "微信小程序appid2",privateKeyPath:"密钥文件相对项目根目录的相对路径,例如 key/private.appid.key",},],// 同weapp,如需多个构建,改为数组tt: {appid: "",email: "字节小程序邮箱",password: "字节小程序密码",},// 同weapp,如需多个构建,改为数组alipay: {appid: "支付宝小程序appid",toolId: "工具id",privateKeyPath:"密钥文件相对项目根目录的相对路径,例如 key/pkcs8-private-pem",},// 同weapp,如需多个构建,改为数组dd: {appid: "钉钉小程序appid,即钉钉开放平台后台应用管理的 MiniAppId 选项",token: "令牌,从钉钉后台获取",},// 同weapp,如需多个构建,改为数组swan: {appid: "",token: "鉴权需要的token令牌",},// 版本号version: "1.0.0",// 版本发布描述desc: "版本描述",
};
如需打包多个,将 weapp 改为数组配置多个即可!!!
// 默认configMap
const configMap = {weapp: "project.config.json",tt: "project.tt.json",alipay: "mini.project.json",qq: "project.config.json",dd: "project.dd.json",swan: "project.swan.json",lark: "project.lark.json",
};
由于插件会自动修改 project.config.json 中的 appid,
实现自动化构建多个小程序,每个小程序文件名不一致
可自定义
注意
因为会修改 project.config.json 或其他 json 中的 appid
appid 会替换为配置中的最后一个
最后
因没有其他小程序需求,仅测试微信小程序批量打包!!!
具体配置可查看 @maloulab/taro-plugins-socksuppet-ci