downcity 1.1.239 → 1.1.241

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.
@@ -24,6 +24,9 @@ export interface ResolveQueueResult {
24
24
  }
25
25
  /**
26
26
  * 确认 Queue 存在,必要时创建。
27
+ *
28
+ * dry-run 模式不会创建远程 Queue,也不需要解析远程 id;如果 Queue 不存在,
29
+ * 只返回 pending 摘要,让 Wrangler dry-run 继续验证临时 binding 配置。
27
30
  */
28
31
  export declare function resolveQueue(params: ResolveQueueParams): Promise<ResolveQueueResult>;
29
32
  //# sourceMappingURL=QueueResolver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"QueueResolver.d.ts","sourceRoot":"","sources":["../../../../src/federation/deploy/runtime/QueueResolver.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EACV,2BAA2B,EAC5B,MAAM,+CAA+C,CAAC;AACvD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAC;AAG5F,kBAAkB;AAClB,MAAM,WAAW,kBAAkB;IACjC,mBAAmB;IACnB,WAAW,EAAE,2BAA2B,CAAC;IACzC,6BAA6B;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2BAA2B;IAC3B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,kBAAkB;AAClB,MAAM,WAAW,kBAAkB;IACjC,qBAAqB;IACrB,OAAO,EAAE,sBAAsB,CAAC;CACjC;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,kBAAkB,CAAC,CA8C7B"}
1
+ {"version":3,"file":"QueueResolver.d.ts","sourceRoot":"","sources":["../../../../src/federation/deploy/runtime/QueueResolver.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,2BAA2B,EAC5B,MAAM,+CAA+C,CAAC;AACvD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAC;AAG5F,kBAAkB;AAClB,MAAM,WAAW,kBAAkB;IACjC,mBAAmB;IACnB,WAAW,EAAE,2BAA2B,CAAC;IACzC,6BAA6B;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2BAA2B;IAC3B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,kBAAkB;AAClB,MAAM,WAAW,kBAAkB;IACjC,qBAAqB;IACrB,OAAO,EAAE,sBAAsB,CAAC;CACjC;AAED;;;;;GAKG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,kBAAkB,CAAC,CA+C7B"}
@@ -6,10 +6,12 @@
6
6
  * - 用户只需要在 `federation.json.resources.queue` 声明稳定资源名。
7
7
  * - Queue 没有需要写入项目配置的 id,Wrangler 配置只绑定 queue name。
8
8
  */
9
- import { CliError } from "../../../shared/CliError.js";
10
9
  import { runCommand } from "./CommandRunner.js";
11
10
  /**
12
11
  * 确认 Queue 存在,必要时创建。
12
+ *
13
+ * dry-run 模式不会创建远程 Queue,也不需要解析远程 id;如果 Queue 不存在,
14
+ * 只返回 pending 摘要,让 Wrangler dry-run 继续验证临时 binding 配置。
13
15
  */
14
16
  export async function resolveQueue(params) {
15
17
  const queue = params.config_file.config.resources.queue;
@@ -34,11 +36,12 @@ export async function resolveQueue(params) {
34
36
  };
35
37
  }
36
38
  if (!create_if_missing) {
37
- throw new CliError({
38
- title: "Cloudflare Queue not found",
39
- note: `Cloudflare account does not have a Queue named ${queue_name}.`,
40
- fix: "Run `city deploy` once without `--dry-run` to let Downcity create it, or update resources.queue.name in federation.json.",
41
- });
39
+ return {
40
+ summary: {
41
+ name: queue_name,
42
+ status: "pending",
43
+ },
44
+ };
42
45
  }
43
46
  await runCommand({
44
47
  label: "Create Cloudflare Queue",
@@ -60,26 +63,66 @@ export async function resolveQueue(params) {
60
63
  async function findExistingQueue(params) {
61
64
  const output = await runCommand({
62
65
  label: "List Cloudflare Queues",
63
- command: "pnpm exec wrangler queues list --json",
66
+ command: "pnpm exec wrangler queues list",
64
67
  cwd: params.project_dir,
65
68
  env: { CLOUDFLARE_ACCOUNT_ID: params.account_id },
66
69
  capture: true,
67
70
  });
71
+ return hasQueueInListOutput(output, params.queue_name);
72
+ }
73
+ /**
74
+ * 从 Wrangler Queue 列表输出中判断指定 Queue 是否存在。
75
+ */
76
+ function hasQueueInListOutput(output, queue_name) {
77
+ const trimmed_output = output.trim();
78
+ if (!trimmed_output)
79
+ return false;
68
80
  try {
69
- const parsed = JSON.parse(output);
81
+ const parsed = JSON.parse(trimmed_output);
70
82
  const items = Array.isArray(parsed)
71
83
  ? parsed
72
84
  : Array.isArray(parsed?.queues)
73
85
  ? parsed.queues
74
86
  : [];
75
- return items.some((item) => {
87
+ const has_json_queue = items.some((item) => {
76
88
  const record = item && typeof item === "object" ? item : {};
77
- return String(record.name ?? record.queue_name ?? "").trim() === params.queue_name;
89
+ return String(record.name ?? record.queue_name ?? "").trim() === queue_name;
78
90
  });
91
+ if (has_json_queue)
92
+ return true;
79
93
  }
80
94
  catch {
81
- return false;
95
+ // Wrangler Queue list 当前是文本输出;JSON 解析失败时继续按表格/文本解析。
96
+ }
97
+ return readTextQueueNames(trimmed_output).some((name) => name === queue_name);
98
+ }
99
+ /**
100
+ * 从文本表格或纯文本输出中读取 Queue 名称。
101
+ */
102
+ function readTextQueueNames(output) {
103
+ const names = [];
104
+ for (const line of output.replace(/\u001b\[[0-9;]*m/g, "").split(/\r?\n/)) {
105
+ const cells = line
106
+ .split(/[│|]/g)
107
+ .map((cell) => cell.trim())
108
+ .filter(Boolean);
109
+ if (cells.length > 1) {
110
+ names.push(...cells.filter(isPossibleQueueName));
111
+ continue;
112
+ }
113
+ const plain_name = line.trim().replace(/^[-*]\s+/, "");
114
+ if (isPossibleQueueName(plain_name))
115
+ names.push(plain_name);
82
116
  }
117
+ return names;
118
+ }
119
+ /**
120
+ * 判断文本片段是否像一个 Cloudflare Queue 名称。
121
+ */
122
+ function isPossibleQueueName(value) {
123
+ if (!value || value === "name" || value === "queue" || value === "Queue Name")
124
+ return false;
125
+ return /^[a-zA-Z0-9][a-zA-Z0-9._-]*$/.test(value);
83
126
  }
84
127
  /**
85
128
  * shell 参数转义。
@@ -1 +1 @@
1
- {"version":3,"file":"QueueResolver.js","sourceRoot":"","sources":["../../../../src/federation/deploy/runtime/QueueResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"QueueResolver.js","sourceRoot":"","sources":["../../../../src/federation/deploy/runtime/QueueResolver.ts"],"names":[],"mappings":"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"}
@@ -60,7 +60,7 @@ export interface FederationD1DatabaseSummary {
60
60
  /**
61
61
  * Queue 准备状态。
62
62
  */
63
- export type FederationQueueStatus = "created" | "reused" | "skipped";
63
+ export type FederationQueueStatus = "created" | "reused" | "pending" | "skipped";
64
64
  /**
65
65
  * Queue 准备结果。
66
66
  */
@@ -1 +1 @@
1
- {"version":3,"file":"FederationDeployRuntime.d.ts","sourceRoot":"","sources":["../../../src/federation/types/FederationDeployRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;GAEG;AACH,MAAM,MAAM,6BAA6B,GACrC,QAAQ,GACR,SAAS,GACT,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,MAAM,EAAE,6BAA6B,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,oCAAoC;IACnD;;OAEG;IACH,KAAK,EAAE,6BAA6B,CAAC;IAErC;;OAEG;IACH,SAAS,EAAE,6BAA6B,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAClC,SAAS,GACT,QAAQ,GACR,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,MAAM,EAAE,0BAA0B,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAC7B,SAAS,GACT,QAAQ,GACR,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,MAAM,EAAE,qBAAqB,CAAC;CAC/B"}
1
+ {"version":3,"file":"FederationDeployRuntime.d.ts","sourceRoot":"","sources":["../../../src/federation/types/FederationDeployRuntime.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;GAEG;AACH,MAAM,MAAM,6BAA6B,GACrC,QAAQ,GACR,SAAS,GACT,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,MAAM,EAAE,6BAA6B,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,oCAAoC;IACnD;;OAEG;IACH,KAAK,EAAE,6BAA6B,CAAC;IAErC;;OAEG;IACH,SAAS,EAAE,6BAA6B,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAClC,SAAS,GACT,QAAQ,GACR,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,MAAM,EAAE,0BAA0B,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAC7B,SAAS,GACT,QAAQ,GACR,SAAS,GACT,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,MAAM,EAAE,qBAAqB,CAAC;CAC/B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "downcity",
3
- "version": "1.1.239",
3
+ "version": "1.1.241",
4
4
  "type": "module",
5
5
  "description": "Downcity CLI — unified City and Agent host management",
6
6
  "bin": {