1.14.4 • Published 1 year ago

mx-mini-ci-tool v1.14.4

Weekly downloads
-
License
ISC
Repository
github
Last release
1 year ago

mx-mini-ci-tool

微信小程序Ci工具

小程序CI工具提供了以下命令

  1. init: 对项目进行初始化。此过程会完成如下事情:

(1)在当前小程序项目的根目录下创建qrcode目录用于存放小程序的预览二维码。 (2)在当前小程序项目的根目录下创建.release-it.json文件用于配置release-it 。 (3)在当前小程序项目的根目录下创建CHANGELOG.md用于记录小程序代码的变本变更。 (4)为当前小程序项目安装必要的依赖(git-cz,release-it,@release-it/conventional-changelog)。 (5)修改当前小程序项目的package.json文件,并增加用于运行git-cz和release-it的npm scripts。 (6)在当前小程序项目的根目录下创建ci.config.js文件用于配置调用miniprogram-ci相关功能的配置以及调用飞书机器人的相关配置,详见配置文件章节。

  1. uploadCode:将小程序项目代码上传到gitlab(或者github等)。此命令会进行如下操作:

(1)执行 git add .命令 (2)执行 npm run commit 命令,调用git-cz (3)执行 npm run release 命令,调用release-it

  1. preview: 获取小程序的预览二维码,并保存到init命令创建的qrcode目录下。
  2. upload: 将小程序代码上传到开发者后台。如果working tree不是clean状态则会调用uploadCode命令强制将代码先提交到Gitlab,然后再上传代码,为上传的代码提供可追溯的版本。
  3. send:获取预览二维码,将代码上传到小程序开发者后台,将二维码发送到飞书群聊。此命令会调用preview命令和upload命令。

配置文件详解

export default {
  // new ci.Project的参数
  newProjectSettings: {
    appid: 'wx42066******be8d19',
    type: 'miniProgram',
    projectPath: 'E:\/GitSpace\/fs-new\/lio-4s-applet',
    privateKeyPath: 'E:\/GitSpace\/fs-new\/lio-4s-applet\/private.wx420663f291be8d19.key',
    ignores: ['node_modules/**/*'],
  },
  // ci.upload的参数
  ciUploadSettings: {
    setting: {
      es6: true,
      minifyJS: true,
      minifyWXML: true,
      minifyWXSS: true
    },
    onProgressUpdate: console.log,
  },
  // ci.preview的参数
  ciPreviewSettings: {
    setting: {
      es6: true,
      minifyJS: true,
      minifyWXML: true,
      minifyWXSS: true
    },
    qrcodeFormat: 'image',
    qrcodeOutputDest: 'E:\/GitSpace\/fs-new\/lio-4s-applet\/qrcode\/destination.jpg',
    onProgressUpdate: console.log,
  },
  // 发送到飞书的参数
  feishuSendSettings: {
    //app_id和app_secret飞书机器人应用的凭证信息
    app_id: 'cli_a2*****f8100e',
    app_secret: 'UayK*******YTJVnEym3P',
    // 后台提供的对飞书根据图片获取image_key接口的封装接口,详见飞书文档
    uploadImgUrl: 'https://************tool/image/upload',
    // 飞书机器人 webhook 地址
    webhookUrl: 'https://open.*******745426f55',
    // 飞书消息要通知到的人
    receivers:[
      {
        tag: 'at',
        user_id: '70652****972',
        user_name: '惊鸿'
      },
      // {
      //   tag: 'at',
      //   user_id: '705224***96225',
      //   user_name: 'NewName'
      // }
    ]
  }
}

使用注意事项

  1. 由于本工具使用了 miniprogram-ci ,所以使用本工具之前应访问"微信公众平台-开发 - 开发设置"后下载代码上传密钥,并配置 IP 白名单 开发者可选择打开 IP 白名单,打开后只有白名单中的 IP 才能调用相关接口。
  2. 注意调用完init命令后要及时修改ci.config.js配置文件。
  3. 关于使用飞书机器人的注意事项:首先是你的飞书机器人要使用发送图片接口则要开通权限,这个可以参照飞书的开发者文档。其次是ci.config.js配置文件中的uploadImgUrl字段是后端开发人员对飞书接口的进一步封装的接口,接口返回格式需要为如下格式:
{
	"code": 0,
	"data": {
		"image_key": ""
	},
	"msg": ""
}

所以要使用send命令则需要后端为你开发一个接口。

1.14.4

1 year ago

1.14.3

1 year ago

1.14.2

1 year ago

1.14.1

1 year ago

1.14.0

1 year ago

1.13.0

1 year ago

1.12.0

1 year ago

1.11.0

1 year ago

1.10.1

1 year ago

1.10.0

1 year ago

1.9.2

1 year ago