@tarojs/plugin-mini-ci 3.5.9 → 3.6.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +292 -53
- package/dist/AlipayCI.js +119 -63
- package/dist/AlipayCI.js.map +1 -1
- package/dist/BaseCi.js +28 -1
- package/dist/BaseCi.js.map +1 -1
- package/dist/DingtalkCI.js +174 -0
- package/dist/DingtalkCI.js.map +1 -0
- package/dist/SwanCI.js +77 -22
- package/dist/SwanCI.js.map +1 -1
- package/dist/TTCI.js +85 -59
- package/dist/TTCI.js.map +1 -1
- package/dist/WeappCI.js +93 -19
- package/dist/WeappCI.js.map +1 -1
- package/dist/hooks.js +8 -0
- package/dist/hooks.js.map +1 -0
- package/dist/index.js +105 -27
- package/dist/index.js.map +1 -1
- package/dist/utils/compareVersion.js +27 -0
- package/dist/utils/compareVersion.js.map +1 -0
- package/dist/utils/npm.js +20 -0
- package/dist/utils/npm.js.map +1 -0
- package/dist/utils/qrcode.js +53 -0
- package/dist/utils/qrcode.js.map +1 -0
- package/package.json +19 -5
- package/types/AlipayCI.d.ts +6 -8
- package/types/BaseCi.d.ts +67 -19
- package/types/DingtalkCI.d.ts +13 -0
- package/types/SwanCI.d.ts +3 -3
- package/types/TTCI.d.ts +5 -4
- package/types/WeappCI.d.ts +1 -1
- package/types/hooks.d.ts +4 -0
- package/types/index.d.ts +1 -1
- package/types/utils/compareVersion.d.ts +1 -0
- package/types/utils/npm.d.ts +2 -0
- package/types/utils/qrcode.d.ts +16 -0
- package/dist/QRCode.js +0 -11
- package/dist/QRCode.js.map +0 -1
- package/types/QRCode.d.ts +0 -5
package/dist/TTCI.js
CHANGED
|
@@ -1,113 +1,139 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
/* eslint-disable no-console */
|
|
4
|
-
const cp = require("child_process");
|
|
5
|
-
const fs = require("fs");
|
|
6
4
|
const path = require("path");
|
|
7
5
|
const BaseCi_1 = require("./BaseCi");
|
|
8
|
-
const
|
|
6
|
+
const npm_1 = require("./utils/npm");
|
|
7
|
+
const qrcode_1 = require("./utils/qrcode");
|
|
9
8
|
class TTCI extends BaseCi_1.default {
|
|
10
|
-
|
|
9
|
+
init() {
|
|
10
|
+
const { chalk, printLog, processTypeEnum } = this.ctx.helper;
|
|
11
11
|
if (this.pluginOpts.tt == null) {
|
|
12
|
-
|
|
12
|
+
printLog("error" /* processTypeEnum.ERROR */, chalk.red(('请为"@tarojs/plugin-mini-ci"插件配置 "tt" 选项')));
|
|
13
|
+
process.exit(1);
|
|
13
14
|
}
|
|
14
15
|
try {
|
|
15
|
-
|
|
16
|
+
// 调试使用版本是: tt-ide-cli@0.1.13
|
|
17
|
+
this.tt = (0, npm_1.getNpmPkgSync)('tt-ide-cli', process.cwd());
|
|
16
18
|
}
|
|
17
19
|
catch (error) {
|
|
18
|
-
|
|
20
|
+
printLog("error" /* processTypeEnum.ERROR */, chalk.red('请安装依赖:tt-ide-cli'));
|
|
21
|
+
process.exit(1);
|
|
19
22
|
}
|
|
20
23
|
}
|
|
21
24
|
async _beforeCheck() {
|
|
22
25
|
await this.tt.loginByEmail({
|
|
23
26
|
email: this.pluginOpts.tt.email,
|
|
24
|
-
password: this.pluginOpts.tt.password
|
|
27
|
+
password: this.pluginOpts.tt.password,
|
|
28
|
+
dontSaveCookie: false
|
|
25
29
|
});
|
|
26
|
-
return await this.tt.checkSession();
|
|
27
30
|
}
|
|
28
|
-
open() {
|
|
29
|
-
const {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
console.log(chalk.green(`open projectPath: ${projectPath}`));
|
|
36
|
-
const openPath = `${openCmd}?path=${projectPath}`;
|
|
37
|
-
cp.exec(openPath, (error) => {
|
|
38
|
-
if (!error) {
|
|
39
|
-
console.log('打开IDE成功', openPath);
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
console.log(chalk.red('打开IDE失败', error));
|
|
31
|
+
async open() {
|
|
32
|
+
const { chalk, printLog, processTypeEnum } = this.ctx.helper;
|
|
33
|
+
printLog("start" /* processTypeEnum.START */, '启动字节跳动开发者工具...', this.projectPath);
|
|
34
|
+
try {
|
|
35
|
+
await this.tt.open({
|
|
36
|
+
project: {
|
|
37
|
+
path: this.projectPath
|
|
43
38
|
}
|
|
44
39
|
});
|
|
40
|
+
console.log(chalk.green(`打开IDE成功`));
|
|
45
41
|
}
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
cp.exec(openCmd, (error) => {
|
|
49
|
-
if (!error) {
|
|
50
|
-
console.log('打开IDE成功');
|
|
51
|
-
}
|
|
52
|
-
else {
|
|
53
|
-
console.log(chalk.red('打开IDE失败', error));
|
|
54
|
-
}
|
|
55
|
-
});
|
|
42
|
+
catch (error) {
|
|
43
|
+
printLog("error" /* processTypeEnum.ERROR */, chalk.red('打开IDE失败', error));
|
|
56
44
|
}
|
|
57
45
|
}
|
|
58
46
|
async preview() {
|
|
59
|
-
|
|
60
|
-
if (!isLogin)
|
|
61
|
-
return;
|
|
47
|
+
await this._beforeCheck();
|
|
62
48
|
const { chalk, printLog, processTypeEnum } = this.ctx.helper;
|
|
63
|
-
const { outputPath } = this.ctx.paths;
|
|
64
|
-
const appInfo = JSON.parse(fs.readFileSync(path.join(outputPath, 'app.json'), {
|
|
65
|
-
encoding: 'utf8'
|
|
66
|
-
}));
|
|
67
49
|
try {
|
|
68
50
|
printLog("start" /* processTypeEnum.START */, '预览字节跳动小程序');
|
|
51
|
+
const previewQrcodePath = path.join(this.projectPath, 'preview.png');
|
|
69
52
|
const previewResult = await this.tt.preview({
|
|
70
53
|
project: {
|
|
71
|
-
path:
|
|
54
|
+
path: this.projectPath
|
|
72
55
|
},
|
|
56
|
+
// @ts-ignore
|
|
73
57
|
page: {
|
|
74
|
-
path:
|
|
58
|
+
path: ''
|
|
75
59
|
},
|
|
76
60
|
qrcode: {
|
|
77
|
-
format: '
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
61
|
+
format: 'imageFile',
|
|
62
|
+
output: previewQrcodePath,
|
|
63
|
+
},
|
|
64
|
+
copyToClipboard: true,
|
|
65
|
+
cache: true
|
|
66
|
+
});
|
|
67
|
+
console.log(chalk.green(`开发版上传成功 ${new Date().toLocaleString()}\n`));
|
|
68
|
+
const qrContent = previewResult.shortUrl;
|
|
69
|
+
await (0, qrcode_1.printQrcode2Terminal)(qrContent);
|
|
70
|
+
printLog("remind" /* processTypeEnum.REMIND */, `预览二维码已生成,存储在:"${previewQrcodePath}",二维码内容是:${qrContent},过期时间:${new Date(previewResult.expireTime * 1000).toLocaleString()}`);
|
|
71
|
+
this.triggerPreviewHooks({
|
|
72
|
+
success: true,
|
|
73
|
+
data: {
|
|
74
|
+
platform: 'tt',
|
|
75
|
+
qrCodeContent: qrContent,
|
|
76
|
+
qrCodeLocalPath: previewQrcodePath
|
|
81
77
|
}
|
|
82
78
|
});
|
|
83
|
-
(0, QRCode_1.default)(previewResult.shortUrl);
|
|
84
|
-
printLog("generate" /* processTypeEnum.GENERATE */, '二维码已生成,请扫码预览');
|
|
85
79
|
}
|
|
86
80
|
catch (error) {
|
|
87
|
-
|
|
81
|
+
printLog("error" /* processTypeEnum.ERROR */, chalk.red(`上传失败 ${new Date().toLocaleString()} \n${error}`));
|
|
82
|
+
this.triggerPreviewHooks({
|
|
83
|
+
success: false,
|
|
84
|
+
data: {
|
|
85
|
+
platform: 'tt',
|
|
86
|
+
qrCodeContent: '',
|
|
87
|
+
qrCodeLocalPath: ''
|
|
88
|
+
},
|
|
89
|
+
error: new Error(error)
|
|
90
|
+
});
|
|
88
91
|
}
|
|
89
92
|
}
|
|
90
93
|
async upload() {
|
|
91
|
-
|
|
92
|
-
if (!isLogin)
|
|
93
|
-
return;
|
|
94
|
+
await this._beforeCheck();
|
|
94
95
|
const { chalk, printLog, processTypeEnum } = this.ctx.helper;
|
|
95
|
-
const { outputPath } = this.ctx.paths;
|
|
96
96
|
try {
|
|
97
97
|
printLog("start" /* processTypeEnum.START */, '上传代码到字节跳动后台');
|
|
98
98
|
printLog("remind" /* processTypeEnum.REMIND */, `本次上传版本号为:"${this.version}",上传描述为:“${this.desc}”`);
|
|
99
|
-
|
|
99
|
+
const uploadQrcodePath = path.join(this.projectPath, 'upload.png');
|
|
100
|
+
const uploadResult = await this.tt.upload({
|
|
100
101
|
project: {
|
|
101
|
-
path:
|
|
102
|
+
path: this.projectPath
|
|
103
|
+
},
|
|
104
|
+
qrcode: {
|
|
105
|
+
format: 'imageFile',
|
|
106
|
+
output: uploadQrcodePath,
|
|
102
107
|
},
|
|
103
108
|
version: this.version,
|
|
104
109
|
changeLog: this.desc,
|
|
105
|
-
needUploadSourcemap: true
|
|
110
|
+
needUploadSourcemap: true,
|
|
111
|
+
copyToClipboard: false
|
|
112
|
+
});
|
|
113
|
+
console.log(chalk.green(`体验版版上传成功 ${new Date().toLocaleString()}\n`));
|
|
114
|
+
const qrContent = uploadResult.shortUrl;
|
|
115
|
+
await (0, qrcode_1.printQrcode2Terminal)(qrContent);
|
|
116
|
+
printLog("remind" /* processTypeEnum.REMIND */, `体验版二维码已生成,存储在:"${uploadQrcodePath}",二维码内容是:"${qrContent}", 过期时间:${new Date(uploadResult.expireTime * 1000).toLocaleString()}`);
|
|
117
|
+
this.triggerUploadHooks({
|
|
118
|
+
success: true,
|
|
119
|
+
data: {
|
|
120
|
+
platform: 'tt',
|
|
121
|
+
qrCodeContent: qrContent,
|
|
122
|
+
qrCodeLocalPath: uploadQrcodePath
|
|
123
|
+
}
|
|
106
124
|
});
|
|
107
|
-
printLog("remind" /* processTypeEnum.REMIND */, '上传完成');
|
|
108
125
|
}
|
|
109
126
|
catch (error) {
|
|
110
|
-
|
|
127
|
+
printLog("error" /* processTypeEnum.ERROR */, chalk.red(`上传失败 ${new Date().toLocaleString()} \n${error}`));
|
|
128
|
+
this.triggerUploadHooks({
|
|
129
|
+
success: false,
|
|
130
|
+
data: {
|
|
131
|
+
platform: 'tt',
|
|
132
|
+
qrCodeContent: '',
|
|
133
|
+
qrCodeLocalPath: ''
|
|
134
|
+
},
|
|
135
|
+
error: new Error(error)
|
|
136
|
+
});
|
|
111
137
|
}
|
|
112
138
|
}
|
|
113
139
|
}
|
package/dist/TTCI.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TTCI.js","sourceRoot":"","sources":["../src/TTCI.ts"],"names":[],"mappings":";;AAAA,+BAA+B;AAC/B,
|
|
1
|
+
{"version":3,"file":"TTCI.js","sourceRoot":"","sources":["../src/TTCI.ts"],"names":[],"mappings":"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"}
|
package/dist/WeappCI.js
CHANGED
|
@@ -1,21 +1,29 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
/* eslint-disable no-console */
|
|
4
|
-
const
|
|
4
|
+
const crypto = require("crypto");
|
|
5
5
|
const ci = require("miniprogram-ci");
|
|
6
6
|
const os = require("os");
|
|
7
7
|
const path = require("path");
|
|
8
|
+
const shell = require("shelljs");
|
|
8
9
|
const BaseCi_1 = require("./BaseCi");
|
|
10
|
+
const qrcode_1 = require("./utils/qrcode");
|
|
9
11
|
class WeappCI extends BaseCi_1.default {
|
|
10
|
-
|
|
11
|
-
const {
|
|
12
|
+
init() {
|
|
13
|
+
const { appPath } = this.ctx.paths;
|
|
12
14
|
const { fs } = this.ctx.helper;
|
|
13
15
|
if (this.pluginOpts.weapp == null) {
|
|
14
16
|
throw new Error('请为"@tarojs/plugin-mini-ci"插件配置 "weapp" 选项');
|
|
15
17
|
}
|
|
16
18
|
this.devToolsInstallPath = this.pluginOpts.weapp.devToolsInstallPath || (process.platform === 'darwin' ? '/Applications/wechatwebdevtools.app' : 'C:\\Program Files (x86)\\Tencent\\微信web开发者工具');
|
|
17
19
|
delete this.pluginOpts.weapp.devToolsInstallPath;
|
|
18
|
-
const weappConfig =
|
|
20
|
+
const weappConfig = {
|
|
21
|
+
type: 'miniProgram',
|
|
22
|
+
projectPath: this.projectPath,
|
|
23
|
+
appid: this.pluginOpts.weapp.appid,
|
|
24
|
+
privateKeyPath: this.pluginOpts.weapp.privateKeyPath,
|
|
25
|
+
ignores: this.pluginOpts.weapp.ignores,
|
|
26
|
+
};
|
|
19
27
|
const privateKeyPath = path.isAbsolute(weappConfig.privateKeyPath) ? weappConfig.privateKeyPath : path.join(appPath, weappConfig.privateKeyPath);
|
|
20
28
|
if (!fs.pathExistsSync(privateKeyPath)) {
|
|
21
29
|
throw new Error(`"weapp.privateKeyPath"选项配置的路径不存在,本次上传终止:${privateKeyPath}`);
|
|
@@ -24,7 +32,6 @@ class WeappCI extends BaseCi_1.default {
|
|
|
24
32
|
}
|
|
25
33
|
async open() {
|
|
26
34
|
const { fs, printLog, processTypeEnum, getUserHomeDir } = this.ctx.helper;
|
|
27
|
-
const { appPath } = this.ctx.paths;
|
|
28
35
|
// 检查安装路径是否存在
|
|
29
36
|
if (!(await fs.pathExists(this.devToolsInstallPath))) {
|
|
30
37
|
printLog("error" /* processTypeEnum.ERROR */, '微信开发者工具安装路径不存在', this.devToolsInstallPath);
|
|
@@ -34,9 +41,9 @@ class WeappCI extends BaseCi_1.default {
|
|
|
34
41
|
const cliPath = path.join(this.devToolsInstallPath, os.platform() === 'win32' ? '/cli.bat' : '/Contents/MacOS/cli');
|
|
35
42
|
const isWindows = os.platform() === 'win32';
|
|
36
43
|
// 检查是否开启了命令行
|
|
37
|
-
const errMesg = '工具的服务端口已关闭。要使用命令行调用工具,请打开工具 -> 设置 -> 安全设置,将服务端口开启。详细信息: https://developers.weixin.qq.com/miniprogram/dev/devtools/cli.html';
|
|
44
|
+
const errMesg = '工具的服务端口已关闭。要使用命令行调用工具,请打开工具 -> 设置 -> 安全设置,将服务端口开启。详细信息: https://developers.weixin.qq.com/miniprogram/dev/devtools/cli.html ';
|
|
38
45
|
const installPath = isWindows ? this.devToolsInstallPath : `${this.devToolsInstallPath}/Contents/MacOS`;
|
|
39
|
-
const md5 =
|
|
46
|
+
const md5 = crypto.createHash('md5').update(installPath).digest('hex');
|
|
40
47
|
const ideStatusFile = path.join(getUserHomeDir(), isWindows
|
|
41
48
|
? `/AppData/Local/微信开发者工具/User Data/${md5}/Default/.ide-status`
|
|
42
49
|
: `/Library/Application Support/微信开发者工具/${md5}/Default/.ide-status`);
|
|
@@ -52,32 +59,58 @@ class WeappCI extends BaseCi_1.default {
|
|
|
52
59
|
if (!(await fs.pathExists(cliPath))) {
|
|
53
60
|
printLog("error" /* processTypeEnum.ERROR */, '命令行工具路径不存在', cliPath);
|
|
54
61
|
}
|
|
55
|
-
printLog("start" /* processTypeEnum.START */, '微信开发者工具...');
|
|
56
|
-
|
|
57
|
-
if (err) {
|
|
58
|
-
printLog("error" /* processTypeEnum.ERROR */, err.message);
|
|
59
|
-
}
|
|
60
|
-
});
|
|
62
|
+
printLog("start" /* processTypeEnum.START */, '微信开发者工具...', this.projectPath);
|
|
63
|
+
shell.exec(`${cliPath} open --project ${this.projectPath}`);
|
|
61
64
|
}
|
|
62
65
|
async preview() {
|
|
63
66
|
const { chalk, printLog, processTypeEnum } = this.ctx.helper;
|
|
64
67
|
try {
|
|
65
68
|
printLog("start" /* processTypeEnum.START */, '上传开发版代码到微信后台并预览');
|
|
69
|
+
const previewQrcodePath = path.join(this.projectPath, 'preview.jpg');
|
|
66
70
|
const uploadResult = await ci.preview({
|
|
67
71
|
project: this.instance,
|
|
68
72
|
version: this.version,
|
|
69
73
|
desc: this.desc,
|
|
70
|
-
onProgressUpdate: undefined
|
|
74
|
+
onProgressUpdate: undefined,
|
|
75
|
+
robot: this.pluginOpts.weapp.robot,
|
|
76
|
+
qrcodeFormat: 'image',
|
|
77
|
+
qrcodeOutputDest: previewQrcodePath
|
|
71
78
|
});
|
|
72
79
|
if (uploadResult.subPackageInfo) {
|
|
73
80
|
const allPackageInfo = uploadResult.subPackageInfo.find((item) => item.name === '__FULL__');
|
|
74
81
|
const mainPackageInfo = uploadResult.subPackageInfo.find((item) => item.name === '__APP__');
|
|
75
82
|
const extInfo = `本次上传${allPackageInfo.size / 1024}kb ${mainPackageInfo ? ',其中主包' + mainPackageInfo.size + 'kb' : ''}`;
|
|
76
|
-
console.log(chalk.green(
|
|
83
|
+
console.log(chalk.green(`开发版上传成功 ${new Date().toLocaleString()} ${extInfo}\n`));
|
|
84
|
+
}
|
|
85
|
+
let qrContent;
|
|
86
|
+
try {
|
|
87
|
+
qrContent = await (0, qrcode_1.readQrcodeImageContent)(previewQrcodePath);
|
|
88
|
+
await (0, qrcode_1.printQrcode2Terminal)(qrContent);
|
|
89
|
+
printLog("remind" /* processTypeEnum.REMIND */, `预览二维码已生成,存储在:"${previewQrcodePath}",二维码内容是:${qrContent}`);
|
|
90
|
+
}
|
|
91
|
+
catch (error) {
|
|
92
|
+
printLog("error" /* processTypeEnum.ERROR */, chalk.red(`获取预览二维码失败:${error.message}`));
|
|
77
93
|
}
|
|
94
|
+
this.triggerPreviewHooks({
|
|
95
|
+
success: true,
|
|
96
|
+
data: {
|
|
97
|
+
platform: 'weapp',
|
|
98
|
+
qrCodeContent: qrContent,
|
|
99
|
+
qrCodeLocalPath: previewQrcodePath
|
|
100
|
+
}
|
|
101
|
+
});
|
|
78
102
|
}
|
|
79
103
|
catch (error) {
|
|
80
|
-
|
|
104
|
+
printLog("error" /* processTypeEnum.ERROR */, chalk.red(`上传失败 ${new Date().toLocaleString()} \n${error.message}`));
|
|
105
|
+
this.triggerPreviewHooks({
|
|
106
|
+
success: false,
|
|
107
|
+
data: {
|
|
108
|
+
platform: 'weapp',
|
|
109
|
+
qrCodeContent: '',
|
|
110
|
+
qrCodeLocalPath: ''
|
|
111
|
+
},
|
|
112
|
+
error
|
|
113
|
+
});
|
|
81
114
|
}
|
|
82
115
|
}
|
|
83
116
|
async upload() {
|
|
@@ -89,17 +122,58 @@ class WeappCI extends BaseCi_1.default {
|
|
|
89
122
|
project: this.instance,
|
|
90
123
|
version: this.version,
|
|
91
124
|
desc: this.desc,
|
|
92
|
-
onProgressUpdate: undefined
|
|
125
|
+
onProgressUpdate: undefined,
|
|
126
|
+
robot: this.pluginOpts.weapp.robot
|
|
93
127
|
});
|
|
94
128
|
if (uploadResult.subPackageInfo) {
|
|
95
129
|
const allPackageInfo = uploadResult.subPackageInfo.find((item) => item.name === '__FULL__');
|
|
96
130
|
const mainPackageInfo = uploadResult.subPackageInfo.find((item) => item.name === '__APP__');
|
|
97
131
|
const extInfo = `本次上传${allPackageInfo.size / 1024}kb ${mainPackageInfo ? ',其中主包' + mainPackageInfo.size + 'kb' : ''}`;
|
|
98
|
-
console.log(chalk.green(`上传成功 ${new Date().toLocaleString()} ${extInfo}`));
|
|
132
|
+
console.log(chalk.green(`上传成功 ${new Date().toLocaleString()} ${extInfo}\n`));
|
|
133
|
+
}
|
|
134
|
+
const uploadQrcodePath = path.join(this.projectPath, 'upload.png');
|
|
135
|
+
try {
|
|
136
|
+
// 体验码规则: https://open.weixin.qq.com/sns/getexpappinfo?appid=xxx&path=入口路径.html#wechat-redirect
|
|
137
|
+
const qrContent = `https://open.weixin.qq.com/sns/getexpappinfo?appid=${this.pluginOpts.weapp.appid}#wechat-redirect`;
|
|
138
|
+
await (0, qrcode_1.printQrcode2Terminal)(qrContent);
|
|
139
|
+
await (0, qrcode_1.generateQrcodeImageFile)(uploadQrcodePath, qrContent);
|
|
140
|
+
printLog("remind" /* processTypeEnum.REMIND */, `体验版二维码已生成,存储在:"${uploadQrcodePath}",二维码内容是:"${qrContent}"`);
|
|
141
|
+
printLog("remind" /* processTypeEnum.REMIND */, `可能需要您前往微信后台,将当前上传版本设置为“体验版”`);
|
|
142
|
+
printLog("remind" /* processTypeEnum.REMIND */, `若本次上传的robot机器人和上次一致,并且之前已经在微信后台设置其为“体验版”,则本次无需再次设置`);
|
|
143
|
+
this.triggerUploadHooks({
|
|
144
|
+
success: true,
|
|
145
|
+
data: {
|
|
146
|
+
platform: 'weapp',
|
|
147
|
+
qrCodeContent: qrContent,
|
|
148
|
+
qrCodeLocalPath: uploadQrcodePath
|
|
149
|
+
}
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
catch (error) {
|
|
153
|
+
// 实际读取二维码时有极小概率会读取失败,待观察
|
|
154
|
+
printLog("error" /* processTypeEnum.ERROR */, chalk.red(`体验二维码生成失败:${error.message}`));
|
|
155
|
+
this.triggerUploadHooks({
|
|
156
|
+
success: true,
|
|
157
|
+
data: {
|
|
158
|
+
platform: 'weapp',
|
|
159
|
+
qrCodeContent: '',
|
|
160
|
+
qrCodeLocalPath: uploadQrcodePath
|
|
161
|
+
},
|
|
162
|
+
error
|
|
163
|
+
});
|
|
99
164
|
}
|
|
100
165
|
}
|
|
101
166
|
catch (error) {
|
|
102
|
-
|
|
167
|
+
printLog("error" /* processTypeEnum.ERROR */, chalk.red(`上传失败 ${new Date().toLocaleString()} \n${error.message}`));
|
|
168
|
+
this.triggerUploadHooks({
|
|
169
|
+
success: false,
|
|
170
|
+
data: {
|
|
171
|
+
platform: 'weapp',
|
|
172
|
+
qrCodeContent: '',
|
|
173
|
+
qrCodeLocalPath: ''
|
|
174
|
+
},
|
|
175
|
+
error
|
|
176
|
+
});
|
|
103
177
|
}
|
|
104
178
|
}
|
|
105
179
|
}
|
package/dist/WeappCI.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WeappCI.js","sourceRoot":"","sources":["../src/WeappCI.ts"],"names":[],"mappings":";;AAAA,+BAA+B;AAC/B,
|
|
1
|
+
{"version":3,"file":"WeappCI.js","sourceRoot":"","sources":["../src/WeappCI.ts"],"names":[],"mappings":"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"}
|
package/dist/hooks.js
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ON_UPLOAD_COMPLETE = exports.ON_PREVIEW_COMPLETE = void 0;
|
|
4
|
+
/** CI 执行预览后触发 */
|
|
5
|
+
exports.ON_PREVIEW_COMPLETE = 'onPreviewComplete';
|
|
6
|
+
/** CI 执行上传后触发 */
|
|
7
|
+
exports.ON_UPLOAD_COMPLETE = 'onUploadComplete';
|
|
8
|
+
//# sourceMappingURL=hooks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":";;;AAAA,iBAAiB;AACJ,QAAA,mBAAmB,GAAG,mBAAmB,CAAA;AACtD,iBAAiB;AACJ,QAAA,kBAAkB,GAAG,kBAAkB,CAAA"}
|