long-git-cli 1.0.12 → 1.0.15

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 (75) hide show
  1. package/README.md +148 -0
  2. package/dist/commands/config.d.ts +9 -0
  3. package/dist/commands/config.d.ts.map +1 -0
  4. package/dist/commands/config.js +33 -0
  5. package/dist/commands/config.js.map +1 -0
  6. package/dist/commands/deploy.d.ts +15 -0
  7. package/dist/commands/deploy.d.ts.map +1 -0
  8. package/dist/commands/deploy.js +413 -0
  9. package/dist/commands/deploy.js.map +1 -0
  10. package/dist/commands/tag.d.ts.map +1 -1
  11. package/dist/commands/tag.js +9 -7
  12. package/dist/commands/tag.js.map +1 -1
  13. package/dist/devops/api/bitbucket-client.d.ts +101 -0
  14. package/dist/devops/api/bitbucket-client.d.ts.map +1 -0
  15. package/dist/devops/api/bitbucket-client.js +335 -0
  16. package/dist/devops/api/bitbucket-client.js.map +1 -0
  17. package/dist/devops/api/jenkins-client.d.ts +110 -0
  18. package/dist/devops/api/jenkins-client.d.ts.map +1 -0
  19. package/dist/devops/api/jenkins-client.js +345 -0
  20. package/dist/devops/api/jenkins-client.js.map +1 -0
  21. package/dist/devops/config/config-manager.d.ts +96 -0
  22. package/dist/devops/config/config-manager.d.ts.map +1 -0
  23. package/dist/devops/config/config-manager.js +331 -0
  24. package/dist/devops/config/config-manager.js.map +1 -0
  25. package/dist/devops/config/encryption.d.ts +39 -0
  26. package/dist/devops/config/encryption.d.ts.map +1 -0
  27. package/dist/devops/config/encryption.js +133 -0
  28. package/dist/devops/config/encryption.js.map +1 -0
  29. package/dist/devops/config/storage.d.ts +37 -0
  30. package/dist/devops/config/storage.d.ts.map +1 -0
  31. package/dist/devops/config/storage.js +132 -0
  32. package/dist/devops/config/storage.js.map +1 -0
  33. package/dist/devops/constants.d.ts +51 -0
  34. package/dist/devops/constants.d.ts.map +1 -0
  35. package/dist/devops/constants.js +95 -0
  36. package/dist/devops/constants.js.map +1 -0
  37. package/dist/devops/deployer/full-deployer.d.ts +77 -0
  38. package/dist/devops/deployer/full-deployer.d.ts.map +1 -0
  39. package/dist/devops/deployer/full-deployer.js +221 -0
  40. package/dist/devops/deployer/full-deployer.js.map +1 -0
  41. package/dist/devops/deployer/jenkins-deployer.d.ts +55 -0
  42. package/dist/devops/deployer/jenkins-deployer.d.ts.map +1 -0
  43. package/dist/devops/deployer/jenkins-deployer.js +110 -0
  44. package/dist/devops/deployer/jenkins-deployer.js.map +1 -0
  45. package/dist/devops/monitor/pipeline-monitor.d.ts +52 -0
  46. package/dist/devops/monitor/pipeline-monitor.d.ts.map +1 -0
  47. package/dist/devops/monitor/pipeline-monitor.js +205 -0
  48. package/dist/devops/monitor/pipeline-monitor.js.map +1 -0
  49. package/dist/devops/test-ui.d.ts +6 -0
  50. package/dist/devops/test-ui.d.ts.map +1 -0
  51. package/dist/devops/test-ui.js +31 -0
  52. package/dist/devops/test-ui.js.map +1 -0
  53. package/dist/devops/types.d.ts +138 -0
  54. package/dist/devops/types.d.ts.map +1 -0
  55. package/dist/devops/types.js +20 -0
  56. package/dist/devops/types.js.map +1 -0
  57. package/dist/devops/ui/server.d.ts +53 -0
  58. package/dist/devops/ui/server.d.ts.map +1 -0
  59. package/dist/devops/ui/server.js +1310 -0
  60. package/dist/devops/ui/server.js.map +1 -0
  61. package/dist/index.js +32 -1
  62. package/dist/index.js.map +1 -1
  63. package/dist/utils/jenkins-auto-login.d.ts +41 -0
  64. package/dist/utils/jenkins-auto-login.d.ts.map +1 -0
  65. package/dist/utils/jenkins-auto-login.js +189 -0
  66. package/dist/utils/jenkins-auto-login.js.map +1 -0
  67. package/dist/utils/message.d.ts +0 -2
  68. package/dist/utils/message.d.ts.map +1 -1
  69. package/dist/utils/message.js +7 -15
  70. package/dist/utils/message.js.map +1 -1
  71. package/dist/utils/tag.d.ts +65 -6
  72. package/dist/utils/tag.d.ts.map +1 -1
  73. package/dist/utils/tag.js +148 -14
  74. package/dist/utils/tag.js.map +1 -1
  75. package/package.json +20 -2
package/dist/utils/tag.js CHANGED
@@ -1,36 +1,121 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TAG_FORMATS = void 0;
4
+ exports.parseTagFormat = parseTagFormat;
3
5
  exports.parseTag = parseTag;
6
+ exports.detectTagFormat = detectTagFormat;
4
7
  exports.incrementVersion = incrementVersion;
5
8
  exports.formatTag = formatTag;
6
9
  exports.compareVersions = compareVersions;
7
- /** 解析 tag 字符串,提取版本号信息 */
8
- function parseTag(tag) {
9
- const match = tag.match(/^test-v(\d+)\.(\d+)\.(\d{4})$/);
10
+ exports.findLatestTag = findLatestTag;
11
+ exports.generateNextTag = generateNextTag;
12
+ /**
13
+ * 预定义的 Tag 格式
14
+ */
15
+ exports.TAG_FORMATS = {
16
+ TEST: { prefix: 'test-v', pattern: '00.00.0000' },
17
+ UAT: { prefix: 'uat-v', pattern: '00.00.0000' },
18
+ PROD: { prefix: 'v', pattern: '00.00.0000' },
19
+ };
20
+ /**
21
+ * 解析 tag 格式配置
22
+ * @param format 格式字符串,如 'test-v00.00.0000'
23
+ */
24
+ function parseTagFormat(format) {
25
+ /** 提取前缀(非数字部分) */
26
+ const match = format.match(/^([^\d]+)([\d.]+)$/);
10
27
  if (!match) {
11
- throw new Error(`无效的 tag 格式: ${tag},期望格式: test-v00.00.0000`);
28
+ throw new Error(`无效的 tag 格式: ${format}`);
29
+ }
30
+ return {
31
+ prefix: match[1],
32
+ pattern: match[2],
33
+ };
34
+ }
35
+ /**
36
+ * 解析 tag 字符串,提取版本号信息
37
+ * @param tag tag 字符串
38
+ * @param format 可选的格式配置,如果不提供则自动检测
39
+ */
40
+ function parseTag(tag, format) {
41
+ let prefix;
42
+ let pattern;
43
+ if (format) {
44
+ prefix = format.prefix;
45
+ pattern = format.pattern;
46
+ }
47
+ else {
48
+ /** 自动检测格式 */
49
+ const detectedFormat = detectTagFormat(tag);
50
+ if (!detectedFormat) {
51
+ throw new Error(`无法识别的 tag 格式: ${tag}`);
52
+ }
53
+ prefix = detectedFormat.prefix;
54
+ pattern = detectedFormat.pattern;
55
+ }
56
+ /** 移除前缀 */
57
+ if (!tag.startsWith(prefix)) {
58
+ throw new Error(`tag "${tag}" 不匹配前缀 "${prefix}"`);
59
+ }
60
+ const versionPart = tag.substring(prefix.length);
61
+ /** 解析版本号 */
62
+ const parts = versionPart.split('.');
63
+ if (parts.length !== 3) {
64
+ throw new Error(`无效的版本号格式: ${versionPart},期望 3 个部分`);
12
65
  }
13
66
  return {
14
67
  version: tag,
15
- major: parseInt(match[1], 10),
16
- minor: parseInt(match[2], 10),
17
- patch: parseInt(match[3], 10),
18
- build: parseInt(match[3], 10)
68
+ major: parseInt(parts[0], 10),
69
+ minor: parseInt(parts[1], 10),
70
+ patch: parseInt(parts[2], 10),
71
+ build: parseInt(parts[2], 10),
19
72
  };
20
73
  }
21
- /** 递增版本号,将 build 和 patch 版本号加 1 */
74
+ /**
75
+ * 自动检测 tag 格式
76
+ */
77
+ function detectTagFormat(tag) {
78
+ /** 尝试匹配已知格式 */
79
+ for (const format of Object.values(exports.TAG_FORMATS)) {
80
+ if (tag.startsWith(format.prefix)) {
81
+ return format;
82
+ }
83
+ }
84
+ /** 尝试通用匹配 */
85
+ const match = tag.match(/^([^\d]+)([\d.]+)$/);
86
+ if (match) {
87
+ return {
88
+ prefix: match[1],
89
+ pattern: match[2].replace(/\d/g, '0'),
90
+ };
91
+ }
92
+ return null;
93
+ }
94
+ /**
95
+ * 递增版本号,将 build 和 patch 版本号加 1
96
+ */
22
97
  function incrementVersion(tagInfo) {
23
98
  return {
24
99
  ...tagInfo,
25
100
  build: tagInfo.build + 1,
26
- patch: tagInfo.build + 1
101
+ patch: tagInfo.build + 1,
27
102
  };
28
103
  }
29
- /** 格式化版本信息为 tag 字符串 */
30
- function formatTag(tagInfo) {
31
- return `test-v${tagInfo.major.toString().padStart(2, '0')}.${tagInfo.minor.toString().padStart(2, '0')}.${tagInfo.build.toString().padStart(4, '0')}`;
104
+ /**
105
+ * 格式化版本信息为 tag 字符串
106
+ * @param tagInfo 版本信息
107
+ * @param format 格式配置
108
+ */
109
+ function formatTag(tagInfo, format) {
110
+ const patternParts = format.pattern.split('.');
111
+ const major = tagInfo.major.toString().padStart(patternParts[0].length, '0');
112
+ const minor = tagInfo.minor.toString().padStart(patternParts[1].length, '0');
113
+ const build = tagInfo.build.toString().padStart(patternParts[2].length, '0');
114
+ return `${format.prefix}${major}.${minor}.${build}`;
32
115
  }
33
- /** 比较两个版本号的大小 */
116
+ /**
117
+ * 比较两个版本号的大小
118
+ */
34
119
  function compareVersions(a, b) {
35
120
  if (a.major !== b.major)
36
121
  return a.major - b.major;
@@ -38,4 +123,53 @@ function compareVersions(a, b) {
38
123
  return a.minor - b.minor;
39
124
  return a.build - b.build;
40
125
  }
126
+ /**
127
+ * 查找匹配格式的最新 tag
128
+ * @param tags tag 列表
129
+ * @param format 格式配置
130
+ */
131
+ function findLatestTag(tags, format) {
132
+ /** 过滤匹配前缀的 tags */
133
+ const matchedTags = tags.filter((tag) => tag.startsWith(format.prefix));
134
+ if (matchedTags.length === 0) {
135
+ return null;
136
+ }
137
+ /** 解析并排序 */
138
+ const parsedTags = matchedTags
139
+ .map((tag) => {
140
+ try {
141
+ return parseTag(tag, format);
142
+ }
143
+ catch {
144
+ return null;
145
+ }
146
+ })
147
+ .filter((t) => t !== null);
148
+ if (parsedTags.length === 0) {
149
+ return null;
150
+ }
151
+ /** 按版本号排序,返回最新的 */
152
+ parsedTags.sort(compareVersions);
153
+ return parsedTags[parsedTags.length - 1].version;
154
+ }
155
+ /**
156
+ * 生成下一个 tag
157
+ * @param tags 现有 tag 列表
158
+ * @param format 格式配置
159
+ */
160
+ function generateNextTag(tags, format) {
161
+ const latestTag = findLatestTag(tags, format);
162
+ if (!latestTag) {
163
+ /** 如果没有现有 tag,返回初始版本 */
164
+ const patternParts = format.pattern.split('.');
165
+ const major = '0'.repeat(patternParts[0].length);
166
+ const minor = '0'.repeat(patternParts[1].length);
167
+ const build = '1'.padStart(patternParts[2].length, '0');
168
+ return `${format.prefix}${major}.${minor}.${build}`;
169
+ }
170
+ /** 递增版本号 */
171
+ const tagInfo = parseTag(latestTag, format);
172
+ const nextTagInfo = incrementVersion(tagInfo);
173
+ return formatTag(nextTagInfo, format);
174
+ }
41
175
  //# sourceMappingURL=tag.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tag.js","sourceRoot":"","sources":["../../src/utils/tag.ts"],"names":[],"mappings":";;AAGA,4BAYC;AAGD,4CAMC;AAGD,8BAEC;AAGD,0CAIC;AAlCD,yBAAyB;AACzB,SAAgB,QAAQ,CAAC,GAAW;IAClC,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACzD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,eAAe,GAAG,yBAAyB,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO;QACL,OAAO,EAAE,GAAG;QACZ,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAC7B,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAC7B,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAC7B,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;KAC9B,CAAC;AACJ,CAAC;AAED,mCAAmC;AACnC,SAAgB,gBAAgB,CAAC,OAAgB;IAC/C,OAAO;QACL,GAAG,OAAO;QACV,KAAK,EAAE,OAAO,CAAC,KAAK,GAAG,CAAC;QACxB,KAAK,EAAE,OAAO,CAAC,KAAK,GAAG,CAAC;KACzB,CAAC;AACJ,CAAC;AAED,uBAAuB;AACvB,SAAgB,SAAS,CAAC,OAAgB;IACxC,OAAO,SAAS,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;AACxJ,CAAC;AAED,iBAAiB;AACjB,SAAgB,eAAe,CAAC,CAAU,EAAE,CAAU;IACpD,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK;QAAE,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;IAClD,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK;QAAE,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;IAClD,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;AAC3B,CAAC"}
1
+ {"version":3,"file":"tag.js","sourceRoot":"","sources":["../../src/utils/tag.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "long-git-cli",
3
- "version": "1.0.12",
3
+ "version": "1.0.15",
4
4
  "description": "A CLI tool for Git tag management.",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -17,7 +17,8 @@
17
17
  "start": "node dist/index.js",
18
18
  "clean": "rm -rf dist",
19
19
  "prebuild": "npm run clean",
20
- "pub": "npm version patch && npm run build && npm publish --access public && git push"
20
+ "pub": "npm version patch && npm run build && npm publish --access public && git push",
21
+ "publish:npm": "npm publish --registry https://registry.npmjs.org/ --access public"
21
22
  },
22
23
  "keywords": [
23
24
  "cli",
@@ -37,15 +38,32 @@
37
38
  "access": "public"
38
39
  },
39
40
  "dependencies": {
41
+ "@koa/router": "^15.1.1",
40
42
  "@types/inquirer": "^8.2.3",
43
+ "axios": "^1.13.2",
44
+ "bcrypt": "^6.0.0",
41
45
  "chalk": "^4.1.2",
42
46
  "commander": "^11.1.0",
43
47
  "inquirer": "^8.2.4",
48
+ "koa": "^3.1.1",
49
+ "koa-bodyparser": "^4.4.1",
50
+ "koa-static": "^5.0.0",
51
+ "open": "^11.0.0",
44
52
  "ora": "^5.4.1",
53
+ "puppeteer": "^24.34.0",
45
54
  "simple-git": "^3.22.0"
46
55
  },
47
56
  "devDependencies": {
57
+ "@types/bcrypt": "^6.0.0",
58
+ "@types/jest": "^30.0.0",
59
+ "@types/koa": "^3.0.1",
60
+ "@types/koa__router": "^12.0.5",
61
+ "@types/koa-bodyparser": "^4.3.13",
62
+ "@types/koa-static": "^4.0.4",
48
63
  "@types/node": "^20.10.0",
64
+ "fast-check": "^4.5.2",
65
+ "jest": "^30.2.0",
66
+ "ts-jest": "^29.4.6",
49
67
  "ts-node": "^10.9.0",
50
68
  "typescript": "^5.3.0"
51
69
  }