@gbits-jszx/gw-cli 2026.9.11-19 → 2026.911.3
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/README.md
CHANGED
|
@@ -8,34 +8,34 @@ GW-Framework 的跨平台构建、运行和交付工具。公网 registry 为 `h
|
|
|
8
8
|
|
|
9
9
|
## 日期版本号
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
CLI 显示版本使用 `yyyy.MM.dd.id`,例如 `2026.09.10.1` 表示 2026 年 9 月 10 日第 1 次打包。`npm package`、`npm publish` 和 `publish npm` 默认 `--version auto`,按执行机器的本地日期生成,序号从 1 开始、同日递增、跨日重置。也可用 `--version 2026.09.10.7` 指定版本,日期须有效,序号须为不带前导零的正整数。
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
npm 的 SemVer 不接受四段数字或带前导零的月日,所以 npm 包版本采用 `yyyy.(MM×100+dd).id`。例如:
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
| CLI 显示 / `--version` 输入 | npm 包版本 / 安装版本 |
|
|
16
|
+
|---|---|
|
|
17
|
+
| `2026.01.02.1` | `2026.102.1` |
|
|
18
|
+
| `2026.09.10.7` | `2026.910.7` |
|
|
19
|
+
| `2026.12.31.12` | `2026.1231.12` |
|
|
16
20
|
|
|
17
|
-
|
|
21
|
+
这些是可按日期和序号排序的正式版本,可正常使用 `@latest`。包内 `package.json` 的 `version` 保存 npm 版本,`gwVersion` 保存四段显示版本;Windows/Linux 二进制编译时写入同一个显示版本,`gw-cli --version` 不会回退到源码包的旧版本。
|
|
18
22
|
|
|
19
|
-
序号记录位于
|
|
23
|
+
序号记录位于 `.gw-build/npm/versions/`,打包开始即占用;失败和 dry-run 也占用一次,避免自动重用版本。并发自动打包不会重复分配;手动指定版本可用于重打包或在本地验证后发布。每份仓库独立编号,不查询 registry;清理记录、换机器或 CI 并行发布时,需统一分配并显式传入未发布的版本。`publish npm` 会重新编译源码,要沿用已验证的版本号应显式指定 `--version`。
|
|
20
24
|
|
|
21
25
|
## 镜像 tag
|
|
22
26
|
|
|
23
|
-
`image build` 默认 `--tag auto
|
|
27
|
+
`image build` 默认 `--tag auto`,使用同样的 `yyyy.MM.dd.id` 规则,例如 `2026.09.10.1`。Docker 支持四段 tag,无需 npm 的三段映射。日期按执行 CLI 的机器本地时间计算,序号从 1 起,同日递增、跨日重置。参数优先级为 `--tag` > `GW_IMAGE_TAG` > `auto`;显式 tag 必须是有效日期和不带前导零的正整数序号,不能用 `latest`、`0.2.0-dev` 等旧格式构建。
|
|
24
28
|
|
|
25
|
-
镜像与 npm
|
|
29
|
+
镜像与 npm 独立计数,镜像记录位于 `.gw-build/image/versions/`。开始构建时即占号,失败也保留;同一份仓库并发自动构建不会重复编号。显式 tag 可用于本地重建;不查询 Harbor,同一仓库的不同镜像 repository 共用镜像序号。清理记录、换机器或 CI 多节点构建时,应统一分配并显式传入未发布的 tag,不能覆盖已发布镜像。
|
|
26
30
|
|
|
27
31
|
```powershell
|
|
28
32
|
# 自动编号,输出 Docker 构建日志及最终完整镜像名
|
|
29
33
|
npx -y --prefer-online @gbits-jszx/gw-cli@latest image build
|
|
30
|
-
#
|
|
31
|
-
npx -y --prefer-online @gbits-jszx/gw-cli@latest image push
|
|
34
|
+
# 推送时替换为上一步实际输出的 tag,不会生成新编号或重新构建
|
|
35
|
+
npx -y --prefer-online @gbits-jszx/gw-cli@latest image push --tag 2026.09.10.1
|
|
32
36
|
```
|
|
33
37
|
|
|
34
|
-
`image push` / `publish image`
|
|
35
|
-
|
|
36
|
-
## Chart 版本
|
|
37
|
-
|
|
38
|
-
`chart package` 默认生成与镜像一致的 `yyyy.M.d-id`,例如 `2026.9.10-1`;Chart metadata、归档名和 Harbor OCI tag 不再二次映射或添加 project-id 前缀。`chart push` 默认复用 `projects.yaml` 中尚未发布且文件仍存在的精确归档;没有可复用包时自动分配下一版本、打包并推送。旧的 `{project-id}-yyyy.MM.dd.id`、`yyyy.MM.dd.id` 和合法 SemVer 仍可显式用于重建或回滚。
|
|
38
|
+
`image push` / `publish image` 必须通过 `--tag` 或 `GW_IMAGE_TAG` 指定已构建的 tag,不接受空值或 `auto`;为兼容已有本地镜像,推送仍接受旧 tag 格式。构建结束会输出可沿用的推送命令。以上行为在源码修改发布后才进入 npm `@latest`,发布前用 `go run ./tools/cli image build` 验证。
|
|
39
39
|
|
|
40
40
|
## 使用
|
|
41
41
|
|
|
@@ -66,9 +66,9 @@ npx -y --prefer-online @gbits-jszx/gw-cli@latest k3s init
|
|
|
66
66
|
首次执行任何命令(含帮助、版本、doctor、dry-run)均检查用户配置;不存在或缺少 `project-id` 时引导填写项目代号,Harbor 地址与项目分别默认 `szharbor.g-bits.com`、`jszx-infra`,提示默认值可回车采用。旧配置中的发布凭据保留。镜像和 Chart 仓库末段统一为 `{project-id}`,Chart 打包也使用该包名。CI 需预先准备含 `project-id` 的配置。见 [首次配置说明](../../../configs/README.md)。
|
|
67
67
|
|
|
68
68
|
```powershell
|
|
69
|
-
npx -y --prefer-online @gbits-jszx/gw-cli@latest publish npm --version 2026.
|
|
70
|
-
npx -y --prefer-online @gbits-jszx/gw-cli@latest publish image
|
|
71
|
-
npx -y --prefer-online @gbits-jszx/gw-cli@latest publish chart
|
|
69
|
+
npx -y --prefer-online @gbits-jszx/gw-cli@latest publish npm --version 2026.09.10.1
|
|
70
|
+
npx -y --prefer-online @gbits-jszx/gw-cli@latest publish image --tag 2026.09.10.1
|
|
71
|
+
npx -y --prefer-online @gbits-jszx/gw-cli@latest publish chart --version 0.2.1
|
|
72
72
|
```
|
|
73
73
|
|
|
74
74
|
缺少 npm Token 或 Harbor Robot 账号/密码时,CLI 会询问并自动保存到 `~/jszx-infra/.gw-cli/config.yaml`;可用 `GW_CLI_CONFIG` 覆盖位置。已有配置不重复询问。命令参数、`NODE_AUTH_TOKEN` / `GW_HARBOR_USERNAME` / `GW_HARBOR_PASSWORD` 优先于用户配置。
|
|
@@ -83,13 +83,13 @@ Token 和密码在终端中不回显。配置文件保存明文凭据,Unix 下
|
|
|
83
83
|
# 自动使用当天序号,终端会打印版本和文件名
|
|
84
84
|
go run ./tools/cli npm package
|
|
85
85
|
# 或显式指定版本
|
|
86
|
-
go run ./tools/cli npm package --version 2026.
|
|
87
|
-
npx -y --package ./.gw-build/npm/gbits-jszx-gw-cli-2026.
|
|
88
|
-
npx -y --package ./.gw-build/npm/gbits-jszx-gw-cli-2026.
|
|
86
|
+
go run ./tools/cli npm package --version 2026.09.10.1
|
|
87
|
+
npx -y --package ./.gw-build/npm/gbits-jszx-gw-cli-2026.910.1.tgz gw-cli --version
|
|
88
|
+
npx -y --package ./.gw-build/npm/gbits-jszx-gw-cli-2026.910.1.tgz gw-cli build all
|
|
89
89
|
# 只检查发布包,不上传、不询问 Token
|
|
90
90
|
go run ./tools/cli publish npm --dry-run
|
|
91
91
|
# 真正发布:输入具备 @gbits-jszx/gw-cli 发布权限的 npm Token
|
|
92
|
-
go run ./tools/cli publish npm --version 2026.
|
|
92
|
+
go run ./tools/cli publish npm --version 2026.09.10.1
|
|
93
93
|
```
|
|
94
94
|
|
|
95
95
|
发布后的版本号不可复用。这里的 `gw-cli` 是包内命令名,公网下载始终使用 scoped 包 `@gbits-jszx/gw-cli`。
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -9,12 +9,12 @@
|
|
|
9
9
|
"files": [
|
|
10
10
|
"bin"
|
|
11
11
|
],
|
|
12
|
-
"gwVersion": "2026.
|
|
12
|
+
"gwVersion": "2026.09.11.3",
|
|
13
13
|
"license": "MIT",
|
|
14
14
|
"name": "@gbits-jszx/gw-cli",
|
|
15
15
|
"publishConfig": {
|
|
16
16
|
"access": "public",
|
|
17
17
|
"registry": "https://registry.npmjs.org/"
|
|
18
18
|
},
|
|
19
|
-
"version": "2026.
|
|
19
|
+
"version": "2026.911.3"
|
|
20
20
|
}
|