@lark-apaas/fullstack-cli 1.1.16-beta.8 → 1.1.16-beta.9

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.
Files changed (2) hide show
  1. package/dist/index.js +38 -16
  2. 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=main) appId=${appId ? "set" : "unset"} workspace=${workspace ? "set" : "unset"}`
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: "main" }, headers: { "x-supaas-bizsource": "miaoda" } }
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 = `/b/${appId}/get_published_v2`;
7274
- const response = await client.get(url);
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
- `get_published_v2 \u8BF7\u6C42\u5931\u8D25: ${response.status} ${response.statusText}`
7284
+ `getOrCreateStaticBucket \u8BF7\u6C42\u5931\u8D25: ${response.status} ${response.statusText}`
7278
7285
  );
7279
7286
  }
7280
7287
  const data = await response.json();
7281
- const bucketId = data?.data?.app_runtime_extra?.bucket?.default_bucket_id;
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\u9ED8\u8BA4\u5B58\u50A8\u6876`);
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
  }
@@ -7360,10 +7370,10 @@ async function uploadStatic(options) {
7360
7370
  try {
7361
7371
  const {
7362
7372
  appId,
7363
- staticDir = "shared/static",
7364
- tosutilPath = "/workspace/tosutil",
7365
- endpoint = "tos-cn-beijing.volces.com",
7366
- region = "cn-beijing"
7373
+ staticDir = UPLOAD_STATIC_DEFAULTS.staticDir,
7374
+ tosutilPath = UPLOAD_STATIC_DEFAULTS.tosutilPath,
7375
+ endpoint = UPLOAD_STATIC_DEFAULTS.endpoint,
7376
+ region = UPLOAD_STATIC_DEFAULTS.region
7367
7377
  } = options;
7368
7378
  const resolvedStaticDir = path21.resolve(staticDir);
7369
7379
  if (!fs25.existsSync(resolvedStaticDir)) {
@@ -7374,9 +7384,10 @@ async function uploadStatic(options) {
7374
7384
  console.error(`${LOG_PREFIX} \u76EE\u5F55\u4E3A\u7A7A: ${resolvedStaticDir}\uFF0C\u8DF3\u8FC7\u4E0A\u4F20`);
7375
7385
  return;
7376
7386
  }
7377
- if (!fs25.existsSync(tosutilPath)) {
7387
+ const resolvedTosutil = resolveTosutilPath(tosutilPath);
7388
+ if (!resolvedTosutil) {
7378
7389
  throw new Error(
7379
- `tosutil \u4E0D\u5B58\u5728: ${tosutilPath}\u3002\u8BF7\u786E\u4FDD\u6D41\u6C34\u7EBF\u5DF2\u5728"\u4EA7\u7269\u6253\u5305\u4E0A\u4F20"\u6B65\u9AA4\u4E2D\u4E0B\u8F7D tosutil\u3002`
7390
+ `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
7391
  );
7381
7392
  }
7382
7393
  let uploadPrefix;
@@ -7399,7 +7410,7 @@ async function uploadStatic(options) {
7399
7410
  }
7400
7411
  console.error(`${LOG_PREFIX} \u4E0A\u4F20\u76EE\u6807: ${uploadPrefix}`);
7401
7412
  console.error(`${LOG_PREFIX} \u914D\u7F6E tosutil...`);
7402
- configureTosutil(tosutilPath, {
7413
+ configureTosutil(resolvedTosutil, {
7403
7414
  endpoint,
7404
7415
  region,
7405
7416
  accessKeyID,
@@ -7407,7 +7418,7 @@ async function uploadStatic(options) {
7407
7418
  sessionToken
7408
7419
  });
7409
7420
  console.error(`${LOG_PREFIX} \u4E0A\u4F20 ${resolvedStaticDir} -> ${uploadPrefix}`);
7410
- uploadToTos(tosutilPath, resolvedStaticDir, uploadPrefix);
7421
+ uploadToTos(resolvedTosutil, resolvedStaticDir, uploadPrefix);
7411
7422
  console.error(`${LOG_PREFIX} tosutil \u4E0A\u4F20\u5B8C\u6210`);
7412
7423
  console.error(`${LOG_PREFIX} \u8C03\u7528 callbackStatic (uploadID: ${uploadID})...`);
7413
7424
  const callbackResp = await uploadStaticAttachmentCallback(appId, bucketId, { uploadID });
@@ -7423,6 +7434,17 @@ async function uploadStatic(options) {
7423
7434
  process.exit(1);
7424
7435
  }
7425
7436
  }
7437
+ function resolveTosutilPath(tosutilPath) {
7438
+ if (path21.isAbsolute(tosutilPath)) {
7439
+ return fs25.existsSync(tosutilPath) ? tosutilPath : null;
7440
+ }
7441
+ try {
7442
+ const resolved = execFileSync("which", [tosutilPath], { encoding: "utf-8" }).trim();
7443
+ return resolved || null;
7444
+ } catch {
7445
+ return null;
7446
+ }
7447
+ }
7426
7448
  async function fetchPreUpload(appId, bucketId) {
7427
7449
  const response = await preUploadStaticAttachment(appId, bucketId);
7428
7450
  if (response.status_code !== "0") {
@@ -7517,7 +7539,7 @@ var uploadStaticCommand = {
7517
7539
  name: "upload-static",
7518
7540
  description: "Upload shared/static files to TOS",
7519
7541
  register(program) {
7520
- program.command(this.name).description(this.description).requiredOption("--app-id <id>", "Application ID").option("--static-dir <dir>", "Static files directory", "shared/static").option("--tosutil-path <path>", "Path to tosutil binary", "/workspace/tosutil").option("--endpoint <endpoint>", "TOS endpoint", "tos-cn-beijing.volces.com").option("--region <region>", "TOS region", "cn-beijing").action(async (options) => {
7542
+ 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
7543
  await uploadStatic(options);
7522
7544
  });
7523
7545
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lark-apaas/fullstack-cli",
3
- "version": "1.1.16-beta.8",
3
+ "version": "1.1.16-beta.9",
4
4
  "description": "CLI tool for fullstack template management",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",