miniprogram-ci 2.1.14 → 2.1.16
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/CHANGELOG.md +7 -2
- package/README.md +4 -0
- package/dist/@types/ci/cloud/cloudapi.d.ts +1 -1
- package/dist/@types/ci/cloud/utils.d.ts +0 -1
- package/dist/@types/ci/cos-upload.d.ts +1 -0
- package/dist/@types/ci/gamepkg/apkplug.d.ts +19 -0
- package/dist/@types/ci/gamepkg/index.d.ts +19 -0
- package/dist/@types/ci/getCompiledResult.d.ts +0 -1
- package/dist/@types/ci/index.d.ts +3 -0
- package/dist/@types/ci/jsserver.d.ts +0 -1
- package/dist/@types/ci/miniapp/upload.d.ts +0 -1
- package/dist/@types/ci/upload.d.ts +0 -1
- package/dist/@types/ci/utils/unpack.d.ts +0 -1
- package/dist/@types/ci/utils/wxvpkg/utils.d.ts +0 -1
- package/dist/@types/config/config.d.ts +1 -1
- package/dist/@types/config/url.config.d.ts +7 -0
- package/dist/@types/index.d.ts +15 -12
- package/dist/@types/modules/corecompiler/original/compile/game.d.ts +0 -1
- package/dist/@types/modules/corecompiler/original/compile/index.d.ts +0 -1
- package/dist/@types/modules/corecompiler/original/index.d.ts +0 -1
- package/dist/@types/modules/corecompiler/original/utils/env.d.ts +1 -1
- package/dist/@types/modules/corecompiler/original/webWorker/WebWorkerInstance.d.ts +1 -0
- package/dist/@types/modules/corecompiler/original/webWorker/childWebWorker.d.ts +1 -0
- package/dist/@types/modules/corecompiler/original/webWorker/configs.d.ts +27 -0
- package/dist/@types/modules/corecompiler/original/webWorker/webWorkerManager.d.ts +1 -0
- package/dist/@types/modules/corecompiler/original/workerThread/getWorkerPoolSize.d.ts +1 -0
- package/dist/@types/modules/corecompiler/original/workerThread/workerManager.d.ts +1 -0
- package/dist/@types/modules/corecompiler/originalCompiler.d.ts +0 -1
- package/dist/@types/modules/corecompiler/summerCompiler.d.ts +1 -1
- package/dist/@types/modules/index.d.ts +2 -1
- package/dist/@types/modules/nativecompiler/ios/buildCloud.d.ts +1 -0
- package/dist/@types/types/ci.d.ts +1 -1
- package/dist/@types/utils/asyncTask/index.d.ts +14 -0
- package/dist/@types/utils/babelHelperContentForWebide.d.ts +1 -0
- package/dist/@types/utils/cosUpload.d.ts +3 -2
- package/dist/@types/utils/env.d.ts +2 -0
- package/dist/@types/utils/packOptionsHelper.d.ts +1 -1
- package/dist/@types/utils/request.d.ts +2 -1
- package/dist/@types/utils/subprocess/getProcess.d.ts +1 -0
- package/dist/@types/utils/subprocess/processService.d.ts +6 -0
- package/dist/@types/utils/subprocess/stringifyPostMsg.d.ts +2 -0
- package/dist/@types/utils/taskqueue.d.ts +1 -0
- package/dist/@types/utils/tools.d.ts +1 -0
- package/dist/@types/utils/waitable.d.ts +1 -1
- package/dist/@types/utils/wxvpkgreader/wxvpkg/utils.d.ts +0 -1
- package/dist/ci/cloud/cloudapi.js +1 -1
- package/dist/ci/cos-upload.js +1 -1
- package/dist/ci/gamepkg/apkplug.js +1 -0
- package/dist/ci/gamepkg/index.js +1 -0
- package/dist/ci/getCompiledResult.js +1 -1
- package/dist/ci/index.js +1 -1
- package/dist/ci/jsserver.js +1 -1
- package/dist/ci/miniapp/upload.js +1 -1
- package/dist/ci/upload.js +1 -1
- package/dist/common/code-analyse/index.js +1 -1
- package/dist/config/config.js +1 -1
- package/dist/config/url.config.js +1 -1
- package/dist/index.js +1 -1
- package/dist/modules/corecompiler/original/compile/game.js +1 -1
- package/dist/modules/corecompiler/original/compile/miniprogram.js +1 -1
- package/dist/modules/corecompiler/original/utils/env.js +1 -1
- package/dist/modules/corecompiler/original/webWorker/WebWorkerInstance.js +1 -0
- package/dist/modules/corecompiler/original/webWorker/childWebWorker.js +1 -0
- package/dist/modules/corecompiler/original/webWorker/configs.js +1 -0
- package/dist/modules/corecompiler/original/webWorker/webWorkerManager.js +1 -0
- package/dist/modules/corecompiler/original/workerThread/fork.js +1 -1
- package/dist/modules/corecompiler/original/workerThread/getWorkerPoolSize.js +1 -0
- package/dist/modules/corecompiler/original/workerThread/index.js +1 -1
- package/dist/modules/corecompiler/original/workerThread/task/minifywxml.js +1 -1
- package/dist/modules/corecompiler/original/workerThread/workerManager.js +1 -1
- package/dist/modules/corecompiler/processHandler.js +1 -1
- package/dist/modules/corecompiler/summer/plugins/base/wxss.js +1 -1
- package/dist/modules/corecompiler/summer/plugins/index.js +1 -1
- package/dist/modules/corecompiler/summer/plugins/less.js +1 -1
- package/dist/modules/corecompiler/summer/plugins/sass.js +1 -1
- package/dist/modules/corecompiler/summer/plugins/typescript.js +1 -1
- package/dist/modules/corecompiler/summerCompiler.js +1 -1
- package/dist/modules/corecompiler/summerEntryProcess.js +1 -1
- package/dist/modules/index.js +1 -1
- package/dist/modules/nativecompiler/ios/buildCloud.js +1 -1
- package/dist/project/advance/precompileProject.js +1 -1
- package/dist/project/baseProject.js +1 -1
- package/dist/utils/asyncTask/index.js +1 -0
- package/dist/utils/babelHelperContentForWebide.js +1 -0
- package/dist/utils/cosUpload.js +1 -1
- package/dist/utils/env.js +1 -1
- package/dist/utils/officialDonutPlugin.js +1 -1
- package/dist/utils/packOptionsHelper.js +1 -1
- package/dist/utils/progressRecorder.js +1 -1
- package/dist/utils/request.js +1 -1
- package/dist/utils/subprocess/entryProcess.js +1 -1
- package/dist/utils/subprocess/getProcess.js +1 -0
- package/dist/utils/subprocess/processManager.js +1 -1
- package/dist/utils/subprocess/processService.js +1 -0
- package/dist/utils/subprocess/stringifyPostMsg.js +1 -0
- package/dist/utils/tools.js +1 -1
- package/dist/utils/waitable.js +1 -1
- package/package.json +16 -7
- package/dist/@types/common/cloud-api/src/apis/apis.d.ts +0 -5
- package/dist/@types/common/cloud-api/src/apis/cdn/cdn.apis.d.ts +0 -2
- package/dist/@types/common/cloud-api/src/apis/cdn/index.d.ts +0 -1
- package/dist/@types/common/cloud-api/src/apis/flexdb/flexdb.apis.d.ts +0 -17
- package/dist/@types/common/cloud-api/src/apis/flexdb/index.d.ts +0 -1
- package/dist/@types/common/cloud-api/src/apis/scf/index.d.ts +0 -1
- package/dist/@types/common/cloud-api/src/apis/scf/scf.apis.d.ts +0 -24
- package/dist/@types/common/cloud-api/src/apis/ssl/index.d.ts +0 -1
- package/dist/@types/common/cloud-api/src/apis/ssl/ssl.apis.d.ts +0 -1
- package/dist/@types/common/cloud-api/src/apis/tcb/general.apis.d.ts +0 -6
- package/dist/@types/common/cloud-api/src/apis/tcb/index.d.ts +0 -2
- package/dist/@types/common/cloud-api/src/apis/tcb/tcb.apis.d.ts +0 -186
- package/dist/@types/common/cloud-api/src/index.d.ts +0 -4
- package/dist/@types/common/cloud-api/src/transaction/contracts/account.contracts.d.ts +0 -2
- package/dist/@types/common/cloud-api/src/transaction/contracts/cdn.contracts.d.ts +0 -3
- package/dist/@types/common/cloud-api/src/transaction/contracts/contracts.d.ts +0 -9
- package/dist/@types/common/cloud-api/src/transaction/contracts/factory.d.ts +0 -60
- package/dist/@types/common/cloud-api/src/transaction/contracts/flexdb.contracts.d.ts +0 -18
- package/dist/@types/common/cloud-api/src/transaction/contracts/lowcode.contracts.d.ts +0 -3
- package/dist/@types/common/cloud-api/src/transaction/contracts/scf.contracts.d.ts +0 -23
- package/dist/@types/common/cloud-api/src/transaction/contracts/ssl.contracts.d.ts +0 -2
- package/dist/@types/common/cloud-api/src/transaction/contracts/tcb.contracts.d.ts +0 -189
- package/dist/@types/common/cloud-api/src/transaction/transactor.d.ts +0 -34
- package/dist/@types/common/cloud-api/src/transaction/validations/account.validations.d.ts +0 -2
- package/dist/@types/common/cloud-api/src/transaction/validations/billing.validations.d.ts +0 -2
- package/dist/@types/common/cloud-api/src/transaction/validations/cdn.validations.d.ts +0 -3
- package/dist/@types/common/cloud-api/src/transaction/validations/common.validations.d.ts +0 -125
- package/dist/@types/common/cloud-api/src/transaction/validations/flexdb.validations.d.ts +0 -23
- package/dist/@types/common/cloud-api/src/transaction/validations/lowcode.validations.d.ts +0 -3
- package/dist/@types/common/cloud-api/src/transaction/validations/scf.validations.d.ts +0 -28
- package/dist/@types/common/cloud-api/src/transaction/validations/ssl.validations.d.ts +0 -2
- package/dist/@types/common/cloud-api/src/transaction/validations/tcb.validations.d.ts +0 -194
- package/dist/@types/common/cloud-api/src/transaction/validations/validations.d.ts +0 -9
- package/dist/@types/common/cloud-api/src/utils/common.d.ts +0 -2
- package/dist/@types/common/cloud-api/src/utils/validator.d.ts +0 -41
- package/dist/common/cloud-api/src/apis/apis.js +0 -1
- package/dist/common/cloud-api/src/apis/cdn/cdn.apis.js +0 -1
- package/dist/common/cloud-api/src/apis/cdn/index.js +0 -1
- package/dist/common/cloud-api/src/apis/flexdb/flexdb.apis.js +0 -1
- package/dist/common/cloud-api/src/apis/flexdb/index.js +0 -1
- package/dist/common/cloud-api/src/apis/scf/index.js +0 -1
- package/dist/common/cloud-api/src/apis/scf/scf.apis.js +0 -1
- package/dist/common/cloud-api/src/apis/ssl/index.js +0 -1
- package/dist/common/cloud-api/src/apis/ssl/ssl.apis.js +0 -1
- package/dist/common/cloud-api/src/apis/tcb/general.apis.js +0 -1
- package/dist/common/cloud-api/src/apis/tcb/index.js +0 -1
- package/dist/common/cloud-api/src/apis/tcb/tcb.apis.js +0 -1
- package/dist/common/cloud-api/src/index.js +0 -1
- package/dist/common/cloud-api/src/transaction/contracts/account.contracts.js +0 -1
- package/dist/common/cloud-api/src/transaction/contracts/cdn.contracts.js +0 -1
- package/dist/common/cloud-api/src/transaction/contracts/contracts.js +0 -1
- package/dist/common/cloud-api/src/transaction/contracts/factory.js +0 -1
- package/dist/common/cloud-api/src/transaction/contracts/flexdb.contracts.js +0 -1
- package/dist/common/cloud-api/src/transaction/contracts/lowcode.contracts.js +0 -1
- package/dist/common/cloud-api/src/transaction/contracts/scf.contracts.js +0 -1
- package/dist/common/cloud-api/src/transaction/contracts/ssl.contracts.js +0 -1
- package/dist/common/cloud-api/src/transaction/contracts/tcb.contracts.js +0 -1
- package/dist/common/cloud-api/src/transaction/transactor.js +0 -1
- package/dist/common/cloud-api/src/transaction/validations/account.validations.js +0 -1
- package/dist/common/cloud-api/src/transaction/validations/billing.validations.js +0 -1
- package/dist/common/cloud-api/src/transaction/validations/cdn.validations.js +0 -1
- package/dist/common/cloud-api/src/transaction/validations/common.validations.js +0 -1
- package/dist/common/cloud-api/src/transaction/validations/flexdb.validations.js +0 -1
- package/dist/common/cloud-api/src/transaction/validations/lowcode.validations.js +0 -1
- package/dist/common/cloud-api/src/transaction/validations/scf.validations.js +0 -1
- package/dist/common/cloud-api/src/transaction/validations/ssl.validations.js +0 -1
- package/dist/common/cloud-api/src/transaction/validations/tcb.validations.js +0 -1
- package/dist/common/cloud-api/src/transaction/validations/validations.js +0 -1
- package/dist/common/cloud-api/src/utils/common.js +0 -1
- package/dist/common/cloud-api/src/utils/validator.js +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
- `fix` 修复
|
|
1
|
+
#### 2.1.16
|
|
2
|
+
- `fix` 修复 COS 上报失败的问题
|
|
3
|
+
#### 2.1.15
|
|
4
|
+
- `fix` 修复 部分log不清晰的问题
|
|
5
|
+
#### 2.1.14
|
|
6
|
+
- `fix` 修复 进程不退出的问题
|
|
7
|
+
- `fix` 修复 useCos 情况下 robot失效的问题
|
|
3
8
|
#### 2.1.13
|
|
4
9
|
- `fix` 修复 进程不退出的问题
|
|
5
10
|
- `fix` 修复 useCos 情况下 robot失效的问题
|
package/README.md
CHANGED
|
@@ -7,6 +7,10 @@ miniprogram-ci 是从[微信开发者工具](https://developers.weixin.qq.com/mi
|
|
|
7
7
|
miniprogram-ci 从 1.0.28 开始支持第三方平台开发的上传和预览,调用方式与普通开发模式无异。[查看详情](#第三方平台开发)
|
|
8
8
|
|
|
9
9
|
## 最近变更
|
|
10
|
+
#### 2.1.16
|
|
11
|
+
- `fix` 修复 COS 上报失败的问题
|
|
12
|
+
#### 2.1.15
|
|
13
|
+
- `fix` 修复 部分log不清晰的问题
|
|
10
14
|
#### 2.1.14
|
|
11
15
|
- `fix` 修复 缺少 tmp 依赖的问题
|
|
12
16
|
#### 2.1.13
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as cloudAPI from '../../common/cloud-api/
|
|
1
|
+
import * as cloudAPI from '../../common/cloud-api/index';
|
|
2
2
|
import { MiniProgramCI } from '../../types';
|
|
3
3
|
export declare function initCloudAPI(appid: string): void;
|
|
4
4
|
export declare function get3rdCloudCodeSecret(project: MiniProgramCI.IProject): Promise<any>;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { IProject } from '../types';
|
|
3
|
+
export declare function innerRequest<T>(url: string, body: any): Promise<T>;
|
|
3
4
|
export declare function uploadByCos(gzipBuffer: Buffer, commitUrl: string, project: IProject, robot: any): Promise<{
|
|
4
5
|
fallback: boolean;
|
|
5
6
|
body?: any;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { IProject } from '../../types';
|
|
2
|
+
export declare function innerRequest<T>(url: string, body: any): Promise<T>;
|
|
3
|
+
export interface IGetGamePkgListOptions {
|
|
4
|
+
project: IProject;
|
|
5
|
+
}
|
|
6
|
+
export declare function getGamePkgList(project: IProject): Promise<{
|
|
7
|
+
success: boolean;
|
|
8
|
+
errmsg: any;
|
|
9
|
+
list: any;
|
|
10
|
+
}>;
|
|
11
|
+
export declare function getGamePkgUrl(project: IProject, userVersion: string): Promise<{
|
|
12
|
+
success: boolean;
|
|
13
|
+
errmsg: any;
|
|
14
|
+
url: any;
|
|
15
|
+
}>;
|
|
16
|
+
export declare function checkGamePkgUserVersion(project: IProject, userVersion: string): Promise<{
|
|
17
|
+
success: boolean;
|
|
18
|
+
errmsg: any;
|
|
19
|
+
}>;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { IProject, MiniProgramCI } from '../../types';
|
|
2
|
+
interface IUploadResult {
|
|
3
|
+
success: boolean;
|
|
4
|
+
}
|
|
5
|
+
export interface IUploadOptions {
|
|
6
|
+
project: IProject;
|
|
7
|
+
pkgPath: string;
|
|
8
|
+
version: string;
|
|
9
|
+
desc?: string;
|
|
10
|
+
robot?: number;
|
|
11
|
+
onProgressUpdate?: (task: MiniProgramCI.ITaskStatus | string) => void;
|
|
12
|
+
}
|
|
13
|
+
export declare function uploadGamePkg(options: IUploadOptions): Promise<IUploadResult>;
|
|
14
|
+
export declare function uploadGamePkgPlugByCos(filePath: string, commitUrl: string, project: IProject, robot: any, onProgress?: (progressData: any) => void): Promise<{
|
|
15
|
+
fallback: boolean;
|
|
16
|
+
body?: any;
|
|
17
|
+
uploadCOSCostTime?: number;
|
|
18
|
+
}>;
|
|
19
|
+
export {};
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { IInnerUploadOptions } from './upload';
|
|
3
|
-
export declare const SIGNATURE_FILE_NAME = "ci.signature";
|
|
4
3
|
export declare function getCompiledResult(options: IInnerUploadOptions & {
|
|
5
4
|
includedMap?: boolean;
|
|
6
5
|
}, savePath?: string): Promise<Record<string, string | Buffer>>;
|
|
@@ -17,6 +17,8 @@ import { checkCodeQuality } from './checkCodeQuality';
|
|
|
17
17
|
import { buildApk } from './build-apk';
|
|
18
18
|
import { buildIpa } from './build-ipa';
|
|
19
19
|
import { miniappCloudUpload } from './miniapp-cloud-upload';
|
|
20
|
+
import { uploadGamePkg } from './gamepkg';
|
|
21
|
+
import { getGamePkgList, getGamePkgUrl, checkGamePkgUserVersion } from './gamepkg/apkplug';
|
|
20
22
|
export { Project };
|
|
21
23
|
export type { IUploadOptions };
|
|
22
24
|
export declare const upload: typeof _upload;
|
|
@@ -41,5 +43,6 @@ export { getWhiteExtList };
|
|
|
41
43
|
export { buildApk };
|
|
42
44
|
export { buildIpa };
|
|
43
45
|
export { miniappCloudUpload };
|
|
46
|
+
export { uploadGamePkg, getGamePkgList, getGamePkgUrl, checkGamePkgUserVersion, };
|
|
44
47
|
export declare const workletVersion: any;
|
|
45
48
|
export declare function cleanCache(): void;
|
|
@@ -2,7 +2,6 @@ import { IBuildArchiveOptions } from './archive';
|
|
|
2
2
|
import { IBuildApkOptions } from '../build-apk';
|
|
3
3
|
import { IBuildIpaOptions } from '../build-ipa';
|
|
4
4
|
import { IMiniappCloudUploadOptions } from '../miniapp-cloud-upload';
|
|
5
|
-
export declare const SIGNATURE_FILE_NAME = "ci.signature";
|
|
6
5
|
type IMiniAppUploadArchiveOptions = (IBuildApkOptions | IBuildIpaOptions | IMiniappCloudUploadOptions) & IBuildArchiveOptions;
|
|
7
6
|
type TSubPackageInfo = Array<{
|
|
8
7
|
name: string;
|
|
@@ -9,6 +9,13 @@ export declare const TRANSLATE_FILENAME: string;
|
|
|
9
9
|
export declare const GET_CLOUD_API_SIGNATURE: string;
|
|
10
10
|
export declare const GET_UPLOAD_TOKEN: string;
|
|
11
11
|
export declare const GET_ASYNC_RESULT: string;
|
|
12
|
+
export declare const GAME_PKG_UPLOAD_URL: string;
|
|
13
|
+
export declare const GET_GAME_PKG_ASYNC_RESULT: string;
|
|
14
|
+
export declare const GET_GAME_PKG_UPLOAD_INFO: string;
|
|
15
|
+
export declare const GET_GAME_PKG_UPLOAD_SIGN: string;
|
|
16
|
+
export declare const GET_PLUG_PKG_GET_LIST: string;
|
|
17
|
+
export declare const GET_PLUG_PKG_GET_URL: string;
|
|
18
|
+
export declare const GET_PLUG_PKG_CHECK_USERVERSION: string;
|
|
12
19
|
export declare const GET_UPLOAD_INFO: string;
|
|
13
20
|
export declare const GET_UPLOAD_SIGN: string;
|
|
14
21
|
export declare const UPLOAD_JS_SERVER: string;
|
package/dist/@types/index.d.ts
CHANGED
|
@@ -1,32 +1,35 @@
|
|
|
1
1
|
export * from './ci/index';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { Builder } from './modules';
|
|
3
|
+
import { SummerCompiler, ICompilerStatus } from './modules/corecompiler/summerCompiler';
|
|
4
4
|
import { DevtoolsProject } from './project/devtoolsProject';
|
|
5
|
+
import { getSummerPluginConfig } from './modules/corecompiler/summer/pluginconfig';
|
|
6
|
+
import { getBabelHelperVersion, getBabelHelperDepMap } from './utils/babel_helper';
|
|
7
|
+
import { getHelperOutputPath, getHelperDeps, isValidHelperFunc, getHelperContent, getHelperName } from './utils/helper_util';
|
|
8
|
+
import packOptionsHelper from './utils/packOptionsHelper';
|
|
9
|
+
import { BaseProject } from './project/baseProject';
|
|
5
10
|
import { WebProject } from './project/webProject';
|
|
6
11
|
import { PreCompileProject } from './project/advance/precompileProject';
|
|
12
|
+
import { CIProject } from './project/ciProject';
|
|
7
13
|
import { BaseCoreCompiler, ICompileOptions } from './modules/corecompiler/baseCompiler';
|
|
8
14
|
import { OriginalCompiler } from './modules/corecompiler/originalCompiler';
|
|
9
|
-
import { SummerCompiler, ICompilerStatus } from './modules/corecompiler/summerCompiler';
|
|
10
|
-
import { Builder } from './modules';
|
|
11
15
|
import { getWhiteExtList } from './utils/white_ext_list';
|
|
12
16
|
import { setCiProxy as proxy } from './utils/request';
|
|
13
17
|
import locales from './utils/locales/locales';
|
|
14
18
|
import { checkIsInSubPackage, escapeQuot, escapeScript, generateMD5, isHexColor, mkdirSync, normalizePath, compareVersion } from './utils/tools';
|
|
15
19
|
import { DefaultProjectAttr, JSON_CONTENT_ERR, compileTypeConfig } from './config/config';
|
|
16
|
-
import { getBabelHelperVersion, getBabelHelperDepMap } from './utils/babel_helper';
|
|
17
|
-
import { getSummerPluginConfig } from './modules/corecompiler/summer/pluginconfig';
|
|
18
|
-
import { getHelperOutputPath, getHelperDeps, isValidHelperFunc, getHelperContent, getHelperName } from './utils/helper_util';
|
|
19
20
|
import * as adroidDeviceUtils from './modules/nativecompiler/android/device';
|
|
20
21
|
import * as iosDeviceUtils from './modules/nativecompiler/ios/device';
|
|
21
22
|
import * as miniappBuilder from './utils/miniapp-builder';
|
|
22
|
-
import packOptionsHelper from './utils/packOptionsHelper';
|
|
23
23
|
import MiniAppI18N from './utils/miniAppI18N';
|
|
24
24
|
import * as MiniAppJson from './utils/miniappJson';
|
|
25
25
|
import * as cosUpload from './utils/cosUpload';
|
|
26
|
-
export {
|
|
27
|
-
export { BaseCoreCompiler, OriginalCompiler, SummerCompiler, ICompilerStatus, ICompileOptions, Builder, };
|
|
28
|
-
export * from './modules/corecompiler/original';
|
|
26
|
+
export { Builder, SummerCompiler, DevtoolsProject, getSummerPluginConfig, getBabelHelperVersion, getBabelHelperDepMap, isValidHelperFunc, getHelperName, getHelperContent, getHelperOutputPath, getHelperDeps, packOptionsHelper, };
|
|
29
27
|
export declare const workletVersion: any;
|
|
30
|
-
export {
|
|
28
|
+
export { BaseProject, WebProject, PreCompileProject, CIProject as Project, CIProject, };
|
|
29
|
+
export { BaseCoreCompiler, OriginalCompiler, ICompilerStatus, ICompileOptions, };
|
|
30
|
+
export * from './modules/corecompiler/original';
|
|
31
|
+
export { getWhiteExtList, proxy, locales, isHexColor, DefaultProjectAttr, JSON_CONTENT_ERR, compileTypeConfig, generateMD5, mkdirSync, normalizePath, compareVersion, checkIsInSubPackage, escapeQuot, escapeScript, cosUpload, };
|
|
31
32
|
export { adroidDeviceUtils, iosDeviceUtils, miniappBuilder, };
|
|
33
|
+
export { generateFileMD5, } from './utils/tools';
|
|
34
|
+
export { encryptLocalFile, IUploadInfoForAsyncTask, } from './utils/asyncTask';
|
|
32
35
|
export { MiniAppI18N, MiniAppJson, };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
type ProcessEnv = 'main' | 'childprocess' | 'workerthread' | 'workerprocess';
|
|
2
|
-
type HostEnv = 'devtools' | 'ci';
|
|
2
|
+
type HostEnv = 'devtools' | 'webide' | 'ci';
|
|
3
3
|
export declare const processEnv: ProcessEnv;
|
|
4
4
|
export declare const hostEnv: HostEnv;
|
|
5
5
|
export declare const summerProcess: boolean;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export interface IWebWorkerMsg {
|
|
2
|
+
type: MSG_TYPE;
|
|
3
|
+
payload: any;
|
|
4
|
+
}
|
|
5
|
+
export interface IFSOperateMsg extends IWebWorkerMsg {
|
|
6
|
+
type: MSG_TYPE.WEBWORKER_FS_OPERATE | MSG_TYPE.WEBWORKER_FS_OPERATE_CALLBACK | MSG_TYPE.WEBWORKER_FS_OPERATE_SYNC;
|
|
7
|
+
callbackId: string;
|
|
8
|
+
payload: {
|
|
9
|
+
method: string;
|
|
10
|
+
args?: any[];
|
|
11
|
+
result?: any;
|
|
12
|
+
errorMsg?: string;
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
export declare enum MSG_TYPE {
|
|
16
|
+
CREATE_WORKER = "CREATE_WORKER",
|
|
17
|
+
CREATE_WORKER_RESULT = "CREATE_WORKER_RESULT",
|
|
18
|
+
PROXY_WORKER_TO_FROM_WORKER_PROXY_MSG = "PROXY_WORKER_TO_FROM_WORKER_PROXY_MSG",
|
|
19
|
+
MAIN_TO_WORKER_PROXY_MSG = "MAIN_TO_WORKER_PROXY_MSG",
|
|
20
|
+
TERMINATE_WORKER_PROXY_MSG = "TERMINATE_WORKER_PROXY_MSG",
|
|
21
|
+
ON_WORKER_ERROR = "ON_WORKER_ERROR",
|
|
22
|
+
WEBWORKER_FS_OPERATE_CALLBACK = "WEBWORKER_FS_OPERATE_CALLBACK",
|
|
23
|
+
WEBWORKER_FS_OPERATE = "WEBWORKER_FS_OPERATE",
|
|
24
|
+
WEBWORKER_FS_OPERATE_SYNC = "WEBWORKER_FS_OPERATE_SYNC",
|
|
25
|
+
SYNC_CHANNEL = "SYNC_CHANNEL",
|
|
26
|
+
WORKER_LOGIC_MSG = "WORKER_LOGIC_MSG"
|
|
27
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default function (): number;
|
|
@@ -8,6 +8,7 @@ declare class WorkerManager {
|
|
|
8
8
|
runTask(name: string, data: any, onStatusUpdate?: MiniProgramCore.FN<void>): Promise<unknown>;
|
|
9
9
|
abort(name: string): void;
|
|
10
10
|
private _run;
|
|
11
|
+
private getFreeWorker;
|
|
11
12
|
private allocWorker;
|
|
12
13
|
private workerCount;
|
|
13
14
|
private onWorkerExit;
|
|
@@ -23,7 +23,7 @@ export declare class SummerCompiler extends BaseCoreCompiler {
|
|
|
23
23
|
private _eventAdded;
|
|
24
24
|
private _locale;
|
|
25
25
|
private devCodeCacheByPath;
|
|
26
|
-
constructor(project: MiniProgramCore.IPreCompileProject, cachePath: string, projectInfo: MiniProgramDevtools.IDevtoolsProjectInfo, devtoolMessagehub: IMessageHub, analyzer: Analyzer, _filterFactory?: MiniProgramDevtools.IFilterFactory | undefined);
|
|
26
|
+
constructor(project: MiniProgramCore.IPreCompileProject, cachePath: string, projectInfo: MiniProgramDevtools.IDevtoolsProjectInfo, devtoolMessagehub: IMessageHub, analyzer: Analyzer | null, _filterFactory?: MiniProgramDevtools.IFilterFactory | undefined);
|
|
27
27
|
get status(): MiniProgramDevtools.ICompilerStatus | undefined;
|
|
28
28
|
protected init(): Promise<void>;
|
|
29
29
|
private loadStatus;
|
|
@@ -32,7 +32,7 @@ export declare class Builder {
|
|
|
32
32
|
private _analyzer?;
|
|
33
33
|
constructor(project: MiniProgramCI.IProject, opts: IBuilderOptions);
|
|
34
34
|
getCompiler(): Promise<any>;
|
|
35
|
-
getAnalyzer(): Promise<Analyzer>;
|
|
35
|
+
getAnalyzer(): Promise<Analyzer | null>;
|
|
36
36
|
getPreCompileProject(): Promise<PreCompileProject>;
|
|
37
37
|
private _getPreCompileProject;
|
|
38
38
|
getPreCompiler(): Promise<PreCompiler>;
|
|
@@ -41,6 +41,7 @@ export declare class Builder {
|
|
|
41
41
|
ready(): Promise<any>;
|
|
42
42
|
init(): Promise<void>;
|
|
43
43
|
getNativeCompiler(): Promise<NativeCompiler>;
|
|
44
|
+
getFullCompiler(): Promise<void>;
|
|
44
45
|
initNativeCompiler(opts: IBuilderOptions): Promise<void>;
|
|
45
46
|
getPreCompileOptions(): {
|
|
46
47
|
targetPlatform: MiniProgramCore.ITargetPlatform | undefined;
|
|
@@ -56,6 +56,7 @@ declare class buildCloudManager {
|
|
|
56
56
|
getEntitlements(bindAppInfo: MiniProgramCore.IStringKeyMap, _demoIpaPath: string, _iosMiniappJson: MiniProgramCore.IStringKeyMap, _recorder: Recorder): Promise<{
|
|
57
57
|
'com.apple.developer.associated-domains': string;
|
|
58
58
|
}>;
|
|
59
|
+
polyfillUniversalLink(url: string): string;
|
|
59
60
|
useTpush(iosMiniappJson: MiniProgramCore.IStringKeyMap): any;
|
|
60
61
|
buildCloud(args: IMiniApp.IIOSBuildCloudArgs, recorder: Recorder): Promise<IBuildCloudResult>;
|
|
61
62
|
writeI18NInfoFile(demoIpaPath: string, i18nInfo: II18NInfo, iosI18NField: Record<string, string>): Promise<void>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
/// <reference types="node" />
|
|
3
3
|
import type { Analyzer } from '../common/code-analyse';
|
|
4
|
-
import
|
|
4
|
+
import EventEmitter from 'events';
|
|
5
5
|
import { MiniProgramDevtools } from './devtools';
|
|
6
6
|
export declare const CheckOption: {
|
|
7
7
|
PACKAGE_SIZE_LIMIT: number;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { IUploadInfo } from '../cosUpload';
|
|
2
|
+
export declare const SIGNATURE_FILE_NAME = "ci.signature";
|
|
3
|
+
export interface IUploadInfoForAsyncTask {
|
|
4
|
+
expired_time: string;
|
|
5
|
+
start_time: string;
|
|
6
|
+
task_id: string;
|
|
7
|
+
checksum: string;
|
|
8
|
+
upload_info: {
|
|
9
|
+
object: string;
|
|
10
|
+
bucket: string;
|
|
11
|
+
crypt_key: string;
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
export declare function encryptLocalFile(inputFile: string, uploadToken: IUploadInfo): Promise<string>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const babelHelper: {};
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
export type IRegion = 'ap-shanghai';
|
|
3
3
|
export interface IUploadToCosCoreParam {
|
|
4
|
-
uploadBuf: Buffer;
|
|
4
|
+
uploadBuf: Buffer | string;
|
|
5
5
|
region: IRegion;
|
|
6
6
|
getUploadInfoFunc: FGetUploadInfoFunc;
|
|
7
7
|
getAuthFunc: FGetAuthFunc;
|
|
8
|
+
onProgress?: (progressData: any) => void;
|
|
8
9
|
}
|
|
9
10
|
export interface IUploadToCosCoreRes {
|
|
10
11
|
err?: string;
|
|
@@ -32,6 +33,6 @@ export interface IReqCache extends IUploadReq, IAuthResData {
|
|
|
32
33
|
}
|
|
33
34
|
type FGetUploadInfoFunc = () => Promise<IUploadInfo>;
|
|
34
35
|
type FGetAuthFunc = (data: IUploadReq) => Promise<IAuthResData>;
|
|
35
|
-
export declare function uploadToCosCore({ uploadBuf, region, getUploadInfoFunc, getAuthFunc, }: IUploadToCosCoreParam): Promise<IUploadToCosCoreRes>;
|
|
36
|
+
export declare function uploadToCosCore({ uploadBuf, region, getUploadInfoFunc, getAuthFunc, onProgress, }: IUploadToCosCoreParam): Promise<IUploadToCosCoreRes>;
|
|
36
37
|
export declare function uploadToCosInCI(): void;
|
|
37
38
|
export {};
|
|
@@ -26,7 +26,7 @@ declare class PackOptionsHelper {
|
|
|
26
26
|
isFileIncluded(file: string, includes?: MiniProgramDevtools.IProjectConfigPackOption[]): any;
|
|
27
27
|
isIgnoreByUnusedFiles(file: string, production?: boolean): boolean;
|
|
28
28
|
getUnusedFiles(): Set<string>;
|
|
29
|
-
initUnusedFiles(project: MiniProgramCore.IPreCompileProject, analyzer: Analyzer, production?: boolean): Promise<void>;
|
|
29
|
+
initUnusedFiles(project: MiniProgramCore.IPreCompileProject, analyzer: Analyzer | null, production?: boolean): Promise<void>;
|
|
30
30
|
}
|
|
31
31
|
declare const _default: PackOptionsHelper;
|
|
32
32
|
export default _default;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { MiniProgramCore } from '../types';
|
|
2
2
|
import { InterruptiblePromise } from './interruptibletask';
|
|
3
|
+
import type { OptionsWithUrl, RequestCallback } from 'request';
|
|
3
4
|
import req = require('request');
|
|
4
5
|
interface IRequestOptions {
|
|
5
6
|
url: string;
|
|
@@ -17,5 +18,5 @@ export declare function request<T>(opt: IRequestOptions): InterruptiblePromise<T
|
|
|
17
18
|
export declare function setCiProxy(proxy: string): void;
|
|
18
19
|
export declare function getCiProxy(): string;
|
|
19
20
|
export declare function initGlobalProxy(): void;
|
|
20
|
-
export declare function simpleRequest(options:
|
|
21
|
+
export declare function simpleRequest(options: OptionsWithUrl, callback: RequestCallback): req.Request | Promise<never>;
|
|
21
22
|
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getProcess: () => any;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { MiniProgramDevtools } from '~/types';
|
|
2
|
+
export interface ProcessService {
|
|
3
|
+
send: (msg: any) => void;
|
|
4
|
+
kill: (signal: any) => boolean;
|
|
5
|
+
}
|
|
6
|
+
export declare function forkProcess(that: any, entryPath: string, projectPath: string, initMsg: MiniProgramDevtools.InitMsg, inspectPort?: number): Promise<ProcessService>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -21,6 +21,7 @@ export declare function leading(str: string, char: string, reversed?: boolean):
|
|
|
21
21
|
export declare const isFileIgnored: (file: string, ignoreRule: any) => any;
|
|
22
22
|
export declare const isFileIncluded: (file: string, ignoreRule: any) => any;
|
|
23
23
|
export declare function formatSourceMap(map: string | RawSourceMap): string | undefined;
|
|
24
|
+
export declare function generateFileMD5(filePath: string): Promise<string>;
|
|
24
25
|
export declare function generateMD5(buffer: Buffer | string): string;
|
|
25
26
|
export declare const formatNumber: (n: number) => string;
|
|
26
27
|
export declare const formatTime: (date: Date) => string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.boundTransactRequest=exports.get3rdCloudCodeSecret=exports.initCloudAPI=void 0;const tslib_1=require("tslib"),crypto_1=tslib_1.__importDefault(require("crypto")),request_1=tslib_1.__importDefault(require("request")),cloudAPI=tslib_1.__importStar(require("../../common/cloud-api/
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.boundTransactRequest=exports.get3rdCloudCodeSecret=exports.initCloudAPI=void 0;const tslib_1=require("tslib"),crypto_1=tslib_1.__importDefault(require("crypto")),request_1=tslib_1.__importDefault(require("request")),cloudAPI=tslib_1.__importStar(require("../../common/cloud-api/index")),request_2=require("../../utils/request"),sign_1=require("../../utils/sign"),jsonParse_1=require("../../utils/jsonParse"),urlConfig=tslib_1.__importStar(require("../../config/url.config"));function initCloudAPI(e){cloudAPI.setDefaultAppID(e),cloudAPI.setTransactType(cloudAPI.TransactType.IDE),cloudAPI.setRequest(transactRequest)}exports.initCloudAPI=initCloudAPI;const SERVICE_CLOUD_URL={scf:"https://scf.tencentcloudapi.com",flexdb:"https://flexdb.tencentcloudapi.com",tcb:"https://tcb.tencentcloudapi.com"},DIRECT_CLOUD_API_SET=new Set(["UpdateFunctionCode","CreateFunction"]);async function transactRequest(e){var t;const r=e.project,o=await(0,sign_1.getSignature)(r.privateKey,r.appid),s=await r.getExtAppid();if(DIRECT_CLOUD_API_SET.has(e.identity.action||"")&&Boolean(SERVICE_CLOUD_URL[e.identity.service])){const{body:i}=await(0,request_2.request)({url:urlConfig.GET_CLOUD_API_SIGNATURE,method:"post",body:JSON.stringify({appid:r.appid,extAppid:s||void 0,signature:o,signReq:{action:e.identity.action,path:e.identity.path,service:e.identity.service,version:e.identity.version,region:e.identity.region,hashed_postdata:crypto_1.default.createHash("sha256").update(e.postdata).digest("hex")}}),headers:{"content-type":"application/json"}}),n=(0,jsonParse_1.jsonRespParse)(i,"cloudapi.getCloudAPISignedHeader");if(n.errCode)throw new Error(`getCloudAPISignedHeader failed, errCode: ${i.errCode}, errMsg: ${i.errMsg}`);const a=n.header;if(!a)throw new Error("empty header, recv cgi resp: "+i);const{resp:d}=await new Promise((t,r)=>{(0,request_1.default)({url:SERVICE_CLOUD_URL[e.identity.service],method:"post",body:e.postdata,headers:a.split("\n").map(e=>e.trim()).reduce((e,t)=>{const r=t.indexOf(":");return e[t.slice(0,r)]=t.slice(r+1),e},{})},(e,o)=>{e?r(e):t({resp:o})})});if(413===d.statusCode)throw new Error("Body too large");const c=d.body;if(!c)throw new Error("Empty body "+d);const p="string"==typeof c?JSON.parse(c):c;if(!p.Response||(null===(t=p.Response)||void 0===t?void 0:t.Error))throw new Error("TencentCloud API error: "+c);return c}const{resp:i,body:n}=await(0,request_2.request)({url:urlConfig.cloudAPIAgentURL,method:"post",body:JSON.stringify({appid:r.appid,extAppid:s||void 0,signature:o,agentReq:Object.assign({postdata:e.postdata,test:!1},e.identity)}),headers:Object.assign(Object.assign({},e.headers),{"content-type":"application/json"})});if(413===i.statusCode)throw new Error("Body too large");if(!n)throw new Error("Empty body "+i);const a="string"==typeof n?JSON.parse(n):n;if(a.errCode)throw new Error(`${a.errCode} ${a.errMsg}`);const d=a.data;if(!d||!d.base_resp||"0"!=d.base_resp.ret){if(80210===d.base_resp.ret)throw new Error("NO_CLOUD_MANAGE_PERMISSION_AUTHORIZED_TO_3RD_PLATFORM");throw new Error("Base resp abnormal, "+JSON.stringify(null==d?void 0:d.base_resp))}return d.content}async function get3rdCloudCodeSecret(e){const t=await e.attr();let r,o="",s={};try{r=await e.getFile(e.miniprogramRoot,"ext.json"),s=JSON.parse(r.toString("utf-8"))}catch(e){}if(s&&s.extEnable&&(o=s.extAppid||""),(null==t?void 0:t.platform)&&o)try{const t=await(0,sign_1.getSignature)(e.privateKey,e.appid),{body:r}=await(0,request_2.request)({url:urlConfig.get3rdCloudCodeSecret,method:"post",headers:{"content-type":"application/json"},body:JSON.stringify({appid:e.appid,extAppid:o,signature:t})}),s=(0,jsonParse_1.jsonRespParse)(r);if(0===s.errCode)return s.codeSecret;throw new Error("get 3rd cloud codesecret invalid resp "+JSON.stringify(r))}catch(e){throw new Error("get 3rd cloud codesecret error "+e)}}function boundTransactRequest(e){return t=>transactRequest(Object.assign(Object.assign({},t),{project:e}))}exports.get3rdCloudCodeSecret=get3rdCloudCodeSecret,exports.boundTransactRequest=boundTransactRequest;
|
package/dist/ci/cos-upload.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.uploadByCosSafely=exports.uploadByCos=void 0;const tslib_1=require("tslib"),url_config_1=require("../config/url.config"),tools_1=require("../utils/tools"),request_1=require("../utils/request"),sign_1=require("../utils/sign"),pack_1=require("./utils/pack"),config_1=require("../config/config"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.uploadByCosSafely=exports.uploadByCos=exports.innerRequest=void 0;const tslib_1=require("tslib"),url_config_1=require("../config/url.config"),tools_1=require("../utils/tools"),request_1=require("../utils/request"),sign_1=require("../utils/sign"),pack_1=require("./utils/pack"),config_1=require("../config/config"),index_1=require("../utils/asyncTask/index"),log=tslib_1.__importStar(require("../utils/log")),jsonParse_1=require("../utils/jsonParse"),__1=require(".."),zlib=require("zlib"),crypto=require("crypto"),COS=require("cos-nodejs-sdk-v5");async function putBufferToCos(e,t){const r=new COS({Proxy:(0,request_1.getCiProxy)(),getAuthorization(e,r){r({TmpSecretId:t.secret_id,TmpSecretKey:t.secret_key,XCosSecurityToken:t.token,ExpiredTime:t.expired_time})}});try{return await new Promise((o,a)=>{r.putObject({Bucket:t.bucket,Region:"ap-shanghai",Key:t.object,Body:e,onProgress(e){}},(e,t)=>{if(e)return console.error(e),a(e.error);o(t)})})}catch(e){throw new Error("upload to cos failed: "+e.message)}}async function innerRequest(e,t){const r=await(0,request_1.request)({url:e,method:"post",body:t,headers:{"content-type":"application/json"}});let o;try{o=JSON.parse(r.body)}catch(t){const r=`request ${e} failed: resp body is not a valid json`;throw log.error(r),new Error(r)}if(0!==o.errCode){const e=`request failed, errCode: ${o.errCode}, errMsg: ${o.errMsg}`;throw log.error(e),new Error(e)}return o.data}async function uploadByCos(e,t,r,o){let a;try{const e=await(0,sign_1.getSignature)(r.privateKey,r.appid);a=await innerRequest(url_config_1.GET_UPLOAD_TOKEN,JSON.stringify({appid:r.appid,signature:e,robot:o}))}catch(e){return console.error("uploadToken error",e),{fallback:!0}}const i=e,s=crypto.randomBytes(12),n=crypto.createCipheriv("aes-256-gcm",Buffer.from(a.crypt_key,"base64"),s),u=Buffer.concat([n.update(i),n.final()]),c=n.getAuthTag(),p=Buffer.alloc(1);p.writeUInt8(c.length+s.length,0);const l=Buffer.concat([p,c,s,u]),d=Date.now();await putBufferToCos(l,a);const f=Date.now()-d,g=(0,tools_1.generateMD5)(i),_=await(0,sign_1.getSignature)(r.privateKey,r.appid),y=`${t}&task_id=${a.task_id}&new_hash=${g}&upload_cos_cost_time=${f}`;log.info("request url:",y);const w=await(0,request_1.request)({url:y,method:"post",body:zlib.gzipSync((0,pack_1.pack)({[index_1.SIGNATURE_FILE_NAME]:JSON.stringify({signature:_,version:config_1.CI_VERSION})}).buffer)});if(0!==(0,jsonParse_1.jsonRespParse)(w.body.toString(),t).errCode)throw new Error(w.body.toString());for(;;){const e=await(0,sign_1.getSignature)(r.privateKey,r.appid),t=await innerRequest(`${url_config_1.GET_ASYNC_RESULT}?task_id=${a.task_id}`,JSON.stringify({appid:r.appid,signature:e,robot:o}));if(1!==t.status){if(0===t.status)return{fallback:!1,body:t,uploadCOSCostTime:f};if(3===t.status)throw new Error(`upload failed with status ${t.status}, task not found`);throw new Error("upload failed with status "+t.status)}await new Promise(e=>{setTimeout(e,1e3)})}}async function uploadByCosSafely(e,t,r,o){let a;try{const e=await(0,sign_1.getSignature)(r.privateKey,r.appid);a=await innerRequest(url_config_1.GET_UPLOAD_INFO,JSON.stringify({appid:r.appid,signature:e,robot:o}))}catch(e){return console.error("getUploadInfo failed",e),{fallback:!0}}const i=crypto.randomBytes(12),s=crypto.createCipheriv("aes-256-gcm",Buffer.from(a.crypt_key,"base64"),i),n=Buffer.concat([s.update(e),s.final()]),u=s.getAuthTag();console.info("nonce:%s, nonce size:%d",i,i.length),console.info("tag:%s, tag size:%d",u,u.length),console.info("encrypted size:%d",n.length);const c=Buffer.alloc(1);c.writeUInt8(u.length+i.length,0);const p=Buffer.concat([c,u,i,n]),l=Date.now();try{await __1.cosUpload.uploadToCosCore({uploadBuf:p,region:"ap-shanghai",getUploadInfoFunc:async()=>a,getAuthFunc:async e=>{let t,i={},s={};switch(e.action){case"name/cos:InitiateMultipartUpload":i={uploads:""};break;case"name/cos:ListMultipartUploads":i={uploads:"",prefix:a.object},s={};break;case"name/cos:UploadPart":case"name/cos:ListParts":case"name/cos:CompleteMultipartUpload":i={uploadId:e.uploadId},s={};break;default:throw new Error("no action ")}try{const n=await(0,sign_1.getSignature)(r.privateKey,r.appid),u=await innerRequest(url_config_1.GET_UPLOAD_SIGN,JSON.stringify({appid:r.appid,signature:n,robot:o,signOpts:JSON.stringify({checksum:a.checksum,action:e.action,upload_id:e.uploadId,headers:s,params:i})}));t={Authorization:u.sign,SecurityToken:u.token,AuthExpireTime:u.expired_time}}catch(e){throw console.info("uploadToCos safely failed ,start fallback"),console.log(e),new Error("")}return t}})}catch(e){return{fallback:!0}}const d=Date.now()-l,f=(0,tools_1.generateMD5)(e),g=await(0,sign_1.getSignature)(r.privateKey,r.appid),_=`${t}&task_id=${a.task_id}&new_hash=${f}&upload_cos_cost_time=${d}`;log.info("request url:",_);const y=await(0,request_1.request)({url:_,method:"post",body:zlib.gzipSync((0,pack_1.pack)({[index_1.SIGNATURE_FILE_NAME]:JSON.stringify({signature:g,version:config_1.CI_VERSION})}).buffer)});if(0!==(0,jsonParse_1.jsonRespParse)(y.body.toString(),t).errCode)throw new Error(y.body.toString());for(;;){const e=await(0,sign_1.getSignature)(r.privateKey,r.appid),t=await innerRequest(`${url_config_1.GET_ASYNC_RESULT}?task_id=${a.task_id}`,JSON.stringify({appid:r.appid,signature:e,robot:o}));if(1!==t.status){if(0===t.status)return{fallback:!1,body:t,uploadCOSCostTime:d};if(3===t.status)throw new Error(`upload failed with status ${t.status}, task not found`);throw new Error("upload failed with status "+t.status)}await new Promise(e=>{setTimeout(e,1e3)})}}exports.innerRequest=innerRequest,exports.uploadByCos=uploadByCos,exports.uploadByCosSafely=uploadByCosSafely;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.checkGamePkgUserVersion=exports.getGamePkgUrl=exports.getGamePkgList=exports.innerRequest=void 0;const tslib_1=require("tslib"),url_config_1=require("../../config/url.config"),log=tslib_1.__importStar(require("../../utils/log")),request_1=require("../../utils/request"),sign_1=require("../../utils/sign");async function innerRequest(e,r){const s=await(0,request_1.request)({url:e,method:"post",body:r,headers:{"content-type":"application/json"}});let i;try{i=JSON.parse(s.body)}catch(r){const s=`request ${e} failed: resp body is not a valid json`;throw log.error(s),new Error(s)}if(0!==i.errCode){const e=`request failed, errCode: ${i.errCode}, errMsg: ${i.errMsg}`;throw log.error(e),new Error(e)}return i.data}async function getGamePkgList(e){var r,s;const i=await(0,sign_1.getSignature)(e.privateKey,e.appid),t=await innerRequest(""+url_config_1.GET_PLUG_PKG_GET_LIST,JSON.stringify({appid:e.appid,signature:i}));return{success:0===(null===(r=null==t?void 0:t.baseresponse)||void 0===r?void 0:r.errcode),errmsg:null===(s=null==t?void 0:t.baseresponse)||void 0===s?void 0:s.errmsg,list:t.commit_list||[]}}async function getGamePkgUrl(e,r){var s,i;const t=await(0,sign_1.getSignature)(e.privateKey,e.appid),n=await innerRequest(""+url_config_1.GET_PLUG_PKG_GET_URL,JSON.stringify({appid:e.appid,signature:t,user_version:r}));return{success:0===(null===(s=null==n?void 0:n.baseresponse)||void 0===s?void 0:s.errcode),errmsg:null===(i=null==n?void 0:n.baseresponse)||void 0===i?void 0:i.errmsg,url:n.url||"url not found"}}async function checkGamePkgUserVersion(e,r){var s,i;const t=await(0,sign_1.getSignature)(e.privateKey,e.appid),n=await innerRequest(""+url_config_1.GET_PLUG_PKG_CHECK_USERVERSION,JSON.stringify({appid:e.appid,signature:t,user_version:r}));return{success:0===(null===(s=null==n?void 0:n.baseresponse)||void 0===s?void 0:s.errcode),errmsg:null===(i=null==n?void 0:n.baseresponse)||void 0===i?void 0:i.errmsg}}exports.innerRequest=innerRequest,exports.getGamePkgList=getGamePkgList,exports.getGamePkgUrl=getGamePkgUrl,exports.checkGamePkgUserVersion=checkGamePkgUserVersion;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.uploadGamePkgPlugByCos=exports.uploadGamePkg=void 0;const tslib_1=require("tslib"),url_config_1=require("../../config/url.config"),cosUpload_1=require("../../utils/cosUpload"),taskstatus_1=require("../../utils/taskstatus"),zlib_1=tslib_1.__importDefault(require("zlib")),querystring_1=tslib_1.__importDefault(require("querystring")),sign_1=require("../../utils/sign"),cos_upload_1=require("../cos-upload"),pack_1=require("../utils/pack"),fs_1=tslib_1.__importDefault(require("fs")),log=tslib_1.__importStar(require("../../utils/log")),config_1=require("../../config/config"),jsonParse_1=require("../../utils/jsonParse"),progressupdate_1=require("../utils/progressupdate"),locales_1=tslib_1.__importDefault(require("../../utils/locales/locales")),request_1=require("../../utils/request"),index_1=require("../../utils/asyncTask/index"),tools_1=require("../../utils/tools"),MIN_GAME_PKG_SIZE=5;async function uploadGamePkg(e){if(!fs_1.default.existsSync(e.pkgPath||"")||fs_1.default.statSync(e.pkgPath).isDirectory())throw new Error("[upload game pkg]failed! cant find file: "+e.pkgPath);const a=(0,progressupdate_1.transProgressUpdate)(e.onProgressUpdate||(e=>{if("object"==typeof e)try{const a=JSON.stringify(e);console.log(a)}catch(e){}console.log(""+e)})),t={appid:e.project.appid,version:e.version,desc:e.desc,robot:e.robot},o=`${url_config_1.GAME_PKG_UPLOAD_URL}?${querystring_1.default.stringify(t)}`,s=new taskstatus_1.TaskStatus(locales_1.default.config.UPLOAD.toString());a(s);const{fallback:r,uploadCOSCostTime:i}=await uploadGamePkgPlugByCos(e.pkgPath,o,e.project,e.robot,e.onProgressUpdate);return null!=i||log.log("[upload game pkg] total cost time : "+i),r&&log.error("[upload game pkg] failed!"),s.done(),a(s),{success:!r}}async function uploadGamePkgPlugByCos(e,a,t,o,s){let r;const i=await(0,tools_1.generateFileMD5)(e),l=fs_1.default.statSync(e).size;if(log.info("[upload game pkg] rawSize: "+l),Math.ceil(l/1024/1024)<5)return log.error("[upload game pkg] file size must larger than 5M"),{fallback:!0};try{const e=await(0,sign_1.getSignature)(t.privateKey,t.appid),a=await(0,cos_upload_1.innerRequest)(url_config_1.GET_GAME_PKG_UPLOAD_INFO,JSON.stringify({appid:t.appid,signature:e,robot:o,rawSize:""+l,md5:i}));r=Object.assign(Object.assign({},a),a.upload_info)}catch(e){return log.error("[upload game pkg] getUploadInfo failed",e),{fallback:!0}}log.info("[upload game pkg] get upload info succcessfuly");const u=await(0,index_1.encryptLocalFile)(e,r),n=Date.now();try{await(0,cosUpload_1.uploadToCosCore)({uploadBuf:u,region:"ap-shanghai",onProgress:e=>{null==s||s(e);try{log.log(`[upload game pkg] percent: ${Math.floor(100*e.percent)}% loaded: ${e.loaded}bytes total: ${e.total}bytes`)}catch(e){}},getUploadInfoFunc:async()=>r,getAuthFunc:async e=>{let a,s={},i={};switch(e.action){case"name/cos:InitiateMultipartUpload":s={uploads:""};break;case"name/cos:ListMultipartUploads":s={uploads:"",prefix:r.object},i={};break;case"name/cos:UploadPart":case"name/cos:ListParts":case"name/cos:CompleteMultipartUpload":s={uploadId:e.uploadId},i={};break;default:throw log.error("[upload game pkg] cos upload no action"),new Error("[upload game pkg] cos upload no action")}try{const l=await(0,sign_1.getSignature)(t.privateKey,t.appid),u=await(0,cos_upload_1.innerRequest)(url_config_1.GET_GAME_PKG_UPLOAD_SIGN,JSON.stringify({appid:t.appid,signature:l,robot:o,signOpts:JSON.stringify({checksum:r.checksum,action:e.action,upload_id:e.uploadId,task_id:r.task_id,headers:i,params:s})}));a={Authorization:u.sign,SecurityToken:u.token,AuthExpireTime:u.expired_time}}catch(e){throw log.info("game pkg uploadToCos safely failed"),log.log(e),new Error("game pkg uploadToCos safely failed")}return a}})}catch(e){return log.error("[upload game pkg] getUploadInfo failed",e.message),{fallback:!0}}const p=Date.now()-n,g=await(0,tools_1.generateFileMD5)(u),d=""+fs_1.default.statSync(u).size,c=await(0,sign_1.getSignature)(t.privateKey,t.appid),_=`${a}&task_id=${r.task_id}&new_hash=${g}&upload_cos_cost_time=${p}&str_stored_size=${d}`;log.info("request url:",_);const f=await(0,request_1.request)({url:_,method:"post",body:zlib_1.default.gzipSync((0,pack_1.pack)({[index_1.SIGNATURE_FILE_NAME]:JSON.stringify({signature:c,version:config_1.CI_VERSION})}).buffer)});if(0!==(0,jsonParse_1.jsonRespParse)(f.body.toString(),a).errCode)throw new Error(f.body.toString());for(;;){const e=await(0,sign_1.getSignature)(t.privateKey,t.appid),a=await(0,cos_upload_1.innerRequest)(`${url_config_1.GET_GAME_PKG_ASYNC_RESULT}?task_id=${r.task_id}`,JSON.stringify({appid:t.appid,signature:e,robot:o}));if(2!==a.status){if(3===a.status){return{fallback:!1,body:a,uploadCOSCostTime:Date.now()-n}}if(0===a.status)throw new Error(`upload failed with status ${a.status}, task not found`);throw new Error("upload failed with status "+a.status)}await new Promise(e=>{setTimeout(e,1e3)})}}exports.uploadGamePkg=uploadGamePkg,exports.uploadGamePkgPlugByCos=uploadGamePkgPlugByCos;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getCompiledResult=
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getCompiledResult=void 0;const tslib_1=require("tslib"),fs_extra_1=tslib_1.__importDefault(require("fs-extra")),config_1=require("../config/config"),error_1=require("../utils/error"),locales_1=tslib_1.__importDefault(require("../utils/locales/locales")),cache_1=require("../utils/cache"),progressupdate_1=require("./utils/progressupdate"),jszip_1=tslib_1.__importDefault(require("jszip")),path_1=tslib_1.__importDefault(require("path")),getcompiler_1=require("./getcompiler"),tools_1=require("./utils/tools");async function getCompiledResult(e,t){const{project:r,setting:o={},onProgressUpdate:s=function(e){console.log(""+e)},threads:i=0,includedMap:a=!1}=e;if(process.env.COMPILE_THREADS=i.toString(),!r)throw new error_1.CodeError(locales_1.default.config.PARAM_ERROR.format("upload","project"),config_1.PARAM_ERROR);cache_1.cacheManager.clean();const l=await(0,getcompiler_1.getCompiler)(r,o),n=await l.compile({setting:(0,tools_1.formatCISetting)(r,o),onProgressUpdate:(0,progressupdate_1.transProgressUpdate)(s),resultType:"prod",disableSpreadingUsingComponents:!0}),p={};if(Object.keys(n).sort().forEach(e=>{e.endsWith("js.map")&&!a||(p[e]=n[e])}),t){const e=new jszip_1.default;Object.keys(p).forEach(t=>{e.folder(path_1.default.dirname(t)).file(path_1.default.basename(t),p[t])});const r=await e.generateAsync({type:"nodebuffer"});fs_extra_1.default.ensureDirSync(path_1.default.dirname(t)),fs_extra_1.default.writeFileSync(t,r)}return p}exports.getCompiledResult=getCompiledResult;
|
package/dist/ci/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.cleanCache=exports.workletVersion=exports.miniappCloudUpload=exports.buildIpa=exports.buildApk=exports.getWhiteExtList=exports.checkCodeQuality=exports.analyseCode=exports.getLatestVersion=exports.uploadJsServer=exports.cloud=exports.getDevSourceMap=exports.proxy=exports.packNpmManually=exports.packNpm=exports.getCompiledResult=exports.preview=exports.upload=exports.Project=void 0;const project_1=require("./project");Object.defineProperty(exports,"Project",{enumerable:!0,get:function(){return project_1.Project}});const upload_1=require("./upload"),preview_1=require("./preview"),getDevSourceMap_1=require("./getDevSourceMap"),packnpm_1=require("../modules/corecompiler/original/npm/packnpm");Object.defineProperty(exports,"packNpm",{enumerable:!0,get:function(){return packnpm_1.packNpm}}),Object.defineProperty(exports,"packNpmManually",{enumerable:!0,get:function(){return packnpm_1.packNpmManually}});const request_1=require("../utils/request");Object.defineProperty(exports,"proxy",{enumerable:!0,get:function(){return request_1.setCiProxy}});const uploadFunction_1=require("./cloud/uploadFunction"),createTimeTrigger_1=require("./cloud/createTimeTrigger"),uploadContainer_1=require("./cloud/uploadContainer"),uploadFile_1=require("./cloud/uploadFile"),report_1=require("../utils/report"),jsserver_1=require("./jsserver");Object.defineProperty(exports,"uploadJsServer",{enumerable:!0,get:function(){return jsserver_1.uploadJsServer}});const code_analyse_1=require("./code-analyse");Object.defineProperty(exports,"analyseCode",{enumerable:!0,get:function(){return code_analyse_1.analyseCode}});const getCompiledResult_1=require("./getCompiledResult");Object.defineProperty(exports,"getCompiledResult",{enumerable:!0,get:function(){return getCompiledResult_1.getCompiledResult}});const getLatestVersion_1=require("./getLatestVersion");Object.defineProperty(exports,"getLatestVersion",{enumerable:!0,get:function(){return getLatestVersion_1.getLatestVersion}});const white_ext_list_1=require("../utils/white_ext_list");Object.defineProperty(exports,"getWhiteExtList",{enumerable:!0,get:function(){return white_ext_list_1.getWhiteExtList}});const checkCodeQuality_1=require("./checkCodeQuality");Object.defineProperty(exports,"checkCodeQuality",{enumerable:!0,get:function(){return checkCodeQuality_1.checkCodeQuality}});const cache_1=require("../utils/cache"),build_apk_1=require("./build-apk");Object.defineProperty(exports,"buildApk",{enumerable:!0,get:function(){return build_apk_1.buildApk}});const build_ipa_1=require("./build-ipa");Object.defineProperty(exports,"buildIpa",{enumerable:!0,get:function(){return build_ipa_1.buildIpa}});const miniapp_cloud_upload_1=require("./miniapp-cloud-upload");function cleanCache(){cache_1.cacheManager.clean()}Object.defineProperty(exports,"
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.cleanCache=exports.workletVersion=exports.checkGamePkgUserVersion=exports.getGamePkgUrl=exports.getGamePkgList=exports.uploadGamePkg=exports.miniappCloudUpload=exports.buildIpa=exports.buildApk=exports.getWhiteExtList=exports.checkCodeQuality=exports.analyseCode=exports.getLatestVersion=exports.uploadJsServer=exports.cloud=exports.getDevSourceMap=exports.proxy=exports.packNpmManually=exports.packNpm=exports.getCompiledResult=exports.preview=exports.upload=exports.Project=void 0;const project_1=require("./project");Object.defineProperty(exports,"Project",{enumerable:!0,get:function(){return project_1.Project}});const upload_1=require("./upload"),preview_1=require("./preview"),getDevSourceMap_1=require("./getDevSourceMap"),packnpm_1=require("../modules/corecompiler/original/npm/packnpm");Object.defineProperty(exports,"packNpm",{enumerable:!0,get:function(){return packnpm_1.packNpm}}),Object.defineProperty(exports,"packNpmManually",{enumerable:!0,get:function(){return packnpm_1.packNpmManually}});const request_1=require("../utils/request");Object.defineProperty(exports,"proxy",{enumerable:!0,get:function(){return request_1.setCiProxy}});const uploadFunction_1=require("./cloud/uploadFunction"),createTimeTrigger_1=require("./cloud/createTimeTrigger"),uploadContainer_1=require("./cloud/uploadContainer"),uploadFile_1=require("./cloud/uploadFile"),report_1=require("../utils/report"),jsserver_1=require("./jsserver");Object.defineProperty(exports,"uploadJsServer",{enumerable:!0,get:function(){return jsserver_1.uploadJsServer}});const code_analyse_1=require("./code-analyse");Object.defineProperty(exports,"analyseCode",{enumerable:!0,get:function(){return code_analyse_1.analyseCode}});const getCompiledResult_1=require("./getCompiledResult");Object.defineProperty(exports,"getCompiledResult",{enumerable:!0,get:function(){return getCompiledResult_1.getCompiledResult}});const getLatestVersion_1=require("./getLatestVersion");Object.defineProperty(exports,"getLatestVersion",{enumerable:!0,get:function(){return getLatestVersion_1.getLatestVersion}});const white_ext_list_1=require("../utils/white_ext_list");Object.defineProperty(exports,"getWhiteExtList",{enumerable:!0,get:function(){return white_ext_list_1.getWhiteExtList}});const checkCodeQuality_1=require("./checkCodeQuality");Object.defineProperty(exports,"checkCodeQuality",{enumerable:!0,get:function(){return checkCodeQuality_1.checkCodeQuality}});const cache_1=require("../utils/cache"),build_apk_1=require("./build-apk");Object.defineProperty(exports,"buildApk",{enumerable:!0,get:function(){return build_apk_1.buildApk}});const build_ipa_1=require("./build-ipa");Object.defineProperty(exports,"buildIpa",{enumerable:!0,get:function(){return build_ipa_1.buildIpa}});const miniapp_cloud_upload_1=require("./miniapp-cloud-upload");Object.defineProperty(exports,"miniappCloudUpload",{enumerable:!0,get:function(){return miniapp_cloud_upload_1.miniappCloudUpload}});const gamepkg_1=require("./gamepkg");Object.defineProperty(exports,"uploadGamePkg",{enumerable:!0,get:function(){return gamepkg_1.uploadGamePkg}});const apkplug_1=require("./gamepkg/apkplug");function cleanCache(){cache_1.cacheManager.clean()}Object.defineProperty(exports,"getGamePkgList",{enumerable:!0,get:function(){return apkplug_1.getGamePkgList}}),Object.defineProperty(exports,"getGamePkgUrl",{enumerable:!0,get:function(){return apkplug_1.getGamePkgUrl}}),Object.defineProperty(exports,"checkGamePkgUserVersion",{enumerable:!0,get:function(){return apkplug_1.checkGamePkgUserVersion}}),exports.upload=(0,report_1.wrapReport)("upload",upload_1.upload),exports.preview=(0,report_1.wrapReport)("preview",preview_1.preview),exports.getDevSourceMap=(0,report_1.wrapReport)("getDevSourceMap",getDevSourceMap_1.getDevSourceMap),exports.cloud={uploadFunction:uploadFunction_1.uploadFunction,createTimeTrigger:createTimeTrigger_1.createTimeTrigger,uploadStaticStorage:e=>(0,uploadFile_1.uploadFiles)(e,"staticstorage"),uploadStorage:e=>(0,uploadFile_1.uploadFiles)(e,"storage"),uploadContainer:uploadContainer_1.uploadContainer},exports.workletVersion=require("../utils/common").workletVersion,exports.cleanCache=cleanCache;
|
package/dist/ci/jsserver.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.uploadJsServer=
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.uploadJsServer=void 0;const tslib_1=require("tslib"),path_1=tslib_1.__importDefault(require("path")),request_1=require("../utils/request"),packfile_1=require("./utils/packfile"),zlib_1=tslib_1.__importDefault(require("zlib")),sign_1=require("../utils/sign"),config_1=require("../config/config"),log=tslib_1.__importStar(require("../utils/log")),error_1=require("../utils/error"),locales_1=tslib_1.__importDefault(require("../utils/locales/locales")),querystring_1=tslib_1.__importDefault(require("querystring")),url_config_1=require("../config/url.config"),jsonParse_1=require("../utils/jsonParse"),projectconfig_1=require("../modules/corecompiler/original/json/projectconfig");async function uploadJsServer(r){var e;const{project:o,env:t}=r;if(!t||"test"!==t&&"release"!==t)throw new error_1.CodeError(locales_1.default.config.PARAM_ERROR.format("uploadJsServer","env"),config_1.PARAM_ERROR);if(!o)throw new error_1.CodeError(locales_1.default.config.PARAM_ERROR.format("uploadJsServer","project"),config_1.PARAM_ERROR);const i=(0,projectconfig_1.getProjectConfigJSON)(o);if("string"!=typeof i.jsserverRoot||!(null===(e=o.stat("",i.jsserverRoot))||void 0===e?void 0:e.isDirectory))throw new error_1.CodeError("please set a correct jsserverRoot value in project.config.json",config_1.PARAM_ERROR);const s=await(0,packfile_1.packFiledir)(path_1.default.posix.join(o.projectPath,i.jsserverRoot)),l=await(0,sign_1.getSignature)(o.privateKey,o.appid),_={type:"release"===t?0:1,appid:o.appid,signature:l};try{const r=`${url_config_1.UPLOAD_JS_SERVER}?${querystring_1.default.stringify(_)}`;log.info("request url:",r);const e=zlib_1.default.gzipSync(s.data),o=(await(0,request_1.request)({url:r,method:"post",body:e})).body.toString();if(0!==(0,jsonParse_1.jsonRespParse)(o,r).errCode)throw new Error(o);return!0}catch(r){throw new error_1.CodeError(r.toString(),config_1.UPLOAD_JS_SERVER_CGI_ERR)}}exports.uploadJsServer=uploadJsServer;
|