fix: 织厂安装包改传到周尚CDN并升至1.1.21
This commit is contained in:
+21
-10
@@ -21,12 +21,20 @@ const path = require('path');
|
||||
const readline = require('readline');
|
||||
|
||||
const ROOT = path.resolve(__dirname, '..');
|
||||
const API_BASE = 'https://hcscmtest.zzfzyc.com/hcscm_weave';
|
||||
const UPYUN_API = 'https://v0.api.upyun.com';
|
||||
const CDN_HOST = {
|
||||
const DEFAULT_API_BASE = 'https://hcscmtest.zzfzyc.com/hcscm_weave';
|
||||
const DEFAULT_CDN_HOST = {
|
||||
test: 'https://testhcscm.cdn.zzfzyc.com',
|
||||
prod: 'https://hcscm.cdn.zzfzyc.com',
|
||||
};
|
||||
/** 织厂环境签到 zhoushang 空间,下载域名与 ERP 相同 */
|
||||
const MODE_UPLOAD = {
|
||||
zhoushang: {
|
||||
apiBase: 'https://zszc.yushangfangzhi.com/hcscm_weave',
|
||||
cdnHost: 'https://zsfzcdn.yushangfangzhi.com',
|
||||
status: 1,
|
||||
},
|
||||
};
|
||||
|
||||
const MODE_ENV = {
|
||||
zhoushang: '.env.zhoushang',
|
||||
@@ -218,9 +226,9 @@ async function uploadToUpyun({ bucket, authorization, policy, filePath, fileName
|
||||
return body;
|
||||
}
|
||||
|
||||
function toPublicUrl(target, saveKey, uploaded) {
|
||||
function toPublicUrl(cdnHost, saveKey, uploaded) {
|
||||
if (uploaded.url && String(uploaded.url).startsWith('http')) return uploaded.url;
|
||||
return `${CDN_HOST[target]}${saveKey}`;
|
||||
return `${cdnHost}${saveKey}`;
|
||||
}
|
||||
|
||||
async function uploadApkFile({ apiBase, token, apkPath, saveKey, fileName, status }) {
|
||||
@@ -235,6 +243,7 @@ async function uploadApkFile({ apiBase, token, apkPath, saveKey, fileName, statu
|
||||
if (!sign.bucket || !sign.authorization || !sign.policy) {
|
||||
throw new Error('签名返回缺少 bucket、authorization 或 policy');
|
||||
}
|
||||
console.log(`空间: ${sign.bucket}`);
|
||||
console.log(`正在上传 ${fileName}...`);
|
||||
const uploaded = await uploadToUpyun({
|
||||
bucket: sign.bucket,
|
||||
@@ -280,12 +289,14 @@ async function main() {
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
const status = args.target === 'prod' ? 2 : 1;
|
||||
const modeUpload = MODE_UPLOAD[args.mode];
|
||||
const status = modeUpload ? modeUpload.status : (args.target === 'prod' ? 2 : 1);
|
||||
const fileName = `${version}.apk`;
|
||||
const saveKey = `/version/${upgradeName}/${fileName}`;
|
||||
const latestFileName = 'latest.apk';
|
||||
const latestSaveKey = `/version/${upgradeName}/${latestFileName}`;
|
||||
const apiBase = API_BASE;
|
||||
const apiBase = modeUpload ? modeUpload.apiBase : DEFAULT_API_BASE;
|
||||
const cdnHost = modeUpload ? modeUpload.cdnHost : DEFAULT_CDN_HOST[args.target];
|
||||
const token = await login(apiBase, {
|
||||
phone: args.phone,
|
||||
password: args.password,
|
||||
@@ -293,8 +304,8 @@ async function main() {
|
||||
});
|
||||
|
||||
console.log(`版本号: ${version}`);
|
||||
const cdnLabel = args.target === 'prod' ? '正式 CDN' : '测试 CDN';
|
||||
console.log(`CDN: ${cdnLabel}(只影响下载地址,生产环境也可以从测试 CDN 安装)`);
|
||||
console.log(`签名接口: ${apiBase}`);
|
||||
console.log(`CDN: ${cdnHost}`);
|
||||
const uploaded = await uploadApkFile({
|
||||
apiBase,
|
||||
token,
|
||||
@@ -303,7 +314,7 @@ async function main() {
|
||||
fileName,
|
||||
status,
|
||||
});
|
||||
console.log(toPublicUrl(args.target, saveKey, uploaded));
|
||||
console.log(toPublicUrl(cdnHost, saveKey, uploaded));
|
||||
|
||||
const latestUploaded = await uploadApkFile({
|
||||
apiBase,
|
||||
@@ -313,7 +324,7 @@ async function main() {
|
||||
fileName: latestFileName,
|
||||
status,
|
||||
});
|
||||
console.log(toPublicUrl(args.target, latestSaveKey, latestUploaded));
|
||||
console.log(toPublicUrl(cdnHost, latestSaveKey, latestUploaded));
|
||||
}
|
||||
|
||||
main().catch((error) => {
|
||||
|
||||
Reference in New Issue
Block a user