git-release-manager 0.0.7 → 0.0.11

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 (191) hide show
  1. package/README.md +160 -48
  2. package/dist/cli/types/BranchCreateCliArgs.js +3 -0
  3. package/dist/cli/types/BranchCreateCliArgs.js.map +1 -0
  4. package/dist/cli/types/ChangelogGenerateCliArgs.js +3 -0
  5. package/dist/cli/types/ChangelogGenerateCliArgs.js.map +1 -0
  6. package/dist/cli/types/CommitCliArgs.js +3 -0
  7. package/dist/cli/types/CommitCliArgs.js.map +1 -0
  8. package/dist/cli/types/CommitCreateCliArgs.js +3 -0
  9. package/dist/cli/types/CommitCreateCliArgs.js.map +1 -0
  10. package/dist/cli/types/CommitListCliArgs.js +3 -0
  11. package/dist/cli/types/CommitListCliArgs.js.map +1 -0
  12. package/dist/cli/types/VersionCompareCliArgs.js +3 -0
  13. package/dist/cli/types/VersionCompareCliArgs.js.map +1 -0
  14. package/dist/cli/types/VersionIncrementCliArgs.js +3 -0
  15. package/dist/cli/types/VersionIncrementCliArgs.js.map +1 -0
  16. package/dist/cli/types/VersionInitCliArgs.js +3 -0
  17. package/dist/cli/types/VersionInitCliArgs.js.map +1 -0
  18. package/dist/cli/types/VersionListCliArgs.js +3 -0
  19. package/dist/cli/types/VersionListCliArgs.js.map +1 -0
  20. package/dist/cli/types/VersionProjectCliArgs.js +3 -0
  21. package/dist/cli/types/VersionProjectCliArgs.js.map +1 -0
  22. package/dist/cli/types/VersionRemoteCliArgs.js +3 -0
  23. package/dist/cli/types/VersionRemoteCliArgs.js.map +1 -0
  24. package/dist/cli/types/VersionResetCliArgs.js +3 -0
  25. package/dist/cli/types/VersionResetCliArgs.js.map +1 -0
  26. package/dist/cli/types/VersionRevertCliArgs.js +3 -0
  27. package/dist/cli/types/VersionRevertCliArgs.js.map +1 -0
  28. package/dist/cli/types/VersionSetCliArgs.js +3 -0
  29. package/dist/cli/types/VersionSetCliArgs.js.map +1 -0
  30. package/dist/cli/types/VersionValidateCliArgs.js +3 -0
  31. package/dist/cli/types/VersionValidateCliArgs.js.map +1 -0
  32. package/dist/commands/branch/command copy.js +2 -0
  33. package/dist/commands/branch/command copy.js.map +1 -0
  34. package/dist/commands/branch/command.js +200 -0
  35. package/dist/commands/branch/command.js.map +1 -0
  36. package/dist/commands/branch/types/BranchCliArgs.js +3 -0
  37. package/dist/commands/branch/types/BranchCliArgs.js.map +1 -0
  38. package/dist/commands/branch/types/BranchCreateCliArgs.js +3 -0
  39. package/dist/commands/branch/types/BranchCreateCliArgs.js.map +1 -0
  40. package/dist/commands/branch/types/BranchDeleteCliArgs.js +3 -0
  41. package/dist/commands/branch/types/BranchDeleteCliArgs.js.map +1 -0
  42. package/dist/commands/branch/types/BranchListCliArgs.js +3 -0
  43. package/dist/commands/branch/types/BranchListCliArgs.js.map +1 -0
  44. package/dist/commands/branch/types/BranchMergeCliArgs.js +3 -0
  45. package/dist/commands/branch/types/BranchMergeCliArgs.js.map +1 -0
  46. package/dist/commands/branch/types/BranchProtectCliArgs.js +3 -0
  47. package/dist/commands/branch/types/BranchProtectCliArgs.js.map +1 -0
  48. package/dist/commands/branch/types/BranchRebaseCliArgs.js +3 -0
  49. package/dist/commands/branch/types/BranchRebaseCliArgs.js.map +1 -0
  50. package/dist/commands/branch/types/BranchSwitchCliArgs.js +3 -0
  51. package/dist/commands/branch/types/BranchSwitchCliArgs.js.map +1 -0
  52. package/dist/commands/branch/types/BranchUnProtectCliArgs.js +3 -0
  53. package/dist/commands/branch/types/BranchUnProtectCliArgs.js.map +1 -0
  54. package/dist/commands/changelog/command.js +32 -0
  55. package/dist/commands/changelog/command.js.map +1 -0
  56. package/dist/commands/changelog/types/ChangelogCliArgs.js +3 -0
  57. package/dist/commands/changelog/types/ChangelogCliArgs.js.map +1 -0
  58. package/dist/commands/changelog/types/ChangelogGenerateCliArgs.js +3 -0
  59. package/dist/commands/changelog/types/ChangelogGenerateCliArgs.js.map +1 -0
  60. package/dist/commands/commit/command.js +53 -0
  61. package/dist/commands/commit/command.js.map +1 -0
  62. package/dist/commands/commit/types/CommitAmendCliArgs.js +3 -0
  63. package/dist/commands/commit/types/CommitAmendCliArgs.js.map +1 -0
  64. package/dist/commands/commit/types/CommitCliArgs.js +3 -0
  65. package/dist/commands/commit/types/CommitCliArgs.js.map +1 -0
  66. package/dist/commands/commit/types/CommitCreateCliArgs.js +3 -0
  67. package/dist/commands/commit/types/CommitCreateCliArgs.js.map +1 -0
  68. package/dist/commands/commit/types/CommitListCliArgs.js +3 -0
  69. package/dist/commands/commit/types/CommitListCliArgs.js.map +1 -0
  70. package/dist/commands/fllow/command.js +134 -0
  71. package/dist/commands/fllow/command.js.map +1 -0
  72. package/dist/commands/fllow/types/VersionCliArgs.js +3 -0
  73. package/dist/commands/fllow/types/VersionCliArgs.js.map +1 -0
  74. package/dist/commands/fllow/types/VersionCompareCliArgs.js +3 -0
  75. package/dist/commands/fllow/types/VersionCompareCliArgs.js.map +1 -0
  76. package/dist/commands/fllow/types/VersionIncrementCliArgs.js +3 -0
  77. package/dist/commands/fllow/types/VersionIncrementCliArgs.js.map +1 -0
  78. package/dist/commands/fllow/types/VersionInitCliArgs.js +3 -0
  79. package/dist/commands/fllow/types/VersionInitCliArgs.js.map +1 -0
  80. package/dist/commands/fllow/types/VersionListCliArgs.js +3 -0
  81. package/dist/commands/fllow/types/VersionListCliArgs.js.map +1 -0
  82. package/dist/commands/fllow/types/VersionProjectCliArgs.js +3 -0
  83. package/dist/commands/fllow/types/VersionProjectCliArgs.js.map +1 -0
  84. package/dist/commands/fllow/types/VersionRemoteCliArgs.js +3 -0
  85. package/dist/commands/fllow/types/VersionRemoteCliArgs.js.map +1 -0
  86. package/dist/commands/fllow/types/VersionResetCliArgs.js +3 -0
  87. package/dist/commands/fllow/types/VersionResetCliArgs.js.map +1 -0
  88. package/dist/commands/fllow/types/VersionRevertCliArgs.js +3 -0
  89. package/dist/commands/fllow/types/VersionRevertCliArgs.js.map +1 -0
  90. package/dist/commands/fllow/types/VersionSetCliArgs.js +3 -0
  91. package/dist/commands/fllow/types/VersionSetCliArgs.js.map +1 -0
  92. package/dist/commands/fllow/types/VersionValidateCliArgs.js +3 -0
  93. package/dist/commands/fllow/types/VersionValidateCliArgs.js.map +1 -0
  94. package/dist/commands/flow/command.js +137 -0
  95. package/dist/commands/flow/command.js.map +1 -0
  96. package/dist/commands/flow/types/VersionCliArgs.js +3 -0
  97. package/dist/commands/flow/types/VersionCliArgs.js.map +1 -0
  98. package/dist/commands/flow/types/VersionCompareCliArgs.js +3 -0
  99. package/dist/commands/flow/types/VersionCompareCliArgs.js.map +1 -0
  100. package/dist/commands/flow/types/VersionIncrementCliArgs.js +3 -0
  101. package/dist/commands/flow/types/VersionIncrementCliArgs.js.map +1 -0
  102. package/dist/commands/flow/types/VersionInitCliArgs.js +3 -0
  103. package/dist/commands/flow/types/VersionInitCliArgs.js.map +1 -0
  104. package/dist/commands/flow/types/VersionListCliArgs.js +3 -0
  105. package/dist/commands/flow/types/VersionListCliArgs.js.map +1 -0
  106. package/dist/commands/flow/types/VersionProjectCliArgs.js +3 -0
  107. package/dist/commands/flow/types/VersionProjectCliArgs.js.map +1 -0
  108. package/dist/commands/flow/types/VersionRemoteCliArgs.js +3 -0
  109. package/dist/commands/flow/types/VersionRemoteCliArgs.js.map +1 -0
  110. package/dist/commands/flow/types/VersionResetCliArgs.js +3 -0
  111. package/dist/commands/flow/types/VersionResetCliArgs.js.map +1 -0
  112. package/dist/commands/flow/types/VersionRevertCliArgs.js +3 -0
  113. package/dist/commands/flow/types/VersionRevertCliArgs.js.map +1 -0
  114. package/dist/commands/flow/types/VersionSetCliArgs.js +3 -0
  115. package/dist/commands/flow/types/VersionSetCliArgs.js.map +1 -0
  116. package/dist/commands/flow/types/VersionValidateCliArgs.js +3 -0
  117. package/dist/commands/flow/types/VersionValidateCliArgs.js.map +1 -0
  118. package/dist/commands/types/CliArgs.js +3 -0
  119. package/dist/commands/types/CliArgs.js.map +1 -0
  120. package/dist/commands/version/command.js +135 -0
  121. package/dist/commands/version/command.js.map +1 -0
  122. package/dist/commands/version/types/VersionCliArgs.js +3 -0
  123. package/dist/commands/version/types/VersionCliArgs.js.map +1 -0
  124. package/dist/commands/version/types/VersionCompareCliArgs.js +3 -0
  125. package/dist/commands/version/types/VersionCompareCliArgs.js.map +1 -0
  126. package/dist/commands/version/types/VersionIncrementCliArgs.js +3 -0
  127. package/dist/commands/version/types/VersionIncrementCliArgs.js.map +1 -0
  128. package/dist/commands/version/types/VersionInitCliArgs.js +3 -0
  129. package/dist/commands/version/types/VersionInitCliArgs.js.map +1 -0
  130. package/dist/commands/version/types/VersionListCliArgs.js +3 -0
  131. package/dist/commands/version/types/VersionListCliArgs.js.map +1 -0
  132. package/dist/commands/version/types/VersionProjectCliArgs.js +3 -0
  133. package/dist/commands/version/types/VersionProjectCliArgs.js.map +1 -0
  134. package/dist/commands/version/types/VersionRemoteCliArgs.js +3 -0
  135. package/dist/commands/version/types/VersionRemoteCliArgs.js.map +1 -0
  136. package/dist/commands/version/types/VersionResetCliArgs.js +3 -0
  137. package/dist/commands/version/types/VersionResetCliArgs.js.map +1 -0
  138. package/dist/commands/version/types/VersionRevertCliArgs.js +3 -0
  139. package/dist/commands/version/types/VersionRevertCliArgs.js.map +1 -0
  140. package/dist/commands/version/types/VersionSetCliArgs.js +3 -0
  141. package/dist/commands/version/types/VersionSetCliArgs.js.map +1 -0
  142. package/dist/commands/version/types/VersionValidateCliArgs.js +3 -0
  143. package/dist/commands/version/types/VersionValidateCliArgs.js.map +1 -0
  144. package/dist/config/defaults/config.json +259 -231
  145. package/dist/config/types/BranchConfig.js +3 -0
  146. package/dist/config/types/BranchConfig.js.map +1 -0
  147. package/dist/config/types/Repository.js +3 -0
  148. package/dist/config/types/Repository.js.map +1 -0
  149. package/dist/core/app.js +79 -4
  150. package/dist/core/app.js.map +1 -1
  151. package/dist/core/changelog/app.js +20 -0
  152. package/dist/core/changelog/app.js.map +1 -0
  153. package/dist/index.js +18 -74
  154. package/dist/index.js.map +1 -1
  155. package/dist/modules/FlowManager.js +439 -0
  156. package/dist/modules/FlowManager.js.map +1 -0
  157. package/dist/modules/branch/BranchController.js +124 -16
  158. package/dist/modules/branch/BranchController.js.map +1 -1
  159. package/dist/modules/branch/BranchManager.js +149 -104
  160. package/dist/modules/branch/BranchManager.js.map +1 -1
  161. package/dist/modules/changelog/ChangelogController.js +31 -0
  162. package/dist/modules/changelog/ChangelogController.js.map +1 -0
  163. package/dist/modules/changelog/templateOperations.js +1 -1
  164. package/dist/modules/changelog/templateOperations.js.map +1 -1
  165. package/dist/modules/commit/CommitController.js +38 -0
  166. package/dist/modules/commit/CommitController.js.map +1 -0
  167. package/dist/modules/commit/CommitManager.js +87 -0
  168. package/dist/modules/commit/CommitManager.js.map +1 -0
  169. package/dist/modules/git/context/remoteHandler.js +0 -6
  170. package/dist/modules/git/context/remoteHandler.js.map +1 -1
  171. package/dist/modules/git/gitOperations.js.map +1 -1
  172. package/dist/modules/git/utils/referenceUtils.js +7 -2
  173. package/dist/modules/git/utils/referenceUtils.js.map +1 -1
  174. package/dist/modules/version/GitVersionManager.js +40 -34
  175. package/dist/modules/version/GitVersionManager.js.map +1 -1
  176. package/dist/modules/version/ProjectVersion.js +195 -0
  177. package/dist/modules/version/ProjectVersion.js.map +1 -0
  178. package/dist/modules/version/ReleaseManager.js +0 -13
  179. package/dist/modules/version/ReleaseManager.js.map +1 -1
  180. package/dist/modules/version/VersionController.js +95 -0
  181. package/dist/modules/version/VersionController.js.map +1 -0
  182. package/dist/modules/version/VersionManager.js +40 -5
  183. package/dist/modules/version/VersionManager.js.map +1 -1
  184. package/dist/modules/version/VersionValidator.js.map +1 -1
  185. package/dist/modules/version/versionFormatter.js +47 -81
  186. package/dist/modules/version/versionFormatter.js.map +1 -1
  187. package/dist/templates/defaults/changelog.detailed.ejs +110 -110
  188. package/dist/templates/defaults/changelog.ejs +67 -67
  189. package/dist/utils/date.js +3 -3
  190. package/dist/utils/date.js.map +1 -1
  191. package/package.json +65 -63
package/dist/index.js CHANGED
@@ -5,84 +5,28 @@ Object.defineProperty(exports, "__esModule", { value: true });
5
5
  const commander_1 = require("commander");
6
6
  const fs_1 = require("fs");
7
7
  const path_1 = require("path");
8
- const app_1 = require("./core/app");
9
- const packageJson = JSON.parse((0, fs_1.readFileSync)((0, path_1.join)(__dirname, '../package.json'), 'utf8'));
8
+ const command_1 = require("./commands/commit/command");
9
+ const command_2 = require("./commands/changelog/command");
10
+ const command_3 = require("./commands/branch/command");
11
+ const command_4 = require("./commands/version/command");
12
+ const command_5 = require("./commands/flow/command");
13
+ const packageJson = JSON.parse((0, fs_1.readFileSync)((0, path_1.join)(__dirname, "../package.json"), "utf8"));
10
14
  const program = new commander_1.Command();
11
15
  program
12
- .name((_a = packageJson.name) !== null && _a !== void 0 ? _a : 'changelog')
13
- .description((_b = packageJson.description) !== null && _b !== void 0 ? _b : 'Changelog generator tool')
14
- .version((_c = packageJson.version) !== null && _c !== void 0 ? _c : '0.0.0', '-v, --version', 'Show version number')
15
- .helpOption('-h, --help', 'Show help information');
16
- program // generate ai based conventional commit
17
- .command('commit')
18
- .description('Generate changelog')
19
- .action(async (options) => { });
16
+ .name((_a = packageJson.name) !== null && _a !== void 0 ? _a : "Git Release Manager")
17
+ .description((_b = packageJson.description) !== null && _b !== void 0 ? _b : "Tools to manage your git releases and versioning")
18
+ .version((_c = packageJson.version) !== null && _c !== void 0 ? _c : "0.0.0", "-v, --version", "Show the current version number")
19
+ .helpOption("-h, --help", "Display help information");
20
20
  program
21
- .command('changelog')
22
- .description('Generate changelog')
23
- .option('--from <commit | tag | branch| date | reference>', 'Specify starting reference')
24
- .option('--to <commit | tag | branch| date | reference>', 'Specify ending reference')
25
- .option('--point <commit | tag | branch| date | reference>', 'Specify a single reference')
26
- .option('--range <commit | tag | branch| date | reference>', 'Specify reference range')
27
- .option('--mergeAll [boolean]', 'Merge all changes into one output')
28
- .option('--config [string]', 'Custom config file path')
29
- .option('--template [string]', 'Custom template file path')
30
- .option('--output [string]', 'Custom Output file path')
31
- .option('--environment [string]', 'Specific environment to use')
32
- // .option('--separateFiles [boolean]', 'District changelogs into own files')
33
- .action(async (options) => {
34
- await (0, app_1.changelogRun)(options);
35
- });
36
- program
37
- .command('version')
38
- .description('Manage version and release process')
39
- .option('--init [version]', 'Initialize first version')
40
- .option('--reset', 'Reset version history')
41
- .option('-m, --major', 'Increment major version')
42
- .option('-i, --minor', 'Increment minor version')
43
- .option('-p, --patch', 'Increment patch version')
44
- .option('-c, --channel <channel>', 'Specify the prerelease channel (e.g., alpha, beta)')
45
- .option('--no-channel-number', 'Exclude channel number')
46
- .option('--prefix <prefix>', 'Specify version prefix')
47
- .option('--prerelease <identifier>', 'Add prerelease identifier')
48
- .option('--build <identifier>', 'Add build metadata')
49
- .option('-l, --list [count]', 'List versions (optionally specify count)')
50
- .option('--latest', 'Show latest version')
51
- .option('--tag', 'Create git tag for version')
52
- .option('--push', 'Push changes and tags to remote')
53
- .option('--draft', 'Create draft release')
54
- .option('--note <message>', 'Add release note')
55
- .option('--note-file <path>', 'Add release notes from file')
56
- .option('--compare <version>', 'Compare with another version')
57
- .option('--revert <version>', 'Revert to specific version')
58
- .option('--validate <version>', 'Validate version string')
59
- .option('--branch', 'Create release branch automatically')
60
- .option('--sync', 'Sync versions with remote')
61
- .action(async (options) => {
62
- await (0, app_1.versionRun)(options);
63
- });
64
- program
65
- .command('branch')
66
- .description('Manage git branches')
67
- .option('-c, --create <branchName>', 'Create a new branch')
68
- .option('-d, --delete <branchName>', 'Delete a branch')
69
- .option('-l, --list', 'List all branches')
70
- .option('-s, --switch <branchName>', 'Switch to the specified branch')
71
- .option('-m, --merge <branchName>', 'Merge the specified branch into the current branch')
72
- .option('--release <version>', 'Create a release branch (release/v{version})')
73
- .option('--hotfix <version>', 'Create a hotfix branch (hotfix/v{version})')
74
- .option('--feature <name>', 'Create a feature branch (feature/{name})')
75
- .option('--finish <branchName>', 'Finish a feature/release/hotfix branch')
76
- .option('--protect <branchName>', 'Protect a branch from direct commits')
77
- .option('--unprotect <branchName>', 'Remove branch protection')
78
- .option('--rebase <branchName>', 'Rebase current branch with specified branch')
79
- .option('--sync', 'Sync current branch with its remote')
80
- .option('--push', 'Push changes to remote after operation')
81
- .action(async (options) => {
82
- (0, app_1.branchRun)(options);
83
- });
21
+ .option("--config <path>", "Specify a custom config file path")
22
+ .option("--environment <env>", "Set a specific environment to use");
23
+ (0, command_1.createCommitCommand)(program);
24
+ (0, command_2.createChangelogCommand)(program);
25
+ (0, command_3.createBranchCommand)(program);
26
+ (0, command_4.createVersionCommand)(program);
27
+ (0, command_5.createFlowCommand)(program);
84
28
  program.action(() => {
85
- console.log('Please specify a command or use --help for usage information');
29
+ console.log("Please specify a command or use --help for usage information");
86
30
  process.exit(1);
87
31
  });
88
32
  program.parse(process.argv);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AAEA,yCAAoC;AACpC,2BAAkC;AAClC,+BAA4B;AAE5B,uDAAgE;AAChE,0DAAsE;AACtE,uDAAgE;AAChE,wDAAkE;AAClE,qDAA4D;AAE5D,MAAM,WAAW,GAAgB,IAAI,CAAC,KAAK,CACzC,IAAA,iBAAY,EAAC,IAAA,WAAI,EAAC,SAAS,EAAE,iBAAiB,CAAC,EAAE,MAAM,CAAC,CACzD,CAAC;AAEF,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,MAAA,WAAW,CAAC,IAAI,mCAAI,qBAAqB,CAAC;KAC/C,WAAW,CACV,MAAA,WAAW,CAAC,WAAW,mCACrB,kDAAkD,CACrD;KACA,OAAO,CACN,MAAA,WAAW,CAAC,OAAO,mCAAI,OAAO,EAC9B,eAAe,EACf,iCAAiC,CAClC;KACA,UAAU,CAAC,YAAY,EAAE,0BAA0B,CAAC,CAAC;AAExD,OAAO;KACJ,MAAM,CAAC,iBAAiB,EAAE,mCAAmC,CAAC;KAC9D,MAAM,CAAC,qBAAqB,EAAE,mCAAmC,CAAC,CAAC;AAGpE,IAAA,6BAAmB,EAAC,OAAO,CAAC,CAAA;AAC5B,IAAA,gCAAsB,EAAC,OAAO,CAAC,CAAA;AAC/B,IAAA,6BAAmB,EAAC,OAAO,CAAC,CAAA;AAC5B,IAAA,8BAAoB,EAAC,OAAO,CAAC,CAAA;AAC7B,IAAA,2BAAiB,EAAC,OAAO,CAAC,CAAA;AAG5B,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE;IAClB,OAAO,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC;IAC5E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
@@ -0,0 +1,439 @@
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.FlowManager = void 0;
7
+ const simple_git_1 = __importDefault(require("simple-git"));
8
+ const semver_1 = __importDefault(require("semver"));
9
+ class FlowManager {
10
+ constructor(config) {
11
+ var _a, _b, _c, _d;
12
+ this.git = (0, simple_git_1.default)();
13
+ this.defaultBaseVersion = '1.0.0';
14
+ this.config = {
15
+ tagPrefix: 'v',
16
+ releasePrefix: 'release/',
17
+ defaultDevChannel: 'dev',
18
+ defaultReleaseChannel: 'alpha',
19
+ strictTagBranch: true,
20
+ phases: {
21
+ dev: {
22
+ channels: {
23
+ dev: {
24
+ startBuildNumber: 1
25
+ },
26
+ }
27
+ },
28
+ qa: {
29
+ channels: {
30
+ alpha: {
31
+ startBuildNumber: 1
32
+ },
33
+ }
34
+ },
35
+ stage: {
36
+ channels: {
37
+ beta: {
38
+ startBuildNumber: 1
39
+ },
40
+ }
41
+ },
42
+ prod: {
43
+ channels: {
44
+ stabil: {
45
+ startBuildNumber: 1
46
+ },
47
+ }
48
+ }
49
+ }
50
+ };
51
+ if (config) {
52
+ this.config = {
53
+ ...this.config,
54
+ ...config,
55
+ phases: {
56
+ ...this.config.phases,
57
+ ...config.phases,
58
+ dev: {
59
+ channels: {
60
+ ...this.config.phases.dev.channels,
61
+ ...(_a = config.phases) === null || _a === void 0 ? void 0 : _a.dev.channels
62
+ }
63
+ },
64
+ qa: {
65
+ channels: {
66
+ ...this.config.phases.qa.channels,
67
+ ...(_b = config.phases) === null || _b === void 0 ? void 0 : _b.qa.channels
68
+ }
69
+ },
70
+ stage: {
71
+ channels: {
72
+ ...this.config.phases.stage.channels,
73
+ ...(_c = config.phases) === null || _c === void 0 ? void 0 : _c.stage.channels
74
+ }
75
+ },
76
+ prod: {
77
+ channels: {
78
+ ...this.config.phases.prod.channels,
79
+ ...(_d = config.phases) === null || _d === void 0 ? void 0 : _d.prod.channels
80
+ }
81
+ }
82
+ }
83
+ };
84
+ }
85
+ }
86
+ getVersionPart(version, options) {
87
+ var _a;
88
+ const parsedVersion = semver_1.default.parse(version);
89
+ if (!parsedVersion) {
90
+ return '';
91
+ }
92
+ if (options.print) {
93
+ switch (options.print) {
94
+ case 'base':
95
+ return `${parsedVersion.major}.${parsedVersion.minor}.${parsedVersion.patch}`;
96
+ case 'channel':
97
+ return `${parsedVersion.prerelease.join('.')}`;
98
+ case 'build':
99
+ return `${(_a = parsedVersion.prerelease[1]) === null || _a === void 0 ? void 0 : _a.toString()}` || '';
100
+ default:
101
+ return parsedVersion.version;
102
+ }
103
+ }
104
+ return parsedVersion.version;
105
+ }
106
+ async listBranchTags(branch, channel = null) {
107
+ try {
108
+ let tagArgs = [];
109
+ if (this.config.strictTagBranch) {
110
+ tagArgs.push("--merged");
111
+ tagArgs.push(branch);
112
+ }
113
+ const tags = await this.git.raw(['tag', ...tagArgs]);
114
+ let tagPattern = `${this.config.tagPrefix}[0-9]*\\.[0-9]*\\.[0-9]*`;
115
+ if (channel) {
116
+ tagPattern += `-${channel}\\.[0-9]*`;
117
+ }
118
+ const regexPattern = tagPattern.replace(/\\\*/g, '.*').replace(/\\\./g, '\\.');
119
+ const regex = new RegExp(`^${regexPattern}$`);
120
+ const tagList = tags
121
+ .split('\n')
122
+ .map((tag) => tag.trim())
123
+ .filter(tag => regex.test(tag));
124
+ return tagList;
125
+ }
126
+ catch (error) {
127
+ if (error instanceof Error) {
128
+ console.error(`Tag listing error: ${error.message}`);
129
+ }
130
+ else {
131
+ console.error('Tag listing error: Unknown error type');
132
+ }
133
+ return [];
134
+ }
135
+ }
136
+ async latestTagVersion(branch, channel = null, baseVersion = null) {
137
+ try {
138
+ const channelVersion = channel ? `${baseVersion}-${channel}` : baseVersion;
139
+ const tagList = await this.listBranchTags(branch, channel);
140
+ if (!tagList) {
141
+ return '';
142
+ }
143
+ let filteredTags = tagList;
144
+ if (channelVersion) {
145
+ filteredTags = (tagList === null || tagList === void 0 ? void 0 : tagList.filter(tag => tag.startsWith(channelVersion))) || [];
146
+ }
147
+ const latestTag = filteredTags.sort(semver_1.default.rcompare)[0];
148
+ if (!latestTag) {
149
+ return '';
150
+ }
151
+ const parsedVersion = semver_1.default.parse(latestTag);
152
+ return parsedVersion ? latestTag : '';
153
+ }
154
+ catch (error) {
155
+ console.error('Could not retrieve tags:', error instanceof Error ? error.message : error);
156
+ return '';
157
+ }
158
+ }
159
+ async listReleaseBranches(channel = null) {
160
+ try {
161
+ let branchPattern = `${this.config.releasePrefix}${this.config.tagPrefix}[0-9]*\\.[0-9]*\\.[0-9]*`;
162
+ if (channel) {
163
+ branchPattern += `-${channel}`;
164
+ }
165
+ const result = await this.git.raw(['branch', '--list', branchPattern]);
166
+ const regexPattern = branchPattern.replace(/\\\*/g, '.*').replace(/\\\./g, '\\.');
167
+ const regex = new RegExp(`^${regexPattern}$`);
168
+ const branches = result
169
+ .split('\n')
170
+ .map(line => line.replace('*', '').trim())
171
+ .filter(line => regex.test(line));
172
+ return branches;
173
+ }
174
+ catch (error) {
175
+ console.error(`Error listing branches: ${error}`);
176
+ return [];
177
+ }
178
+ }
179
+ async latestReleaseBranchVersion(channel = null) {
180
+ try {
181
+ const branches = await this.listReleaseBranches(channel);
182
+ const latestBranch = branches
183
+ .map(branch => branch.replace(this.config.releasePrefix, ''))
184
+ .map(branch => branch.replace(this.config.tagPrefix, ''))
185
+ .filter(version => semver_1.default.valid(version))
186
+ .sort(semver_1.default.rcompare)[0];
187
+ if (!latestBranch) {
188
+ return '';
189
+ }
190
+ const parsedVersion = semver_1.default.parse(latestBranch);
191
+ if (!parsedVersion) {
192
+ return '';
193
+ }
194
+ return latestBranch ? `${this.config.tagPrefix}${latestBranch}` : '';
195
+ }
196
+ catch (error) {
197
+ console.error('Could not retrieve tags:', error);
198
+ return '';
199
+ }
200
+ }
201
+ async DetermineDevPhaseVersion(branch, options) {
202
+ try {
203
+ const channel = this.config.defaultDevChannel;
204
+ let hasAnyDefaultReleaseChannelVersion = true;
205
+ let latestReleaseBranchVersion = await this.latestReleaseBranchVersion(this.config.defaultReleaseChannel);
206
+ if (!latestReleaseBranchVersion) {
207
+ latestReleaseBranchVersion = this.defaultBaseVersion;
208
+ hasAnyDefaultReleaseChannelVersion = false;
209
+ }
210
+ else {
211
+ latestReleaseBranchVersion = this.getVersionPart(latestReleaseBranchVersion, { print: 'base' });
212
+ }
213
+ const baseVersion = `${this.config.tagPrefix}${latestReleaseBranchVersion}`;
214
+ const latestChannelTagVersion = await this.latestTagVersion(branch, channel, baseVersion);
215
+ let result = '';
216
+ if (options.next) {
217
+ if (!hasAnyDefaultReleaseChannelVersion) {
218
+ if (!latestChannelTagVersion) {
219
+ result = `${this.config.tagPrefix}${this.defaultBaseVersion}-${channel}.${this.config.phases.dev.channels[channel].startBuildNumber}`;
220
+ }
221
+ else {
222
+ const incrementedVersion = semver_1.default.inc(latestChannelTagVersion, 'prerelease', channel);
223
+ result = `${this.config.tagPrefix}${incrementedVersion}`;
224
+ }
225
+ }
226
+ else {
227
+ // Compare release version with dev version
228
+ if (!latestChannelTagVersion || semver_1.default.gt(latestReleaseBranchVersion, latestChannelTagVersion)) {
229
+ // If release version is greater, bump the minor version from release version
230
+ const newBaseVersion = semver_1.default.inc(latestReleaseBranchVersion, 'minor');
231
+ result = `${this.config.tagPrefix}${newBaseVersion}-${channel}.${this.config.phases.dev.channels[channel].startBuildNumber}`;
232
+ }
233
+ else {
234
+ // Otherwise increment the channel number of the latest dev version
235
+ const incrementedDevVersion = semver_1.default.inc(latestChannelTagVersion, 'prerelease', channel);
236
+ result = `${this.config.tagPrefix}${incrementedDevVersion}`;
237
+ }
238
+ }
239
+ }
240
+ else if (options.current) {
241
+ if (!latestChannelTagVersion) {
242
+ result = `${baseVersion}-${channel}.${this.config.phases.dev.channels[channel].startBuildNumber}`;
243
+ }
244
+ else {
245
+ result = latestChannelTagVersion;
246
+ }
247
+ }
248
+ return `${this.config.tagPrefix}${this.getVersionPart(result, options)}`;
249
+ }
250
+ catch (error) {
251
+ if (error instanceof Error) {
252
+ console.error(`Tag listeleme hatası: ${error.message}`);
253
+ }
254
+ else {
255
+ console.error('Tag listeleme hatası: Bilinmeyen hata türü');
256
+ }
257
+ }
258
+ }
259
+ async DetermineQAPhaseVersion(channel, baseVersion, options) {
260
+ try {
261
+ if (!baseVersion) {
262
+ let latestReleaseBranchBaseVersion = await this.latestReleaseBranchVersion(channel);
263
+ if (!latestReleaseBranchBaseVersion) {
264
+ latestReleaseBranchBaseVersion = this.defaultBaseVersion;
265
+ }
266
+ else {
267
+ latestReleaseBranchBaseVersion = this.getVersionPart(latestReleaseBranchBaseVersion, { print: 'base' });
268
+ }
269
+ baseVersion = `${this.config.tagPrefix}${latestReleaseBranchBaseVersion}`;
270
+ }
271
+ const latestChannelTagVersion = await this.latestTagVersion(`${this.config.releasePrefix}${baseVersion}-${channel}`, channel, baseVersion);
272
+ let result = '';
273
+ if (options.next) {
274
+ if (!latestChannelTagVersion) {
275
+ result = `${baseVersion}-${channel}.${this.config.phases.qa.channels[channel].startBuildNumber}`;
276
+ }
277
+ else {
278
+ const incrementedVersion = semver_1.default.inc(latestChannelTagVersion, 'prerelease', channel);
279
+ result = `${this.config.tagPrefix}${incrementedVersion}`;
280
+ }
281
+ }
282
+ else if (options.nextRelease) {
283
+ if (!latestChannelTagVersion) {
284
+ result = `${baseVersion}-${channel}.${this.config.phases.qa.channels[channel].startBuildNumber}`;
285
+ }
286
+ else {
287
+ const incrementedVersion = semver_1.default.inc(baseVersion, 'minor');
288
+ result = `${this.config.tagPrefix}${incrementedVersion}-${channel}.${this.config.phases.qa.channels[channel].startBuildNumber}`;
289
+ }
290
+ }
291
+ else if (options.current) {
292
+ if (!latestChannelTagVersion) {
293
+ result = `${baseVersion}-${channel}.${this.config.phases.qa.channels[channel].startBuildNumber}`;
294
+ }
295
+ else {
296
+ result = latestChannelTagVersion;
297
+ }
298
+ }
299
+ return `${this.config.tagPrefix}${this.getVersionPart(result, options)}`;
300
+ }
301
+ catch (error) {
302
+ if (error instanceof Error) {
303
+ console.error(`Tag listeleme hatası: ${error.message}`);
304
+ }
305
+ else {
306
+ console.error('Tag listeleme hatası: Bilinmeyen hata türü');
307
+ }
308
+ }
309
+ }
310
+ async DetermineStagePhaseVersion(channel, baseVersion, options) {
311
+ try {
312
+ if (!baseVersion) {
313
+ let latestReleaseBranchBaseVersion = await this.latestReleaseBranchVersion(channel);
314
+ if (!latestReleaseBranchBaseVersion) {
315
+ latestReleaseBranchBaseVersion = this.defaultBaseVersion;
316
+ }
317
+ else {
318
+ latestReleaseBranchBaseVersion = this.getVersionPart(latestReleaseBranchBaseVersion, { print: 'base' });
319
+ }
320
+ baseVersion = `${this.config.tagPrefix}${latestReleaseBranchBaseVersion}`;
321
+ }
322
+ const latestChannelTagVersion = await this.latestTagVersion(`${this.config.releasePrefix}${baseVersion}-${channel}`, channel, baseVersion);
323
+ let result = '';
324
+ if (options.next) {
325
+ if (!latestChannelTagVersion) {
326
+ result = `${baseVersion}-${channel}.${this.config.phases.stage.channels[channel].startBuildNumber}`;
327
+ }
328
+ else {
329
+ const incrementedVersion = semver_1.default.inc(latestChannelTagVersion, 'prerelease', channel);
330
+ result = `${this.config.tagPrefix}${incrementedVersion}`;
331
+ }
332
+ }
333
+ else if (options.nextRelease) {
334
+ if (!latestChannelTagVersion) {
335
+ result = `${baseVersion}-${channel}.${this.config.phases.stage.channels[channel].startBuildNumber}`;
336
+ }
337
+ else {
338
+ const incrementedVersion = semver_1.default.inc(baseVersion, 'minor');
339
+ result = `${this.config.tagPrefix}${incrementedVersion}-${channel}.${this.config.phases.stage.channels[channel].startBuildNumber}`;
340
+ }
341
+ }
342
+ else if (options.current) {
343
+ if (!latestChannelTagVersion) {
344
+ result = `${baseVersion}-${channel}.${this.config.phases.stage.channels[channel].startBuildNumber}`;
345
+ }
346
+ else {
347
+ result = latestChannelTagVersion;
348
+ }
349
+ }
350
+ return `${this.config.tagPrefix}${this.getVersionPart(result, options)}`;
351
+ }
352
+ catch (error) {
353
+ if (error instanceof Error) {
354
+ console.error(`Tag listeleme hatası: ${error.message}`);
355
+ }
356
+ else {
357
+ console.error('Tag listeleme hatası: Bilinmeyen hata türü');
358
+ }
359
+ }
360
+ }
361
+ async DetermineProductionPhaseVersion(channelName, baseVersion, options) {
362
+ try {
363
+ let latestStableReleaseBranchBaseVersion = null;
364
+ if (!baseVersion) {
365
+ // let latestReleaseBranchBaseVersion = await this.latestReleaseBranchVersion(channelName)
366
+ // latestReleaseBranchBaseVersion = this.getVersionPart(latestReleaseBranchBaseVersion, { print: 'base' })
367
+ // if (!latestReleaseBranchBaseVersion) {
368
+ // latestReleaseBranchBaseVersion = this.defaultBaseVersion
369
+ // }
370
+ latestStableReleaseBranchBaseVersion = await this.latestReleaseBranchVersion();
371
+ latestStableReleaseBranchBaseVersion = this.getVersionPart(latestStableReleaseBranchBaseVersion, { print: 'base' });
372
+ if (!latestStableReleaseBranchBaseVersion) {
373
+ baseVersion = this.defaultBaseVersion;
374
+ }
375
+ else {
376
+ baseVersion = `${this.config.tagPrefix}${latestStableReleaseBranchBaseVersion}`;
377
+ }
378
+ }
379
+ const latestChannelTagVersion = await this.latestTagVersion(`${this.config.releasePrefix}${baseVersion}`, null, baseVersion);
380
+ let result = '';
381
+ if (options.next) {
382
+ if (!latestChannelTagVersion) {
383
+ result = `${baseVersion}`;
384
+ }
385
+ else {
386
+ result = `${latestChannelTagVersion}`;
387
+ }
388
+ }
389
+ else if (options.nextRelease) {
390
+ if (!latestChannelTagVersion && !latestStableReleaseBranchBaseVersion) {
391
+ result = `${baseVersion}`;
392
+ }
393
+ else {
394
+ const incrementedVersion = semver_1.default.inc(baseVersion, 'minor');
395
+ result = `${this.config.tagPrefix}${incrementedVersion}`;
396
+ }
397
+ }
398
+ else if (options.nextFix) {
399
+ if (!latestChannelTagVersion && !latestStableReleaseBranchBaseVersion) {
400
+ result = `${baseVersion}`;
401
+ }
402
+ else {
403
+ const incrementedVersion = semver_1.default.inc(baseVersion, 'patch');
404
+ result = `${this.config.tagPrefix}${incrementedVersion}`;
405
+ }
406
+ }
407
+ else if (options.current) {
408
+ if (!latestChannelTagVersion) {
409
+ result = `${baseVersion}`;
410
+ }
411
+ else {
412
+ result = latestChannelTagVersion;
413
+ }
414
+ }
415
+ else if (options.previous) {
416
+ result = await this.latestTagVersion('main');
417
+ }
418
+ else if (options.previousFix) {
419
+ const latestMainVersion = await this.latestTagVersion(`main`);
420
+ const incrementedVersion = semver_1.default.inc(latestMainVersion, 'patch');
421
+ result = `${this.config.tagPrefix}${incrementedVersion}`;
422
+ }
423
+ return `${this.config.tagPrefix}${this.getVersionPart(result, options)}`;
424
+ }
425
+ catch (error) {
426
+ if (error instanceof Error) {
427
+ console.error(`Tag listeleme hatası: ${error.message}`);
428
+ }
429
+ else {
430
+ console.error('Tag listeleme hatası: Bilinmeyen hata türü');
431
+ }
432
+ }
433
+ }
434
+ escapeForRegex(input) {
435
+ return input.replace(/\./g, '\\.');
436
+ }
437
+ }
438
+ exports.FlowManager = FlowManager;
439
+ //# sourceMappingURL=FlowManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FlowManager.js","sourceRoot":"","sources":["../../src/modules/FlowManager.ts"],"names":[],"mappings":"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"}