@lark-apaas/fullstack-cli 1.1.31 → 1.1.33
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/dist/index.js +60 -28
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1414,14 +1414,15 @@ async function fetchSyncedTables(appId, workspace) {
|
|
|
1414
1414
|
DEFAULT_TIMEOUT_MS2
|
|
1415
1415
|
);
|
|
1416
1416
|
});
|
|
1417
|
+
const dbBranch = process.env.FORCE_DB_BRANCH || "main";
|
|
1417
1418
|
const start = Date.now();
|
|
1418
1419
|
console.log(
|
|
1419
|
-
`[fetchSyncedTables] \u2192 GET listTableView (dbBranch
|
|
1420
|
+
`[fetchSyncedTables] \u2192 GET listTableView (dbBranch=${dbBranch}) appId=${appId ? "set" : "unset"} workspace=${workspace ? "set" : "unset"}`
|
|
1420
1421
|
);
|
|
1421
1422
|
const response = await Promise.race([
|
|
1422
1423
|
client.get(
|
|
1423
1424
|
`/api/v1/dataloom/inner/app/${appId}/workspaces/${workspace}/listTableView`,
|
|
1424
|
-
{ params: { dbBranch
|
|
1425
|
+
{ params: { dbBranch }, headers: { "x-supaas-bizsource": "miaoda" } }
|
|
1425
1426
|
),
|
|
1426
1427
|
timeoutPromise
|
|
1427
1428
|
]);
|
|
@@ -7255,6 +7256,12 @@ var SCENE_CONFIGS = {
|
|
|
7255
7256
|
buildRequestBody: () => ({ commitID: "" })
|
|
7256
7257
|
}
|
|
7257
7258
|
};
|
|
7259
|
+
var UPLOAD_STATIC_DEFAULTS = {
|
|
7260
|
+
staticDir: "shared/static",
|
|
7261
|
+
tosutilPath: "tosutil",
|
|
7262
|
+
endpoint: "tos-cn-beijing.volces.com",
|
|
7263
|
+
region: "cn-beijing"
|
|
7264
|
+
};
|
|
7258
7265
|
|
|
7259
7266
|
// src/commands/build/api-client.ts
|
|
7260
7267
|
async function genArtifactUploadCredential(appId, body) {
|
|
@@ -7270,17 +7277,20 @@ async function genArtifactUploadCredential(appId, body) {
|
|
|
7270
7277
|
}
|
|
7271
7278
|
async function getDefaultBucketId(appId) {
|
|
7272
7279
|
const client = getHttpClient();
|
|
7273
|
-
const url = `/
|
|
7274
|
-
const response = await client.
|
|
7280
|
+
const url = `/v1/app/${appId}/storage/inner/staticBucket`;
|
|
7281
|
+
const response = await client.post(url, {});
|
|
7275
7282
|
if (!response.ok || response.status !== 200) {
|
|
7276
7283
|
throw new Error(
|
|
7277
|
-
`
|
|
7284
|
+
`getOrCreateStaticBucket \u8BF7\u6C42\u5931\u8D25: ${response.status} ${response.statusText}`
|
|
7278
7285
|
);
|
|
7279
7286
|
}
|
|
7280
7287
|
const data = await response.json();
|
|
7281
|
-
|
|
7288
|
+
if (data.status_code !== "0") {
|
|
7289
|
+
throw new Error(`getOrCreateStaticBucket \u8FD4\u56DE\u5F02\u5E38, status_code: ${data.status_code}`);
|
|
7290
|
+
}
|
|
7291
|
+
const bucketId = data?.data?.bucketID;
|
|
7282
7292
|
if (!bucketId) {
|
|
7283
|
-
throw new Error(`\u672A\u627E\u5230\u5E94\u7528 ${appId} \u7684\
|
|
7293
|
+
throw new Error(`\u672A\u627E\u5230\u5E94\u7528 ${appId} \u7684\u9759\u6001\u8D44\u6E90\u5B58\u50A8\u6876`);
|
|
7284
7294
|
}
|
|
7285
7295
|
return bucketId;
|
|
7286
7296
|
}
|
|
@@ -7341,6 +7351,7 @@ function camelToKebab(str) {
|
|
|
7341
7351
|
|
|
7342
7352
|
// src/commands/build/upload-static.handler.ts
|
|
7343
7353
|
import * as fs25 from "fs";
|
|
7354
|
+
import * as os2 from "os";
|
|
7344
7355
|
import * as path21 from "path";
|
|
7345
7356
|
import { execFileSync } from "child_process";
|
|
7346
7357
|
function readCredentialsFromEnv() {
|
|
@@ -7360,10 +7371,10 @@ async function uploadStatic(options) {
|
|
|
7360
7371
|
try {
|
|
7361
7372
|
const {
|
|
7362
7373
|
appId,
|
|
7363
|
-
staticDir =
|
|
7364
|
-
tosutilPath =
|
|
7365
|
-
endpoint =
|
|
7366
|
-
region =
|
|
7374
|
+
staticDir = UPLOAD_STATIC_DEFAULTS.staticDir,
|
|
7375
|
+
tosutilPath = UPLOAD_STATIC_DEFAULTS.tosutilPath,
|
|
7376
|
+
endpoint = UPLOAD_STATIC_DEFAULTS.endpoint,
|
|
7377
|
+
region = UPLOAD_STATIC_DEFAULTS.region
|
|
7367
7378
|
} = options;
|
|
7368
7379
|
const resolvedStaticDir = path21.resolve(staticDir);
|
|
7369
7380
|
if (!fs25.existsSync(resolvedStaticDir)) {
|
|
@@ -7374,9 +7385,10 @@ async function uploadStatic(options) {
|
|
|
7374
7385
|
console.error(`${LOG_PREFIX} \u76EE\u5F55\u4E3A\u7A7A: ${resolvedStaticDir}\uFF0C\u8DF3\u8FC7\u4E0A\u4F20`);
|
|
7375
7386
|
return;
|
|
7376
7387
|
}
|
|
7377
|
-
|
|
7388
|
+
const resolvedTosutil = resolveTosutilPath(tosutilPath);
|
|
7389
|
+
if (!resolvedTosutil) {
|
|
7378
7390
|
throw new Error(
|
|
7379
|
-
`tosutil \u4E0D\u5B58\u5728: ${tosutilPath}\u3002\u8BF7\u786E\u4FDD\
|
|
7391
|
+
`tosutil \u4E0D\u5B58\u5728: ${tosutilPath}\u3002\u8BF7\u786E\u4FDD tosutil \u5DF2\u5B89\u88C5\u5728\u7CFB\u7EDF PATH \u4E2D\u6216\u901A\u8FC7 --tosutil-path \u6307\u5B9A\u8DEF\u5F84\u3002`
|
|
7380
7392
|
);
|
|
7381
7393
|
}
|
|
7382
7394
|
let uploadPrefix;
|
|
@@ -7398,16 +7410,25 @@ async function uploadStatic(options) {
|
|
|
7398
7410
|
({ AccessKeyID: accessKeyID, SecretAccessKey: secretAccessKey, SessionToken: sessionToken } = uploadCredential);
|
|
7399
7411
|
}
|
|
7400
7412
|
console.error(`${LOG_PREFIX} \u4E0A\u4F20\u76EE\u6807: ${uploadPrefix}`);
|
|
7401
|
-
|
|
7402
|
-
|
|
7403
|
-
|
|
7404
|
-
|
|
7405
|
-
|
|
7406
|
-
|
|
7407
|
-
|
|
7408
|
-
|
|
7409
|
-
|
|
7410
|
-
|
|
7413
|
+
const confPath = path21.join(os2.tmpdir(), `.tosutilconfig-static-${process.pid}`);
|
|
7414
|
+
fs25.writeFileSync(confPath, "");
|
|
7415
|
+
try {
|
|
7416
|
+
console.error(`${LOG_PREFIX} \u914D\u7F6E tosutil...`);
|
|
7417
|
+
configureTosutil(resolvedTosutil, confPath, {
|
|
7418
|
+
endpoint,
|
|
7419
|
+
region,
|
|
7420
|
+
accessKeyID,
|
|
7421
|
+
secretAccessKey,
|
|
7422
|
+
sessionToken
|
|
7423
|
+
});
|
|
7424
|
+
console.error(`${LOG_PREFIX} \u4E0A\u4F20 ${resolvedStaticDir} -> ${uploadPrefix}`);
|
|
7425
|
+
uploadToTos(resolvedTosutil, confPath, resolvedStaticDir, uploadPrefix);
|
|
7426
|
+
} finally {
|
|
7427
|
+
try {
|
|
7428
|
+
fs25.unlinkSync(confPath);
|
|
7429
|
+
} catch {
|
|
7430
|
+
}
|
|
7431
|
+
}
|
|
7411
7432
|
console.error(`${LOG_PREFIX} tosutil \u4E0A\u4F20\u5B8C\u6210`);
|
|
7412
7433
|
console.error(`${LOG_PREFIX} \u8C03\u7528 callbackStatic (uploadID: ${uploadID})...`);
|
|
7413
7434
|
const callbackResp = await uploadStaticAttachmentCallback(appId, bucketId, { uploadID });
|
|
@@ -7423,6 +7444,17 @@ async function uploadStatic(options) {
|
|
|
7423
7444
|
process.exit(1);
|
|
7424
7445
|
}
|
|
7425
7446
|
}
|
|
7447
|
+
function resolveTosutilPath(tosutilPath) {
|
|
7448
|
+
if (path21.isAbsolute(tosutilPath)) {
|
|
7449
|
+
return fs25.existsSync(tosutilPath) ? tosutilPath : null;
|
|
7450
|
+
}
|
|
7451
|
+
try {
|
|
7452
|
+
const resolved = execFileSync("which", [tosutilPath], { encoding: "utf-8" }).trim();
|
|
7453
|
+
return resolved || null;
|
|
7454
|
+
} catch {
|
|
7455
|
+
return null;
|
|
7456
|
+
}
|
|
7457
|
+
}
|
|
7426
7458
|
async function fetchPreUpload(appId, bucketId) {
|
|
7427
7459
|
const response = await preUploadStaticAttachment(appId, bucketId);
|
|
7428
7460
|
if (response.status_code !== "0") {
|
|
@@ -7437,18 +7469,18 @@ async function fetchPreUpload(appId, bucketId) {
|
|
|
7437
7469
|
}
|
|
7438
7470
|
return response;
|
|
7439
7471
|
}
|
|
7440
|
-
function configureTosutil(tosutilPath, config) {
|
|
7472
|
+
function configureTosutil(tosutilPath, confPath, config) {
|
|
7441
7473
|
const { endpoint, region, accessKeyID, secretAccessKey, sessionToken } = config;
|
|
7442
7474
|
execFileSync(
|
|
7443
7475
|
tosutilPath,
|
|
7444
|
-
["config", "-e", endpoint, "-i", accessKeyID, "-k", secretAccessKey, "-t", sessionToken, "-re", region],
|
|
7476
|
+
["config", "-conf", confPath, "-e", endpoint, "-i", accessKeyID, "-k", secretAccessKey, "-t", sessionToken, "-re", region],
|
|
7445
7477
|
{ stdio: "pipe" }
|
|
7446
7478
|
);
|
|
7447
7479
|
}
|
|
7448
|
-
function uploadToTos(tosutilPath, sourceDir, destUrl) {
|
|
7480
|
+
function uploadToTos(tosutilPath, confPath, sourceDir, destUrl) {
|
|
7449
7481
|
execFileSync(
|
|
7450
7482
|
tosutilPath,
|
|
7451
|
-
["cp", sourceDir, destUrl, "-r", "-flat", "-j", "5", "-p", "3", "-ps", "10485760", "-f"],
|
|
7483
|
+
["cp", "-conf", confPath, sourceDir, destUrl, "-r", "-flat", "-j", "5", "-p", "3", "-ps", "10485760", "-f"],
|
|
7452
7484
|
{ stdio: "inherit" }
|
|
7453
7485
|
);
|
|
7454
7486
|
}
|
|
@@ -7517,7 +7549,7 @@ var uploadStaticCommand = {
|
|
|
7517
7549
|
name: "upload-static",
|
|
7518
7550
|
description: "Upload shared/static files to TOS",
|
|
7519
7551
|
register(program) {
|
|
7520
|
-
program.command(this.name).description(this.description).requiredOption("--app-id <id>", "Application ID").option("--static-dir <dir>", "Static files directory",
|
|
7552
|
+
program.command(this.name).description(this.description).requiredOption("--app-id <id>", "Application ID").option("--static-dir <dir>", "Static files directory", UPLOAD_STATIC_DEFAULTS.staticDir).option("--tosutil-path <path>", "Path to tosutil binary", UPLOAD_STATIC_DEFAULTS.tosutilPath).option("--endpoint <endpoint>", "TOS endpoint", UPLOAD_STATIC_DEFAULTS.endpoint).option("--region <region>", "TOS region", UPLOAD_STATIC_DEFAULTS.region).action(async (options) => {
|
|
7521
7553
|
await uploadStatic(options);
|
|
7522
7554
|
});
|
|
7523
7555
|
}
|