ai-project-manage-cli 2.0.11 → 2.0.13

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 (103) hide show
  1. package/README.md +6 -6
  2. package/dist/api/cli.d.ts +84 -7
  3. package/dist/api/cli.d.ts.map +1 -1
  4. package/dist/api/client.d.ts +5 -1
  5. package/dist/api/client.d.ts.map +1 -1
  6. package/dist/api/index.d.ts +1 -1
  7. package/dist/api/index.d.ts.map +1 -1
  8. package/dist/api/request-config.d.ts +6 -2
  9. package/dist/api/request-config.d.ts.map +1 -1
  10. package/dist/api/request-config.js +18 -2
  11. package/dist/api/request-config.js.map +1 -1
  12. package/dist/cli/commands/deploy-backend.d.ts +7 -0
  13. package/dist/cli/commands/deploy-backend.d.ts.map +1 -0
  14. package/dist/cli/commands/deploy-backend.js +81 -0
  15. package/dist/cli/commands/deploy-backend.js.map +1 -0
  16. package/dist/cli/commands/deploy-frontend.d.ts +3 -0
  17. package/dist/cli/commands/deploy-frontend.d.ts.map +1 -0
  18. package/dist/cli/commands/deploy-frontend.js +98 -0
  19. package/dist/cli/commands/deploy-frontend.js.map +1 -0
  20. package/dist/cli/commands/get.d.ts.map +1 -1
  21. package/dist/cli/commands/get.js +37 -13
  22. package/dist/cli/commands/get.js.map +1 -1
  23. package/dist/cli/commands/init.js +1 -1
  24. package/dist/cli/commands/publish.d.ts.map +1 -1
  25. package/dist/cli/commands/publish.js +42 -127
  26. package/dist/cli/commands/publish.js.map +1 -1
  27. package/dist/cli/commands/release.d.ts +3 -0
  28. package/dist/cli/commands/release.d.ts.map +1 -0
  29. package/dist/cli/commands/release.js +39 -0
  30. package/dist/cli/commands/release.js.map +1 -0
  31. package/dist/cli/commands/set.d.ts.map +1 -1
  32. package/dist/cli/commands/set.js +0 -8
  33. package/dist/cli/commands/set.js.map +1 -1
  34. package/dist/cli/commands/status.d.ts +3 -0
  35. package/dist/cli/commands/status.d.ts.map +1 -0
  36. package/dist/cli/commands/status.js +44 -0
  37. package/dist/cli/commands/status.js.map +1 -0
  38. package/dist/cli/utils/parse.d.ts +2 -0
  39. package/dist/cli/utils/parse.d.ts.map +1 -0
  40. package/dist/cli/utils/parse.js +12 -0
  41. package/dist/cli/utils/parse.js.map +1 -0
  42. package/dist/cli.js +8 -2
  43. package/dist/cli.js.map +1 -1
  44. package/dist/core/apm-config.d.ts +60 -1
  45. package/dist/core/apm-config.d.ts.map +1 -1
  46. package/dist/core/apm-config.js +111 -3
  47. package/dist/core/apm-config.js.map +1 -1
  48. package/dist/core/backend-deploy/backend-deploy-workflow.d.ts +16 -0
  49. package/dist/core/backend-deploy/backend-deploy-workflow.d.ts.map +1 -0
  50. package/dist/core/backend-deploy/backend-deploy-workflow.js +53 -0
  51. package/dist/core/backend-deploy/backend-deploy-workflow.js.map +1 -0
  52. package/dist/core/backend-deploy/image-tag.d.ts +2 -0
  53. package/dist/core/backend-deploy/image-tag.d.ts.map +1 -0
  54. package/dist/core/backend-deploy/image-tag.js +15 -0
  55. package/dist/core/backend-deploy/image-tag.js.map +1 -0
  56. package/dist/core/backend-deploy/index.d.ts +12 -0
  57. package/dist/core/backend-deploy/index.d.ts.map +1 -0
  58. package/dist/core/backend-deploy/index.js +23 -0
  59. package/dist/core/backend-deploy/index.js.map +1 -0
  60. package/dist/core/backend-deploy/local-docker-build.d.ts +11 -0
  61. package/dist/core/backend-deploy/local-docker-build.d.ts.map +1 -0
  62. package/dist/core/backend-deploy/local-docker-build.js +29 -0
  63. package/dist/core/backend-deploy/local-docker-build.js.map +1 -0
  64. package/dist/core/backend-deploy/registry-login-push.d.ts +14 -0
  65. package/dist/core/backend-deploy/registry-login-push.d.ts.map +1 -0
  66. package/dist/core/backend-deploy/registry-login-push.js +48 -0
  67. package/dist/core/backend-deploy/registry-login-push.js.map +1 -0
  68. package/dist/core/backend-deploy/remote-docker-client.d.ts +11 -0
  69. package/dist/core/backend-deploy/remote-docker-client.d.ts.map +1 -0
  70. package/dist/core/backend-deploy/remote-docker-client.js +33 -0
  71. package/dist/core/backend-deploy/remote-docker-client.js.map +1 -0
  72. package/dist/core/backend-deploy/remote-pull-image.d.ts +9 -0
  73. package/dist/core/backend-deploy/remote-pull-image.d.ts.map +1 -0
  74. package/dist/core/backend-deploy/remote-pull-image.js +39 -0
  75. package/dist/core/backend-deploy/remote-pull-image.js.map +1 -0
  76. package/dist/core/backend-deploy/resolve-dockerfile.d.ts +12 -0
  77. package/dist/core/backend-deploy/resolve-dockerfile.d.ts.map +1 -0
  78. package/dist/core/backend-deploy/resolve-dockerfile.js +33 -0
  79. package/dist/core/backend-deploy/resolve-dockerfile.js.map +1 -0
  80. package/dist/core/backend-deploy/run-docker-cli.d.ts +14 -0
  81. package/dist/core/backend-deploy/run-docker-cli.d.ts.map +1 -0
  82. package/dist/core/backend-deploy/run-docker-cli.js +33 -0
  83. package/dist/core/backend-deploy/run-docker-cli.js.map +1 -0
  84. package/dist/core/backend-deploy/types.d.ts +69 -0
  85. package/dist/core/backend-deploy/types.d.ts.map +1 -0
  86. package/dist/core/backend-deploy/types.js +6 -0
  87. package/dist/core/backend-deploy/types.js.map +1 -0
  88. package/dist/core/branch-name.d.ts +8 -0
  89. package/dist/core/branch-name.d.ts.map +1 -0
  90. package/dist/core/branch-name.js +37 -0
  91. package/dist/core/branch-name.js.map +1 -0
  92. package/dist/core/cursor-cmd.d.ts.map +1 -1
  93. package/dist/core/cursor-cmd.js +2 -1
  94. package/dist/core/cursor-cmd.js.map +1 -1
  95. package/dist/core/minio.d.ts +35 -0
  96. package/dist/core/minio.d.ts.map +1 -0
  97. package/dist/core/minio.js +154 -0
  98. package/dist/core/minio.js.map +1 -0
  99. package/package.json +6 -6
  100. package/templates/skills/apm-apply-change/SKILL.md +1 -1
  101. package/templates/skills/apm-auto-dev/SKILL.md +1 -1
  102. package/templates/skills/apm-fixbug/SKILL.md +53 -115
  103. package/templates/skills/apm-release/SKILL.md +87 -0
package/README.md CHANGED
@@ -38,7 +38,7 @@ apm logout # 清除 token、employeeId,保留 ba
38
38
  apm init
39
39
  ```
40
40
 
41
- ## `apm publish`
41
+ ## `apm deploy-frontend`
42
42
 
43
43
  将本地构建产物目录**递归上传**到 **MinIO**(S3 兼容),对象键规则为 `{分支名}/dist/{相对路径}`。上传前会清空该分支在存储中的已有前缀;上传完成后会为当前 `MINIO_BUCKET` 设置**匿名可读对象**(`s3:GetObject`)桶策略,便于 HTTP 直链访问。
44
44
 
@@ -53,20 +53,20 @@ apm init
53
53
  ### 用法示例
54
54
 
55
55
  ```bash
56
- apm publish feat/foo
56
+ apm deploy-frontend feat/foo
57
57
  # 默认上传当前目录下的 ./dist
58
58
 
59
- apm publish feat/foo --dir ./apps/fe/dist
59
+ apm deploy-frontend feat/foo --dir ./apps/fe/dist
60
60
  ```
61
61
 
62
62
  ### 本仓库内联调
63
63
 
64
- 在仓库根目录已配置 **`.apm/.env`** 的前提下,可在 `packages/cli` 下执行(会先切到 monorepo 根再调用 `publish`,以便读到根目录的 `.apm/.env`):
64
+ 在仓库根目录已配置 **`.apm/.env`** 的前提下,可在 `packages/cli` 下执行(会先切到 monorepo 根再调用 `deploy-frontend`,以便读到根目录的 `.apm/.env`):
65
65
 
66
66
  ```bash
67
67
  cd packages/cli
68
68
  rushx build
69
- rushx apm:publish:test
69
+ rushx apm:deploy-frontend:test
70
70
  ```
71
71
 
72
72
  默认将 **`packages/cli/dist`** 上传到 MinIO 前缀 **`cli-publish-test/dist/`**,用于验证 MinIO 连通与上传逻辑。
@@ -75,7 +75,7 @@ rushx apm:publish:test
75
75
 
76
76
  ## 凭证与哪些命令需要登录
77
77
 
78
- 除 **`config`**、**`init`**、**`login`**、**`logout`**、**`update`**、**`ws`**、**`chat`**、**`publish`** 外,其余子命令会在执行前从配置文件读取 **`baseUrl`、`token`、`employeeId`**;未配置完整时会提示先执行 `apm login`。
78
+ 除 **`config`**、**`init`**、**`login`**、**`logout`**、**`update`**、**`ws`**、**`chat`**、**`deploy-frontend`**、**`deploy-backend`** 外,其余子命令会在执行前从配置文件读取 **`baseUrl`、`token`、`employeeId`**;未配置完整时会提示先执行 `apm login`。
79
79
 
80
80
  `apm ws` 可单独用 **`--url`**、**`--token`** 覆盖配置文件,不依赖上述 preAction 注入逻辑。
81
81
 
package/dist/api/cli.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  /** 对应 lpm-server `POST /cli/variables/get` */
2
2
  export type ReqCliVariablesGet = void;
3
3
  export type ResCliVariables = {
4
- deploy: {
4
+ frontendDeploy: {
5
5
  endpoint: string;
6
6
  port: number;
7
7
  useSsl: boolean;
@@ -9,6 +9,22 @@ export type ResCliVariables = {
9
9
  accessKey: string;
10
10
  secretKey: string;
11
11
  };
12
+ backendDeploy: {
13
+ registryHost: string;
14
+ registryUser: string;
15
+ registryPassword: string;
16
+ remoteHost: string;
17
+ remotePort: number;
18
+ remoteProtocol: "https" | "http";
19
+ caPath: string;
20
+ certPath: string;
21
+ keyPath: string;
22
+ remotePullServeraddress: string;
23
+ remotePullUser: string;
24
+ remotePullPassword: string;
25
+ imageRepository: string;
26
+ containerName: string;
27
+ };
12
28
  server: {
13
29
  url: string;
14
30
  wsPort: number;
@@ -41,6 +57,18 @@ export type CliDefectRow = {
41
57
  export type ResCliResourceRequirementDefectsList = {
42
58
  list: CliDefectRow[];
43
59
  };
60
+ /** 对应 lpm-server `POST /cli/resource/requirement/developers/branch-names` */
61
+ export type ReqCliResourceRequirementDevelopersBranchNamesList = {
62
+ id: number;
63
+ };
64
+ export type CliDeveloperBranchNameRow = {
65
+ branchName: string | null;
66
+ /** 工作目录绝对路径(与缺陷列表 `workdir` 一致,用于本地过滤) */
67
+ workdir: string;
68
+ };
69
+ export type ResCliResourceRequirementDevelopersBranchNamesList = {
70
+ list: CliDeveloperBranchNameRow[];
71
+ };
44
72
  /** 对应 lpm-server `POST /cli/resource/requirement` */
45
73
  export type ReqCliResourceRequirementGet = {
46
74
  id: number;
@@ -70,6 +98,34 @@ export type ResCliResourceRequirementCommentSet = {
70
98
  reviewReply: string | null;
71
99
  branchName: string | null;
72
100
  };
101
+ /** 对应 lpm-server `POST /cli/resource/requirement/pull-request`(创建 PR/MR,不合并;标题由服务端根据需求解析) */
102
+ export type ReqCliResourceRequirementPullRequestCreate = {
103
+ id: number;
104
+ };
105
+ export type ResCliResourceRequirementPullRequestCreate = {
106
+ remote: "GITHUB" | "GITEE";
107
+ pullNumber: number;
108
+ htmlUrl: string | null;
109
+ action: "created" | "updated";
110
+ };
111
+ /** 对应 lpm-server `POST /cli/resource/requirement/release`(测试通过:待上线 + 建 PR;`forceMerge` 时再合并) */
112
+ export type ReqCliResourceRequirementRelease = {
113
+ id: number;
114
+ forceMerge?: boolean;
115
+ /** 必填:仅对该分支生效;标记失败时亦须携带(`apm release -b`) */
116
+ branchName: string;
117
+ /** 若填写:仅标记上线失败(FAILED_RELEASE),不执行 PR/合并(须与 branchName 同传) */
118
+ failureReason?: string;
119
+ };
120
+ export type ResCliResourceRequirementRelease = {
121
+ outcome: "released";
122
+ message: string;
123
+ } | {
124
+ outcome: "marked_failed";
125
+ id: number;
126
+ status: "FAILED_RELEASE";
127
+ failedReleaseReason: string | null;
128
+ };
73
129
  /** 对应 lpm-server `POST /cli/resource/requirement/developer/branch-name` */
74
130
  export type ReqCliResourceRequirementDeveloperBranchNameSet = {
75
131
  id: number;
@@ -107,14 +163,22 @@ export type ResCliResourceRequirementTestCasesImport = {
107
163
  status: string;
108
164
  }[];
109
165
  };
110
- /** 对应 lpm-server `POST /cli/resource/requirement/status/pending-test` */
111
- export type ReqCliResourceRequirementPendingTestSet = {
112
- id: number;
166
+ /** 对应 lpm-server `POST /cli/resource/environment`(创建环境,需 Bearer) */
167
+ export type ReqCliResourceEnvironmentCreate = {
168
+ requirementId: number;
169
+ name: string;
170
+ tag?: string;
171
+ type?: "FRONTEND" | "BACKEND";
113
172
  };
114
- export type ResCliResourceRequirementPendingTestSet = {
173
+ export type ResCliResourceEnvironmentCreate = {
115
174
  id: number;
116
- workitemId: string;
117
- status: string;
175
+ name: string;
176
+ tag: string | null;
177
+ type: string;
178
+ creatorId: number | null;
179
+ requirementId: number | null;
180
+ createdAt: Date | string;
181
+ updatedAt: Date | string;
118
182
  };
119
183
  /** 对应 lpm-server `POST /cli/log/report` */
120
184
  export type ReqCliResourceDevelopLogPayloadReport = {
@@ -148,4 +212,17 @@ export type ResCliLogDeveloperStatusSet = {
148
212
  reviewReply: string | null;
149
213
  branchName: string | null;
150
214
  };
215
+ /** 对应 lpm-server `POST /cli/status` */
216
+ export type ReqCliStatusSet = {
217
+ entity: "defect";
218
+ defectId: string;
219
+ } | {
220
+ entity: "requirement";
221
+ requirementId: number;
222
+ };
223
+ export type ResCliStatusSet = {
224
+ entity: "defect" | "requirement";
225
+ id: string | number;
226
+ status: string;
227
+ };
151
228
  //# sourceMappingURL=cli.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/api/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/api/cli.ts"],"names":[],"mappings":"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"}
@@ -13,13 +13,17 @@ declare const api: ApiClient<{
13
13
  readonly variablesGet: import("listpage-http").EndpointConfig<void, import("./cli").ResCliVariables>;
14
14
  readonly resourceRequirementGet: import("listpage-http").EndpointConfig<import("./cli").ReqCliResourceRequirementGet, import("./cli").ResCliResourceRequirementGet>;
15
15
  readonly resourceRequirementDefectsList: import("listpage-http").EndpointConfig<import("./cli").ReqCliResourceRequirementDefectsList, import("./cli").ResCliResourceRequirementDefectsList>;
16
+ readonly resourceRequirementDevelopersBranchNamesList: import("listpage-http").EndpointConfig<import("./cli").ReqCliResourceRequirementDevelopersBranchNamesList, import("./cli").ResCliResourceRequirementDevelopersBranchNamesList>;
16
17
  readonly resourceRequirementCommentSet: import("listpage-http").EndpointConfig<import("./cli").ReqCliResourceRequirementCommentSet, import("./cli").ResCliResourceRequirementCommentSet>;
17
18
  readonly resourceRequirementDeveloperBranchNameSet: import("listpage-http").EndpointConfig<import("./cli").ReqCliResourceRequirementDeveloperBranchNameSet, import("./cli").ResCliResourceRequirementCommentSet>;
19
+ readonly resourceRequirementPullRequestCreate: import("listpage-http").EndpointConfig<import("./cli").ReqCliResourceRequirementPullRequestCreate, import("./cli").ResCliResourceRequirementPullRequestCreate>;
20
+ readonly resourceRequirementRelease: import("listpage-http").EndpointConfig<import("./cli").ReqCliResourceRequirementRelease, import("./cli").ResCliResourceRequirementRelease>;
18
21
  readonly resourceRequirementContentSet: import("listpage-http").EndpointConfig<import("./cli").ReqCliResourceRequirementContentSet, import("./cli").ResCliResourceRequirementContentSet>;
19
22
  readonly resourceRequirementTestCasesImport: import("listpage-http").EndpointConfig<import("./cli").ReqCliResourceRequirementTestCasesImport, import("./cli").ResCliResourceRequirementTestCasesImport>;
20
- readonly resourceRequirementPendingTestSet: import("listpage-http").EndpointConfig<import("./cli").ReqCliResourceRequirementPendingTestSet, import("./cli").ResCliResourceRequirementPendingTestSet>;
23
+ readonly resourceEnvironmentCreate: import("listpage-http").EndpointConfig<import("./cli").ReqCliResourceEnvironmentCreate, import("./cli").ResCliResourceEnvironmentCreate>;
21
24
  readonly resourceDevelopLogPayloadReport: import("listpage-http").EndpointConfig<import("./cli").ReqCliResourceDevelopLogPayloadReport, import("./cli").ResCliResourceDevelopLogPayloadReport>;
22
25
  readonly logDeveloperStatusSet: import("listpage-http").EndpointConfig<import("./cli").ReqCliLogDeveloperStatusSet, import("./cli").ResCliLogDeveloperStatusSet>;
26
+ readonly statusSet: import("listpage-http").EndpointConfig<import("./cli").ReqCliStatusSet, import("./cli").ResCliStatusSet>;
23
27
  };
24
28
  readonly employee: {
25
29
  readonly auth: import("listpage-http").EndpointConfig<import("./cli").ReqCliLoginByEmployee, import("./cli").ResCliLoginByEmployee>;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD,MAAM,MAAM,sBAAsB,GAAG;IACnC,kBAAkB;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAMF,MAAM,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,aAAa,CAAC,CAAC;AAExD,wBAAgB,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,SAAS,CAkB1E;AAID,QAAA,MAAM,GAAG;;;;;;;;;;;;;;;;EAGP,CAAC;AAEH,eAAe,GAAG,CAAC"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGjD,MAAM,MAAM,sBAAsB,GAAG;IACnC,kBAAkB;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAMF,MAAM,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,aAAa,CAAC,CAAC;AAExD,wBAAgB,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,SAAS,CAkB1E;AAID,QAAA,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;EAGP,CAAC;AAEH,eAAe,GAAG,CAAC"}
@@ -2,5 +2,5 @@ export type { ApiClient } from "listpage-http";
2
2
  export { ApiError, ERROR_CODE_NETWORK, RequestTimeoutException, defineEndpoint, } from "listpage-http";
3
3
  export { createApmClient, type ApmClient, type CreateApmClientOptions, } from "./client";
4
4
  export { requestConfig, type RequestConfig } from "./request-config";
5
- export type { CliDefectRow, ReqCliLogDeveloperStatusSet, ReqCliLoginByEmployee, ReqCliResourceDevelopLogPayloadReport, ReqCliResourceRequirementCommentSet, ReqCliResourceRequirementDefectsList, ReqCliResourceRequirementDeveloperBranchNameSet, ReqCliResourceRequirementGet, ReqCliResourceRequirementTestCasesImport, ReqCliVariablesGet, ResCliLoginByEmployee, ResCliLogDeveloperStatusSet, ResCliResourceDevelopLogPayloadReport, ResCliResourceRequirementCommentSet, ResCliResourceRequirementDefectsList, ResCliResourceRequirementDeveloperBranchNameSet, ResCliResourceRequirementGet, ResCliResourceRequirementTestCasesImport, ResCliVariables, } from "./cli";
5
+ export type { CliDefectRow, ReqCliLogDeveloperStatusSet, ReqCliLoginByEmployee, ReqCliResourceDevelopLogPayloadReport, ReqCliResourceRequirementCommentSet, ReqCliResourceRequirementDefectsList, ReqCliResourceRequirementDeveloperBranchNameSet, ReqCliResourceRequirementGet, ReqCliResourceRequirementTestCasesImport, ReqCliStatusSet, ReqCliVariablesGet, ResCliLoginByEmployee, ResCliLogDeveloperStatusSet, ResCliResourceDevelopLogPayloadReport, ResCliResourceRequirementCommentSet, ResCliResourceRequirementDefectsList, ResCliResourceRequirementDeveloperBranchNameSet, ResCliResourceRequirementGet, ResCliResourceRequirementTestCasesImport, ResCliStatusSet, ResCliVariables, } from "./cli";
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EACL,QAAQ,EACR,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,GACf,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,eAAe,EACf,KAAK,SAAS,EACd,KAAK,sBAAsB,GAC5B,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,aAAa,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACrE,YAAY,EACV,YAAY,EACZ,2BAA2B,EAC3B,qBAAqB,EACrB,qCAAqC,EACrC,mCAAmC,EACnC,oCAAoC,EACpC,+CAA+C,EAC/C,4BAA4B,EAC5B,wCAAwC,EACxC,kBAAkB,EAClB,qBAAqB,EACrB,2BAA2B,EAC3B,qCAAqC,EACrC,mCAAmC,EACnC,oCAAoC,EACpC,+CAA+C,EAC/C,4BAA4B,EAC5B,wCAAwC,EACxC,eAAe,GAChB,MAAM,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EACL,QAAQ,EACR,kBAAkB,EAClB,uBAAuB,EACvB,cAAc,GACf,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,eAAe,EACf,KAAK,SAAS,EACd,KAAK,sBAAsB,GAC5B,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,aAAa,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACrE,YAAY,EACV,YAAY,EACZ,2BAA2B,EAC3B,qBAAqB,EACrB,qCAAqC,EACrC,mCAAmC,EACnC,oCAAoC,EACpC,+CAA+C,EAC/C,4BAA4B,EAC5B,wCAAwC,EACxC,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,2BAA2B,EAC3B,qCAAqC,EACrC,mCAAmC,EACnC,oCAAoC,EACpC,+CAA+C,EAC/C,4BAA4B,EAC5B,wCAAwC,EACxC,eAAe,EACf,eAAe,GAChB,MAAM,OAAO,CAAC"}
@@ -1,16 +1,20 @@
1
- import type { ReqCliLogDeveloperStatusSet, ReqCliLoginByEmployee, ReqCliResourceDevelopLogPayloadReport, ReqCliResourceRequirementCommentSet, ReqCliResourceRequirementContentSet, ReqCliResourceRequirementDefectsList, ReqCliResourceRequirementDeveloperBranchNameSet, ReqCliResourceRequirementGet, ReqCliResourceRequirementTestCasesImport, ReqCliResourceRequirementPendingTestSet, ResCliLoginByEmployee, ResCliLogDeveloperStatusSet, ResCliResourceDevelopLogPayloadReport, ResCliResourceRequirementCommentSet, ResCliResourceRequirementContentSet, ResCliResourceRequirementDefectsList, ResCliResourceRequirementGet, ResCliResourceRequirementTestCasesImport, ResCliResourceRequirementPendingTestSet, ResCliVariables } from "./cli";
1
+ import type { ReqCliLogDeveloperStatusSet, ReqCliLoginByEmployee, ReqCliResourceDevelopLogPayloadReport, ReqCliResourceRequirementCommentSet, ReqCliResourceRequirementContentSet, ReqCliResourceRequirementDefectsList, ReqCliResourceRequirementDevelopersBranchNamesList, ReqCliResourceRequirementDeveloperBranchNameSet, ReqCliResourceRequirementPullRequestCreate, ReqCliResourceRequirementRelease, ReqCliResourceRequirementGet, ReqCliResourceEnvironmentCreate, ReqCliResourceRequirementTestCasesImport, ReqCliStatusSet, ResCliLoginByEmployee, ResCliLogDeveloperStatusSet, ResCliResourceDevelopLogPayloadReport, ResCliResourceRequirementCommentSet, ResCliResourceRequirementContentSet, ResCliResourceRequirementDefectsList, ResCliResourceRequirementDevelopersBranchNamesList, ResCliResourceRequirementPullRequestCreate, ResCliResourceRequirementRelease, ResCliResourceRequirementGet, ResCliResourceEnvironmentCreate, ResCliResourceRequirementTestCasesImport, ResCliStatusSet, ResCliVariables } from "./cli";
2
2
  export declare const requestConfig: {
3
3
  readonly cli: {
4
4
  readonly variablesGet: import("listpage-http").EndpointConfig<void, ResCliVariables>;
5
5
  readonly resourceRequirementGet: import("listpage-http").EndpointConfig<ReqCliResourceRequirementGet, ResCliResourceRequirementGet>;
6
6
  readonly resourceRequirementDefectsList: import("listpage-http").EndpointConfig<ReqCliResourceRequirementDefectsList, ResCliResourceRequirementDefectsList>;
7
+ readonly resourceRequirementDevelopersBranchNamesList: import("listpage-http").EndpointConfig<ReqCliResourceRequirementDevelopersBranchNamesList, ResCliResourceRequirementDevelopersBranchNamesList>;
7
8
  readonly resourceRequirementCommentSet: import("listpage-http").EndpointConfig<ReqCliResourceRequirementCommentSet, ResCliResourceRequirementCommentSet>;
8
9
  readonly resourceRequirementDeveloperBranchNameSet: import("listpage-http").EndpointConfig<ReqCliResourceRequirementDeveloperBranchNameSet, ResCliResourceRequirementCommentSet>;
10
+ readonly resourceRequirementPullRequestCreate: import("listpage-http").EndpointConfig<ReqCliResourceRequirementPullRequestCreate, ResCliResourceRequirementPullRequestCreate>;
11
+ readonly resourceRequirementRelease: import("listpage-http").EndpointConfig<ReqCliResourceRequirementRelease, ResCliResourceRequirementRelease>;
9
12
  readonly resourceRequirementContentSet: import("listpage-http").EndpointConfig<ReqCliResourceRequirementContentSet, ResCliResourceRequirementContentSet>;
10
13
  readonly resourceRequirementTestCasesImport: import("listpage-http").EndpointConfig<ReqCliResourceRequirementTestCasesImport, ResCliResourceRequirementTestCasesImport>;
11
- readonly resourceRequirementPendingTestSet: import("listpage-http").EndpointConfig<ReqCliResourceRequirementPendingTestSet, ResCliResourceRequirementPendingTestSet>;
14
+ readonly resourceEnvironmentCreate: import("listpage-http").EndpointConfig<ReqCliResourceEnvironmentCreate, ResCliResourceEnvironmentCreate>;
12
15
  readonly resourceDevelopLogPayloadReport: import("listpage-http").EndpointConfig<ReqCliResourceDevelopLogPayloadReport, ResCliResourceDevelopLogPayloadReport>;
13
16
  readonly logDeveloperStatusSet: import("listpage-http").EndpointConfig<ReqCliLogDeveloperStatusSet, ResCliLogDeveloperStatusSet>;
17
+ readonly statusSet: import("listpage-http").EndpointConfig<ReqCliStatusSet, ResCliStatusSet>;
14
18
  };
15
19
  readonly employee: {
16
20
  /** 登录等鉴权(路径落在 `/cli/employee/auth`,便于与业务接口区分) */
@@ -1 +1 @@
1
- {"version":3,"file":"request-config.d.ts","sourceRoot":"","sources":["../../src/api/request-config.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,2BAA2B,EAC3B,qBAAqB,EACrB,qCAAqC,EACrC,mCAAmC,EACnC,mCAAmC,EACnC,oCAAoC,EACpC,+CAA+C,EAC/C,4BAA4B,EAC5B,wCAAwC,EACxC,uCAAuC,EAEvC,qBAAqB,EACrB,2BAA2B,EAC3B,qCAAqC,EACrC,mCAAmC,EACnC,mCAAmC,EACnC,oCAAoC,EAEpC,4BAA4B,EAC5B,wCAAwC,EACxC,uCAAuC,EACvC,eAAe,EAChB,MAAM,OAAO,CAAC;AAEf,eAAO,MAAM,aAAa;;;;;;;;;;;;;;QAuEtB,iDAAiD;;;CAO3C,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC"}
1
+ {"version":3,"file":"request-config.d.ts","sourceRoot":"","sources":["../../src/api/request-config.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,2BAA2B,EAC3B,qBAAqB,EACrB,qCAAqC,EACrC,mCAAmC,EACnC,mCAAmC,EACnC,oCAAoC,EACpC,kDAAkD,EAClD,+CAA+C,EAC/C,0CAA0C,EAC1C,gCAAgC,EAChC,4BAA4B,EAC5B,+BAA+B,EAC/B,wCAAwC,EAExC,eAAe,EACf,qBAAqB,EACrB,2BAA2B,EAC3B,qCAAqC,EACrC,mCAAmC,EACnC,mCAAmC,EACnC,oCAAoC,EACpC,kDAAkD,EAElD,0CAA0C,EAC1C,gCAAgC,EAChC,4BAA4B,EAC5B,+BAA+B,EAC/B,wCAAwC,EACxC,eAAe,EACf,eAAe,EAChB,MAAM,OAAO,CAAC;AAEf,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;QAgGtB,iDAAiD;;;CAO3C,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC"}
@@ -16,6 +16,10 @@ exports.requestConfig = {
16
16
  method: "POST",
17
17
  path: "/cli/resource/requirement/defects",
18
18
  }),
19
+ resourceRequirementDevelopersBranchNamesList: (0, listpage_http_1.defineEndpoint)({
20
+ method: "POST",
21
+ path: "/cli/resource/requirement/developers/branch-names",
22
+ }),
19
23
  resourceRequirementCommentSet: (0, listpage_http_1.defineEndpoint)({
20
24
  method: "POST",
21
25
  path: "/cli/resource/requirement/comment",
@@ -24,6 +28,14 @@ exports.requestConfig = {
24
28
  method: "POST",
25
29
  path: "/cli/resource/requirement/developer/branch-name",
26
30
  }),
31
+ resourceRequirementPullRequestCreate: (0, listpage_http_1.defineEndpoint)({
32
+ method: "POST",
33
+ path: "/cli/resource/requirement/pull-request",
34
+ }),
35
+ resourceRequirementRelease: (0, listpage_http_1.defineEndpoint)({
36
+ method: "POST",
37
+ path: "/cli/resource/requirement/release",
38
+ }),
27
39
  resourceRequirementContentSet: (0, listpage_http_1.defineEndpoint)({
28
40
  method: "POST",
29
41
  path: "/cli/resource/requirement/content",
@@ -32,9 +44,9 @@ exports.requestConfig = {
32
44
  method: "POST",
33
45
  path: "/cli/resource/requirement/test-cases/import",
34
46
  }),
35
- resourceRequirementPendingTestSet: (0, listpage_http_1.defineEndpoint)({
47
+ resourceEnvironmentCreate: (0, listpage_http_1.defineEndpoint)({
36
48
  method: "POST",
37
- path: "/cli/resource/requirement/status/pending-test",
49
+ path: "/cli/resource/environment",
38
50
  }),
39
51
  resourceDevelopLogPayloadReport: (0, listpage_http_1.defineEndpoint)({
40
52
  method: "POST",
@@ -44,6 +56,10 @@ exports.requestConfig = {
44
56
  method: "POST",
45
57
  path: "/cli/status/developer",
46
58
  }),
59
+ statusSet: (0, listpage_http_1.defineEndpoint)({
60
+ method: "POST",
61
+ path: "/cli/status",
62
+ }),
47
63
  },
48
64
  employee: {
49
65
  /** 登录等鉴权(路径落在 `/cli/employee/auth`,便于与业务接口区分) */
@@ -1 +1 @@
1
- {"version":3,"file":"request-config.js","sourceRoot":"","sources":["../../src/api/request-config.ts"],"names":[],"mappings":";;;AAAA,iDAA+C;AA2BlC,QAAA,aAAa,GAAG;IAC3B,GAAG,EAAE;QACH,YAAY,EAAE,IAAA,8BAAc,EAAsC;YAChE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,oBAAoB;SAC3B,CAAC;QACF,sBAAsB,EAAE,IAAA,8BAAc,EAGpC;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,2BAA2B;SAClC,CAAC;QACF,8BAA8B,EAAE,IAAA,8BAAc,EAG5C;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,mCAAmC;SAC1C,CAAC;QACF,6BAA6B,EAAE,IAAA,8BAAc,EAG3C;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,mCAAmC;SAC1C,CAAC;QACF,yCAAyC,EAAE,IAAA,8BAAc,EAGvD;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,iDAAiD;SACxD,CAAC;QACF,6BAA6B,EAAE,IAAA,8BAAc,EAG3C;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,mCAAmC;SAC1C,CAAC;QACF,kCAAkC,EAAE,IAAA,8BAAc,EAGhD;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,6CAA6C;SACpD,CAAC;QACF,iCAAiC,EAAE,IAAA,8BAAc,EAG/C;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,+CAA+C;SACtD,CAAC;QACF,+BAA+B,EAAE,IAAA,8BAAc,EAG7C;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,iBAAiB;SACxB,CAAC;QACF,qBAAqB,EAAE,IAAA,8BAAc,EAGnC;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,uBAAuB;SAC9B,CAAC;KACH;IACD,QAAQ,EAAE;QACR,iDAAiD;QACjD,IAAI,EAAE,IAAA,8BAAc,EAA+C;YACjE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,oBAAoB;YAC1B,YAAY,EAAE,KAAK;SACpB,CAAC;KACH;CACO,CAAC"}
1
+ {"version":3,"file":"request-config.js","sourceRoot":"","sources":["../../src/api/request-config.ts"],"names":[],"mappings":";;;AAAA,iDAA+C;AAmClC,QAAA,aAAa,GAAG;IAC3B,GAAG,EAAE;QACH,YAAY,EAAE,IAAA,8BAAc,EAAsC;YAChE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,oBAAoB;SAC3B,CAAC;QACF,sBAAsB,EAAE,IAAA,8BAAc,EAGpC;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,2BAA2B;SAClC,CAAC;QACF,8BAA8B,EAAE,IAAA,8BAAc,EAG5C;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,mCAAmC;SAC1C,CAAC;QACF,4CAA4C,EAAE,IAAA,8BAAc,EAG1D;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,mDAAmD;SAC1D,CAAC;QACF,6BAA6B,EAAE,IAAA,8BAAc,EAG3C;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,mCAAmC;SAC1C,CAAC;QACF,yCAAyC,EAAE,IAAA,8BAAc,EAGvD;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,iDAAiD;SACxD,CAAC;QACF,oCAAoC,EAAE,IAAA,8BAAc,EAGlD;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,wCAAwC;SAC/C,CAAC;QACF,0BAA0B,EAAE,IAAA,8BAAc,EAGxC;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,mCAAmC;SAC1C,CAAC;QACF,6BAA6B,EAAE,IAAA,8BAAc,EAG3C;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,mCAAmC;SAC1C,CAAC;QACF,kCAAkC,EAAE,IAAA,8BAAc,EAGhD;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,6CAA6C;SACpD,CAAC;QACF,yBAAyB,EAAE,IAAA,8BAAc,EAGvC;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,2BAA2B;SAClC,CAAC;QACF,+BAA+B,EAAE,IAAA,8BAAc,EAG7C;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,iBAAiB;SACxB,CAAC;QACF,qBAAqB,EAAE,IAAA,8BAAc,EAGnC;YACA,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,uBAAuB;SAC9B,CAAC;QACF,SAAS,EAAE,IAAA,8BAAc,EAAmC;YAC1D,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,aAAa;SACpB,CAAC;KACH;IACD,QAAQ,EAAE;QACR,iDAAiD;QACjD,IAAI,EAAE,IAAA,8BAAc,EAA+C;YACjE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,oBAAoB;YAC1B,YAAY,EAAE,KAAK;SACpB,CAAC;KACH;CACO,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { Command } from "commander";
2
+ /**
3
+ * 后端镜像部署:本地 docker build → 推送阿里云私有仓库 → 远程 docker pull。
4
+ * 与 deploy-frontend 一致:位置参数 name 为分支名(解析末段),作镜像 tag;--env 为环境标签。
5
+ */
6
+ export declare function registerDeployBackendCommands(program: Command): void;
7
+ //# sourceMappingURL=deploy-backend.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deploy-backend.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/deploy-backend.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiBzC;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAgGpE"}
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.registerDeployBackendCommands = registerDeployBackendCommands;
7
+ const node_path_1 = __importDefault(require("node:path"));
8
+ const client_1 = __importDefault(require("../../api/client"));
9
+ const backend_deploy_1 = require("../../core/backend-deploy");
10
+ const image_tag_1 = require("../../core/backend-deploy/image-tag");
11
+ const branch_name_1 = require("../../core/branch-name");
12
+ const apm_config_1 = require("../../core/apm-config");
13
+ const parse_1 = require("../utils/parse");
14
+ /**
15
+ * 后端镜像部署:本地 docker build → 推送阿里云私有仓库 → 远程 docker pull。
16
+ * 与 deploy-frontend 一致:位置参数 name 为分支名(解析末段),作镜像 tag;--env 为环境标签。
17
+ */
18
+ function registerDeployBackendCommands(program) {
19
+ program
20
+ .command("deploy-backend")
21
+ .description("使用本地 Docker 构建后端镜像、推送到私有 Registry,并在远程 Docker 主机上拉取镜像(连接信息见 apm.config.json 的 backendDeploy)")
22
+ .argument("<name>", "名称,英文下划线分割,作为镜像 tag")
23
+ .option("--env <env_tag>", "环境标签", "测试环境,正式环境")
24
+ .requiredOption("--dir <path>", "构建上下文目录(相对当前工作目录或绝对路径);约定使用此目录下的 Dockerfile")
25
+ .option("--requirement-id <requirement_id>", "需求 ID(部署成功后登记后端环境,与 deploy-frontend 一致)", parse_1.parsePositiveInt)
26
+ .action(async (name, opts) => {
27
+ const branchName = (0, branch_name_1.normalizeBranchName)(name);
28
+ if (!branchName) {
29
+ console.error("请传入有效的分支名(第一个位置参数 <name>)");
30
+ process.exit(1);
31
+ }
32
+ const cleanBranch = (0, branch_name_1.sanitizeBranchName)(branchName);
33
+ (0, image_tag_1.assertDeployImageTag)(cleanBranch, "镜像 tag(由 <name> 解析得到的分支名片段)");
34
+ const cfg = (0, apm_config_1.loadApmConfig)();
35
+ const fromApm = (0, apm_config_1.resolveBackendDeployFromApmConfig)(cfg);
36
+ const imageRef = `${fromApm.imageRepository}:${cleanBranch}`;
37
+ const dockerfilePath = node_path_1.default.join(opts.dir, "Dockerfile");
38
+ const params = {
39
+ dockerfilePath,
40
+ contextPath: opts.dir,
41
+ imageRef,
42
+ registry: {
43
+ registryHost: fromApm.registry.registryHost,
44
+ username: fromApm.registry.username,
45
+ password: fromApm.registry.password,
46
+ },
47
+ remoteDocker: {
48
+ host: fromApm.remoteDocker.host,
49
+ port: fromApm.remoteDocker.port,
50
+ protocol: fromApm.remoteDocker.protocol,
51
+ caPath: fromApm.remoteDocker.caPath,
52
+ certPath: fromApm.remoteDocker.certPath,
53
+ keyPath: fromApm.remoteDocker.keyPath,
54
+ },
55
+ remotePullAuth: {
56
+ username: fromApm.remotePullAuth.username,
57
+ password: fromApm.remotePullAuth.password,
58
+ serveraddress: fromApm.remotePullAuth.serveraddress,
59
+ },
60
+ };
61
+ const workflow = new backend_deploy_1.BackendDeployWorkflow(params);
62
+ const result = await workflow.run(process.cwd());
63
+ const envTag = (0, branch_name_1.resolveEnvTag)(opts.env ?? "测试环境");
64
+ if (opts.requirementId) {
65
+ await client_1.default.cli.resourceEnvironmentCreate({
66
+ requirementId: opts.requirementId,
67
+ name: cleanBranch,
68
+ tag: envTag,
69
+ type: "BACKEND",
70
+ });
71
+ }
72
+ console.log(JSON.stringify({
73
+ ...result,
74
+ imageTag: cleanBranch,
75
+ containerName: fromApm.containerName,
76
+ imageRepository: fromApm.imageRepository,
77
+ envTag,
78
+ }, null, 2));
79
+ });
80
+ }
81
+ //# sourceMappingURL=deploy-backend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deploy-backend.js","sourceRoot":"","sources":["../../../src/cli/commands/deploy-backend.ts"],"names":[],"mappings":";;;;;AAsBA,sEAgGC;AAtHD,0DAA6B;AAG7B,8DAAmC;AACnC,8DAAkE;AAClE,mEAA2E;AAE3E,wDAIgC;AAChC,sDAG+B;AAC/B,0CAAkD;AAElD;;;GAGG;AACH,SAAgB,6BAA6B,CAAC,OAAgB;IAC5D,OAAO;SACJ,OAAO,CAAC,gBAAgB,CAAC;SACzB,WAAW,CACV,8FAA8F,CAC/F;SACA,QAAQ,CAAC,QAAQ,EAAE,qBAAqB,CAAC;SACzC,MAAM,CAAC,iBAAiB,EAAE,MAAM,EAAE,WAAW,CAAC;SAC9C,cAAc,CACb,cAAc,EACd,6CAA6C,CAC9C;SACA,MAAM,CACL,mCAAmC,EACnC,yCAAyC,EACzC,wBAAgB,CACjB;SACA,MAAM,CACL,KAAK,EACH,IAAY,EACZ,IAIC,EACD,EAAE;QACF,MAAM,UAAU,GAAG,IAAA,iCAAmB,EAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,MAAM,WAAW,GAAG,IAAA,gCAAkB,EAAC,UAAU,CAAC,CAAC;QACnD,IAAA,gCAAoB,EAClB,WAAW,EACX,6BAA6B,CAC9B,CAAC;QAEF,MAAM,GAAG,GAAG,IAAA,0BAAa,GAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,IAAA,8CAAiC,EAAC,GAAG,CAAC,CAAC;QAEvD,MAAM,QAAQ,GAAG,GAAG,OAAO,CAAC,eAAe,IAAI,WAAW,EAAE,CAAC;QAE7D,MAAM,cAAc,GAAG,mBAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAEzD,MAAM,MAAM,GAAwB;YAClC,cAAc;YACd,WAAW,EAAE,IAAI,CAAC,GAAG;YACrB,QAAQ;YACR,QAAQ,EAAE;gBACR,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAC3C,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBACnC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,QAAQ;aACpC;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,IAAI;gBAC/B,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,IAAI;gBAC/B,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC,QAAQ;gBACvC,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,MAAM;gBACnC,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC,QAAQ;gBACvC,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,OAAO;aACtC;YACD,cAAc,EAAE;gBACd,QAAQ,EAAE,OAAO,CAAC,cAAc,CAAC,QAAQ;gBACzC,QAAQ,EAAE,OAAO,CAAC,cAAc,CAAC,QAAQ;gBACzC,aAAa,EAAE,OAAO,CAAC,cAAc,CAAC,aAAa;aACpD;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,IAAI,sCAAqB,CAAC,MAAM,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAEjD,MAAM,MAAM,GAAG,IAAA,2BAAa,EAAC,IAAI,CAAC,GAAG,IAAI,MAAM,CAAC,CAAC;QACjD,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,MAAM,gBAAG,CAAC,GAAG,CAAC,yBAAyB,CAAC;gBACtC,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,IAAI,EAAE,WAAW;gBACjB,GAAG,EAAE,MAAM;gBACX,IAAI,EAAE,SAAS;aAChB,CAAC,CAAC;QACL,CAAC;QAED,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,SAAS,CACZ;YACE,GAAG,MAAM;YACT,QAAQ,EAAE,WAAW;YACrB,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,MAAM;SACP,EACD,IAAI,EACJ,CAAC,CACF,CACF,CAAC;IACJ,CAAC,CACF,CAAC;AACN,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Command } from "commander";
2
+ export declare function registerDeployFrontendCommands(program: Command): void;
3
+ //# sourceMappingURL=deploy-frontend.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deploy-frontend.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/deploy-frontend.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAqBzC,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAiIrE"}
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.registerDeployFrontendCommands = registerDeployFrontendCommands;
7
+ const node_path_1 = __importDefault(require("node:path"));
8
+ const client_1 = __importDefault(require("../../api/client"));
9
+ const branch_name_1 = require("../../core/branch-name");
10
+ const apm_config_1 = require("../../core/apm-config");
11
+ const minio_1 = require("../../core/minio");
12
+ const parse_1 = require("../utils/parse");
13
+ function registerDeployFrontendCommands(program) {
14
+ program
15
+ .command("deploy-frontend")
16
+ .description("递归上传前端产物目录到 MinIO,并在成功后为该桶设置匿名可读策略(仅读取当前目录下 `.apm/.env` 中的 MINIO_*,已有环境变量优先)")
17
+ .argument("<name>", "分支名,作为对象键顶层目录")
18
+ .option("--env <env_tag>", "环境标签", "测试环境,正式环境")
19
+ .option("--dir <dir>", "产物目录(默认 dist)", "dist")
20
+ .option("--requirement-id <requirement_id>", "需求 ID(上传成功后登记前端环境)", parse_1.parsePositiveInt)
21
+ .option("--max-file-size-mb <mb>", `单文件大小上限,默认 ${minio_1.DEFAULT_MAX_FILE_SIZE_MB}`, (v) => Number.parseInt(String(v), 10))
22
+ .action(async (name, opts) => {
23
+ const { frontendDeploy: settings } = (0, apm_config_1.loadApmConfig)();
24
+ const minio = new minio_1.MinioClient({
25
+ endPoint: settings.endpoint,
26
+ port: settings.port,
27
+ useSSL: settings.useSsl,
28
+ accessKey: settings.accessKey,
29
+ secretKey: settings.secretKey,
30
+ });
31
+ const bucket = settings.bucket;
32
+ const branchName = (0, branch_name_1.normalizeBranchName)(name);
33
+ if (!branchName) {
34
+ console.error("请传入有效的分支名(第一个位置参数 <name>)");
35
+ process.exit(1);
36
+ }
37
+ const cleanBranch = (0, branch_name_1.sanitizeBranchName)(branchName);
38
+ const root = node_path_1.default.resolve(process.cwd(), opts.dir || "dist");
39
+ if (!(await (0, minio_1.isDirectoryPath)(root))) {
40
+ console.error(`产物目录不存在:${root}`);
41
+ process.exit(1);
42
+ }
43
+ const maxBytes = Math.max(1, Number.isFinite(opts.maxFileSizeMb)
44
+ ? Math.floor((opts.maxFileSizeMb ?? minio_1.DEFAULT_MAX_FILE_SIZE_MB) * 1024 * 1024)
45
+ : minio_1.DEFAULT_MAX_FILE_SIZE_MB * 1024 * 1024);
46
+ const files = await (0, minio_1.collectFiles)(root);
47
+ if (files.length === 0) {
48
+ console.error(`目录为空:${root}`);
49
+ process.exit(1);
50
+ }
51
+ let uploaded = 0;
52
+ let totalBytes = 0;
53
+ console.error(`开始直连 MinIO 上传,共 ${files.length} 个文件…`);
54
+ await minio.ensureBucket(bucket);
55
+ // 只清理与上传目录对应的对象前缀,避免误删同一分支下其它目录内容
56
+ await minio.deleteObjectsByPrefix(bucket, `${cleanBranch}/dist/`);
57
+ for (const f of files) {
58
+ if (f.size > maxBytes) {
59
+ console.error(`文件过大,已拒绝:${f.relativePath}(${(0, minio_1.toMB)(f.size)}MB > ${(0, minio_1.toMB)(maxBytes)}MB)`);
60
+ process.exit(1);
61
+ }
62
+ const buf = await (0, minio_1.readArtifactFile)(f.absPath);
63
+ const cleanRel = (0, minio_1.sanitizeRelativePath)(f.relativePath);
64
+ const objectKey = (0, minio_1.toArtifactObjectKey)({
65
+ branchName: cleanBranch,
66
+ relativePath: cleanRel,
67
+ });
68
+ const mimeType = (0, minio_1.detectMimeType)(f.relativePath).trim().toLowerCase() ||
69
+ "application/octet-stream";
70
+ await minio.putObject(bucket, objectKey, buf, {
71
+ "Content-Type": mimeType,
72
+ });
73
+ uploaded += 1;
74
+ totalBytes += buf.length;
75
+ console.error(`[${uploaded}/${files.length}] ${f.relativePath} -> ${objectKey}`);
76
+ }
77
+ console.error("正在设置桶策略(匿名可读对象,便于 HTTP 直链)…");
78
+ await minio.setBucketPublicRead(bucket);
79
+ console.log(JSON.stringify({
80
+ ok: true,
81
+ branchName: cleanBranch,
82
+ bucket,
83
+ fileCount: uploaded,
84
+ totalBytes,
85
+ bucketPublicRead: true,
86
+ }, null, 2));
87
+ const envTag = (0, branch_name_1.resolveEnvTag)(opts.env ?? "测试环境");
88
+ if (opts.requirementId) {
89
+ await client_1.default.cli.resourceEnvironmentCreate({
90
+ requirementId: opts.requirementId,
91
+ name: cleanBranch,
92
+ tag: envTag,
93
+ type: "FRONTEND",
94
+ });
95
+ }
96
+ });
97
+ }
98
+ //# sourceMappingURL=deploy-frontend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deploy-frontend.js","sourceRoot":"","sources":["../../../src/cli/commands/deploy-frontend.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/get.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA8CzC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAgG1D"}
1
+ {"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/get.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAyCzC,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA8H1D"}