@clickview/ship-it 0.0.3 → 0.0.4-dev.1
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/config.json +5 -0
- package/lib/config.json +5 -0
- package/lib/src/api-clients/GitLabApiClient.js +342 -0
- package/lib/src/api-clients/git-lab/GitLabApiClient.js +24 -0
- package/lib/src/api-clients/git-lab/GitLabMapper.js +1 -0
- package/lib/src/api-clients/index.js +1 -0
- package/lib/src/api-clients/team-city/TeamCityApiClient.js +85 -0
- package/lib/src/commands/BumpPackagesCommand.js +2 -4
- package/lib/src/commands/CommitPackageVersionsCommand.js +78 -0
- package/lib/src/commands/CreateBranchCommand.js +4 -6
- package/lib/src/commands/CreateMergeRequestCommand.js +5 -7
- package/lib/src/commands/CreateReleaseNotesCommand.js +2 -4
- package/lib/src/commands/InstallPackagesCommand.js +1 -3
- package/lib/src/commands/ReleaseCommand.js +17 -10
- package/lib/src/commands/StartConsumingProjectBuildsCommand.js +76 -0
- package/lib/src/commands/StatusCommand.js +1 -3
- package/lib/src/commands/ValidateMergeRequestCommand.js +1 -3
- package/lib/src/commands/VersionCommand.js +1 -3
- package/lib/src/commands/index.js +1 -0
- package/lib/src/constants/CommandTypeMapping.js +1 -0
- package/lib/src/constants/TeamCityBuildIDs.js +13 -0
- package/lib/src/constants/index.js +18 -0
- package/lib/src/index.js +1 -1
- package/lib/src/interfaces/ShipItOptions.js +2 -0
- package/lib/src/interfaces/command-cli-options/MilestoneCommandCliOptions.js +2 -0
- package/lib/src/interfaces/command-cli-options/ReleaseCommandCliOptions.js +2 -0
- package/lib/src/interfaces/command-cli-options/index.js +18 -0
- package/lib/src/interfaces/command-options/CommitPackageVersionsCommandOptions.js +2 -0
- package/lib/src/interfaces/command-options/DockerMilestoneCommandOptions.js +2 -0
- package/lib/src/interfaces/command-options/ReleaseCommandOptions.js +2 -0
- package/lib/src/interfaces/command-options/index.js +2 -1
- package/lib/src/interfaces/index.js +1 -0
- package/lib/src/inversify.config.js +8 -0
- package/lib/src/services/GitLabService.js +33 -0
- package/lib/src/services/TeamCityService.js +34 -0
- package/lib/src/services/index.js +1 -0
- package/lib/src/startup/AddMilestoneCommand.js +13 -7
- package/lib/src/startup/GetAction.js +68 -0
- package/lib/src/startup/SetupCommands.js +49 -27
- package/lib/src/tasks/CommitLocalPackagesTask.js +137 -0
- package/lib/src/tasks/CreateBranchTask.js +37 -19
- package/lib/src/tasks/InstallPackagesTask.js +26 -47
- package/lib/src/tasks/StartConsumingProjectBuildsTask.js +143 -0
- package/lib/src/tasks/StartMonorepoBuildTask.js +95 -0
- package/lib/src/tasks/ValidateTask.js +2 -2
- package/lib/src/tasks/index.js +2 -0
- package/lib/src/types.js +6 -0
- package/lib/src/utils/BranchNames.js +2 -0
- package/lib/src/utils/ProjectIds.js +3 -3
- package/package.json +4 -3
|
@@ -66,11 +66,9 @@ var CreateReleaseNotesCommand = /** @class */ (function () {
|
|
|
66
66
|
case 1:
|
|
67
67
|
cont = _a.sent();
|
|
68
68
|
if (!cont)
|
|
69
|
-
return [2 /*return
|
|
69
|
+
return [2 /*return*/, false];
|
|
70
70
|
return [4 /*yield*/, this.createReleaseNotesTask.run(options)];
|
|
71
|
-
case 2:
|
|
72
|
-
_a.sent();
|
|
73
|
-
return [2 /*return*/];
|
|
71
|
+
case 2: return [2 /*return*/, _a.sent()];
|
|
74
72
|
}
|
|
75
73
|
});
|
|
76
74
|
});
|
|
@@ -61,9 +61,7 @@ var InstallPackagesCommand = /** @class */ (function () {
|
|
|
61
61
|
return __generator(this, function (_a) {
|
|
62
62
|
switch (_a.label) {
|
|
63
63
|
case 0: return [4 /*yield*/, this._installPackagesTask.run(options)];
|
|
64
|
-
case 1:
|
|
65
|
-
_a.sent();
|
|
66
|
-
return [2 /*return*/];
|
|
64
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
67
65
|
}
|
|
68
66
|
});
|
|
69
67
|
});
|
|
@@ -53,7 +53,7 @@ require("reflect-metadata");
|
|
|
53
53
|
var inversify_1 = require("inversify");
|
|
54
54
|
var types_1 = require("../types");
|
|
55
55
|
var ReleaseCommand = /** @class */ (function () {
|
|
56
|
-
function ReleaseCommand(validateTask, versionTask, validateDescriptionsTask, validateCommitsTask, createBranchTask, bumpVersionTxtTask, createMergeRequestTask) {
|
|
56
|
+
function ReleaseCommand(validateTask, versionTask, validateDescriptionsTask, validateCommitsTask, createBranchTask, bumpVersionTxtTask, createMergeRequestTask, startMonorepoBuildTask) {
|
|
57
57
|
this.validateTask = validateTask;
|
|
58
58
|
this.versionTask = versionTask;
|
|
59
59
|
this.validateDescriptionsTask = validateDescriptionsTask;
|
|
@@ -61,6 +61,7 @@ var ReleaseCommand = /** @class */ (function () {
|
|
|
61
61
|
this.createBranchTask = createBranchTask;
|
|
62
62
|
this.bumpVersionTxtTask = bumpVersionTxtTask;
|
|
63
63
|
this.createMergeRequestTask = createMergeRequestTask;
|
|
64
|
+
this.startMonorepoBuildTask = startMonorepoBuildTask;
|
|
64
65
|
}
|
|
65
66
|
ReleaseCommand.prototype.run = function (options) {
|
|
66
67
|
return __awaiter(this, void 0, void 0, function () {
|
|
@@ -72,36 +73,41 @@ var ReleaseCommand = /** @class */ (function () {
|
|
|
72
73
|
cont = _a.sent();
|
|
73
74
|
// Check if we want to continue with inquirer?
|
|
74
75
|
if (!cont)
|
|
75
|
-
return [2 /*return
|
|
76
|
+
return [2 /*return*/, false];
|
|
76
77
|
return [4 /*yield*/, this.versionTask.run(options)];
|
|
77
78
|
case 2:
|
|
78
79
|
cont = _a.sent();
|
|
79
80
|
if (!cont)
|
|
80
|
-
return [2 /*return
|
|
81
|
+
return [2 /*return*/, false];
|
|
81
82
|
return [4 /*yield*/, this.validateDescriptionsTask.run(options)];
|
|
82
83
|
case 3:
|
|
83
84
|
cont = _a.sent();
|
|
84
85
|
if (!cont)
|
|
85
|
-
return [2 /*return
|
|
86
|
+
return [2 /*return*/, false];
|
|
86
87
|
return [4 /*yield*/, this.validateCommitsTask.run(options)];
|
|
87
88
|
case 4:
|
|
88
89
|
cont = _a.sent();
|
|
89
90
|
if (!cont)
|
|
90
|
-
return [2 /*return
|
|
91
|
+
return [2 /*return*/, false];
|
|
91
92
|
return [4 /*yield*/, this.createBranchTask.run(options)];
|
|
92
93
|
case 5:
|
|
93
94
|
cont = _a.sent();
|
|
94
95
|
if (!cont)
|
|
95
|
-
return [2 /*return
|
|
96
|
+
return [2 /*return*/, false];
|
|
96
97
|
return [4 /*yield*/, this.bumpVersionTxtTask.run(options)];
|
|
97
98
|
case 6:
|
|
98
99
|
cont = _a.sent();
|
|
99
100
|
if (!cont)
|
|
100
|
-
return [2 /*return
|
|
101
|
+
return [2 /*return*/, false];
|
|
101
102
|
return [4 /*yield*/, this.createMergeRequestTask.run(options)];
|
|
102
103
|
case 7:
|
|
103
|
-
_a.sent();
|
|
104
|
-
|
|
104
|
+
cont = _a.sent();
|
|
105
|
+
if (!cont)
|
|
106
|
+
return [2 /*return*/, false];
|
|
107
|
+
if (!options.triggerMonorepoBuild)
|
|
108
|
+
return [2 /*return*/, false];
|
|
109
|
+
return [4 /*yield*/, this.startMonorepoBuildTask.run(options)];
|
|
110
|
+
case 8: return [2 /*return*/, _a.sent()];
|
|
105
111
|
}
|
|
106
112
|
});
|
|
107
113
|
});
|
|
@@ -115,7 +121,8 @@ var ReleaseCommand = /** @class */ (function () {
|
|
|
115
121
|
__param(4, (0, inversify_1.inject)(types_1.TASKS.CreateBranchTask)),
|
|
116
122
|
__param(5, (0, inversify_1.inject)(types_1.TASKS.BumpVersionTxtTask)),
|
|
117
123
|
__param(6, (0, inversify_1.inject)(types_1.TASKS.CreateMergeRequestTask)),
|
|
118
|
-
|
|
124
|
+
__param(7, (0, inversify_1.inject)(types_1.TASKS.StartMonorepoBuildTask)),
|
|
125
|
+
__metadata("design:paramtypes", [Object, Object, Object, Object, Object, Object, Object, Object])
|
|
119
126
|
], ReleaseCommand);
|
|
120
127
|
return ReleaseCommand;
|
|
121
128
|
}());
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
15
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
16
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
17
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
18
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
19
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
20
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
24
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
25
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
26
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
27
|
+
function step(op) {
|
|
28
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
29
|
+
while (_) try {
|
|
30
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
31
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
32
|
+
switch (op[0]) {
|
|
33
|
+
case 0: case 1: t = op; break;
|
|
34
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
35
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
36
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
37
|
+
default:
|
|
38
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
39
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
40
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
41
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
42
|
+
if (t[2]) _.ops.pop();
|
|
43
|
+
_.trys.pop(); continue;
|
|
44
|
+
}
|
|
45
|
+
op = body.call(thisArg, _);
|
|
46
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
47
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
51
|
+
exports.StartConsumingProjectBuildsCommand = void 0;
|
|
52
|
+
require("reflect-metadata");
|
|
53
|
+
var inversify_1 = require("inversify");
|
|
54
|
+
var types_1 = require("../types");
|
|
55
|
+
var StartConsumingProjectBuildsCommand = /** @class */ (function () {
|
|
56
|
+
function StartConsumingProjectBuildsCommand(startConsumingProjectBuildsTask) {
|
|
57
|
+
this.startConsumingProjectBuildsTask = startConsumingProjectBuildsTask;
|
|
58
|
+
}
|
|
59
|
+
StartConsumingProjectBuildsCommand.prototype.run = function (options) {
|
|
60
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
61
|
+
return __generator(this, function (_a) {
|
|
62
|
+
switch (_a.label) {
|
|
63
|
+
case 0: return [4 /*yield*/, this.startConsumingProjectBuildsTask.run(options)];
|
|
64
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
});
|
|
68
|
+
};
|
|
69
|
+
StartConsumingProjectBuildsCommand = __decorate([
|
|
70
|
+
(0, inversify_1.injectable)(),
|
|
71
|
+
__param(0, (0, inversify_1.inject)(types_1.TASKS.StartConsumingProjectBuildsTask)),
|
|
72
|
+
__metadata("design:paramtypes", [Object])
|
|
73
|
+
], StartConsumingProjectBuildsCommand);
|
|
74
|
+
return StartConsumingProjectBuildsCommand;
|
|
75
|
+
}());
|
|
76
|
+
exports.StartConsumingProjectBuildsCommand = StartConsumingProjectBuildsCommand;
|
|
@@ -61,9 +61,7 @@ var StatusCommand = /** @class */ (function () {
|
|
|
61
61
|
return __generator(this, function (_a) {
|
|
62
62
|
switch (_a.label) {
|
|
63
63
|
case 0: return [4 /*yield*/, this.validateTask.run(options)];
|
|
64
|
-
case 1:
|
|
65
|
-
_a.sent();
|
|
66
|
-
return [2 /*return*/];
|
|
64
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
67
65
|
}
|
|
68
66
|
});
|
|
69
67
|
});
|
|
@@ -61,9 +61,7 @@ var ValidateMergeRequestCommand = /** @class */ (function () {
|
|
|
61
61
|
return __generator(this, function (_a) {
|
|
62
62
|
switch (_a.label) {
|
|
63
63
|
case 0: return [4 /*yield*/, this.validateMergeRequestTask.run(options)];
|
|
64
|
-
case 1:
|
|
65
|
-
_a.sent();
|
|
66
|
-
return [2 /*return*/];
|
|
64
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
67
65
|
}
|
|
68
66
|
});
|
|
69
67
|
});
|
|
@@ -61,9 +61,7 @@ var VersionCommand = /** @class */ (function () {
|
|
|
61
61
|
return __generator(this, function (_a) {
|
|
62
62
|
switch (_a.label) {
|
|
63
63
|
case 0: return [4 /*yield*/, this.versionTask.run(options)];
|
|
64
|
-
case 1:
|
|
65
|
-
_a.sent();
|
|
66
|
-
return [2 /*return*/];
|
|
64
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
67
65
|
}
|
|
68
66
|
});
|
|
69
67
|
});
|
|
@@ -20,6 +20,7 @@ __exportStar(require("./CreateMergeRequestCommand"), exports);
|
|
|
20
20
|
__exportStar(require("./CreateReleaseNotesCommand"), exports);
|
|
21
21
|
__exportStar(require("./InstallPackagesCommand"), exports);
|
|
22
22
|
__exportStar(require("./ReleaseCommand"), exports);
|
|
23
|
+
__exportStar(require("./StartConsumingProjectBuildsCommand"), exports);
|
|
23
24
|
__exportStar(require("./StatusCommand"), exports);
|
|
24
25
|
__exportStar(require("./ValidateMergeRequestCommand"), exports);
|
|
25
26
|
__exportStar(require("./VersionCommand"), exports);
|
|
@@ -11,5 +11,6 @@ exports.CommandTypeMapping = {
|
|
|
11
11
|
'create-notes': types_1.COMMANDS.CreateReleaseNotesCommand,
|
|
12
12
|
'install-packages': types_1.COMMANDS.InstallPackagesCommand,
|
|
13
13
|
'bump-packages': types_1.COMMANDS.BumpPackagesCommand,
|
|
14
|
+
'start-consuming-project-builds': types_1.COMMANDS.StartConsumingProjectBuildsCommand,
|
|
14
15
|
'validate-mr': types_1.COMMANDS.ValidateMergeRequestCommand
|
|
15
16
|
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.TeamCityBuildIds = void 0;
|
|
5
|
+
var utils_1 = require("../utils");
|
|
6
|
+
exports.TeamCityBuildIds = (_a = {},
|
|
7
|
+
_a[utils_1.PROJECT_NAMES.monorepo] = 'Frontend_BuildAndPublishReleaseCandidate',
|
|
8
|
+
_a[utils_1.PROJECT_NAMES.online] = 'online_web_build_and_package',
|
|
9
|
+
_a[utils_1.PROJECT_NAMES.curator] = 'curator_web_build_and_package',
|
|
10
|
+
_a[utils_1.PROJECT_NAMES.cloud] = 'ClickViewCloud_BuildAndPackageDocker',
|
|
11
|
+
_a[utils_1.PROJECT_NAMES.reports] = 'Web_AnalyticsWeb_BuildAndPackageDocker',
|
|
12
|
+
_a[utils_1.PROJECT_NAMES.lite] = 'ClickViewLiteWeb_BuildAndPackageDocker',
|
|
13
|
+
_a);
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./CommandTypeMapping"), exports);
|
|
18
|
+
__exportStar(require("./MonorepoPackageJsonFiles"), exports);
|
package/lib/src/index.js
CHANGED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./MilestoneCommandCliOptions"), exports);
|
|
18
|
+
__exportStar(require("./ReleaseCommandCliOptions"), exports);
|
|
@@ -15,6 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./BumpPackagesCommandOptions"), exports);
|
|
18
|
-
__exportStar(require("./
|
|
18
|
+
__exportStar(require("./DockerMilestoneCommandOptions"), exports);
|
|
19
19
|
__exportStar(require("./MilestoneCommandOptions"), exports);
|
|
20
20
|
__exportStar(require("./ValidateMRCommandOptions"), exports);
|
|
21
|
+
__exportStar(require("./ReleaseCommandOptions"), exports);
|
|
@@ -14,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./command-cli-options"), exports);
|
|
17
18
|
__exportStar(require("./command-options"), exports);
|
|
18
19
|
__exportStar(require("./models"), exports);
|
|
19
20
|
__exportStar(require("./view-models"), exports);
|
|
@@ -13,14 +13,17 @@ function createContainer(config) {
|
|
|
13
13
|
* Misc
|
|
14
14
|
*/
|
|
15
15
|
container.bind(types_1.MISC.GitLabConfig).toConstantValue(config.gitLab);
|
|
16
|
+
container.bind(types_1.MISC.TeamCityConfig).toConstantValue(config.teamCity);
|
|
16
17
|
/**
|
|
17
18
|
* Clients
|
|
18
19
|
*/
|
|
19
20
|
container.bind(types_1.API_CLIENTS.GitLabApiClient).to(api_clients_1.GitLabApiClient);
|
|
21
|
+
container.bind(types_1.API_CLIENTS.TeamCityApiClient).to(api_clients_1.TeamCityApiClient);
|
|
20
22
|
/**
|
|
21
23
|
* Services
|
|
22
24
|
*/
|
|
23
25
|
container.bind(types_1.SERVICES.GitLabService).to(services_1.GitLabService).inSingletonScope();
|
|
26
|
+
container.bind(types_1.SERVICES.TeamCityService).to(services_1.TeamCityService).inSingletonScope();
|
|
24
27
|
/**
|
|
25
28
|
* Tasks
|
|
26
29
|
*/
|
|
@@ -36,6 +39,9 @@ function createContainer(config) {
|
|
|
36
39
|
container.bind(types_1.TASKS.BumpPackagesTask).to(tasks_1.BumpPackagesTask);
|
|
37
40
|
container.bind(types_1.TASKS.CommitPackageVersionsTask).to(tasks_1.CommitPackageVersionsTask);
|
|
38
41
|
container.bind(types_1.TASKS.ValidateMergeRequestTask).to(tasks_1.ValidateMergeRequestTask);
|
|
42
|
+
container.bind(types_1.TASKS.StartMonorepoBuildTask).to(tasks_1.StartMonorepoBuildTask);
|
|
43
|
+
container.bind(types_1.TASKS.StartConsumingProjectBuildsTask)
|
|
44
|
+
.to(tasks_1.StartConsumingProjectBuildsTask);
|
|
39
45
|
/**
|
|
40
46
|
* Commands
|
|
41
47
|
*/
|
|
@@ -48,6 +54,8 @@ function createContainer(config) {
|
|
|
48
54
|
container.bind(types_1.COMMANDS.InstallPackagesCommand).to(commands_1.InstallPackagesCommand);
|
|
49
55
|
container.bind(types_1.COMMANDS.BumpPackagesCommand).to(commands_1.BumpPackagesCommand);
|
|
50
56
|
container.bind(types_1.COMMANDS.ValidateMergeRequestCommand).to(commands_1.ValidateMergeRequestCommand);
|
|
57
|
+
container.bind(types_1.COMMANDS.StartConsumingProjectBuildsCommand)
|
|
58
|
+
.to(commands_1.StartConsumingProjectBuildsCommand);
|
|
51
59
|
return container;
|
|
52
60
|
}
|
|
53
61
|
exports.createContainer = createContainer;
|
|
@@ -202,6 +202,39 @@ var GitLabService = /** @class */ (function () {
|
|
|
202
202
|
GitLabService.prototype.getMilestone = function (projectId, milestoneName) {
|
|
203
203
|
return this.apiClient.getMilestone(projectId, milestoneName);
|
|
204
204
|
};
|
|
205
|
+
GitLabService.prototype.getReleaseBranchNameMilestone = function (projectId, milestone) {
|
|
206
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
207
|
+
var releaseMR;
|
|
208
|
+
return __generator(this, function (_a) {
|
|
209
|
+
switch (_a.label) {
|
|
210
|
+
case 0: return [4 /*yield*/, this.apiClient.getReleaseMergeRequest(projectId, milestone)];
|
|
211
|
+
case 1:
|
|
212
|
+
releaseMR = _a.sent();
|
|
213
|
+
if (!releaseMR)
|
|
214
|
+
return [2 /*return*/, null];
|
|
215
|
+
return [2 /*return*/, releaseMR.sourceBranch];
|
|
216
|
+
}
|
|
217
|
+
});
|
|
218
|
+
});
|
|
219
|
+
};
|
|
220
|
+
GitLabService.prototype.getMilestoneByBranchName = function (projectId, branchName) {
|
|
221
|
+
var _a, _b;
|
|
222
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
223
|
+
var mergeRequest;
|
|
224
|
+
return __generator(this, function (_c) {
|
|
225
|
+
switch (_c.label) {
|
|
226
|
+
case 0: return [4 /*yield*/, this.getMergeRequest(projectId, branchName)];
|
|
227
|
+
case 1:
|
|
228
|
+
mergeRequest = _c.sent();
|
|
229
|
+
if (!mergeRequest)
|
|
230
|
+
throw new errors_1.ShipItError("No merge request in project \"monorepo\" with branch name \"".concat(branchName, "\" could be found."));
|
|
231
|
+
if (!mergeRequest.milestone)
|
|
232
|
+
throw new errors_1.ShipItError("No milestone could be found on merge request \"".concat(mergeRequest.title, "\". Please attach a milestone then try again: ").concat(mergeRequest.url));
|
|
233
|
+
return [2 /*return*/, (_b = (_a = mergeRequest.milestone) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : ''];
|
|
234
|
+
}
|
|
235
|
+
});
|
|
236
|
+
});
|
|
237
|
+
};
|
|
205
238
|
GitLabService.prototype.bumpVersionTxt = function (projectId, branchName, newVersion) {
|
|
206
239
|
return __awaiter(this, void 0, void 0, function () {
|
|
207
240
|
var versionTxt, buff, text;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.TeamCityService = void 0;
|
|
16
|
+
require("reflect-metadata");
|
|
17
|
+
var inversify_1 = require("inversify");
|
|
18
|
+
var types_1 = require("../types");
|
|
19
|
+
var api_clients_1 = require("../api-clients");
|
|
20
|
+
var TeamCityService = /** @class */ (function () {
|
|
21
|
+
function TeamCityService(apiClient) {
|
|
22
|
+
this.apiClient = apiClient;
|
|
23
|
+
}
|
|
24
|
+
TeamCityService.prototype.startBuild = function (buildId, branchName) {
|
|
25
|
+
return this.apiClient.startBuild(buildId, branchName);
|
|
26
|
+
};
|
|
27
|
+
TeamCityService = __decorate([
|
|
28
|
+
(0, inversify_1.injectable)(),
|
|
29
|
+
__param(0, (0, inversify_1.inject)(types_1.API_CLIENTS.TeamCityApiClient)),
|
|
30
|
+
__metadata("design:paramtypes", [api_clients_1.TeamCityApiClient])
|
|
31
|
+
], TeamCityService);
|
|
32
|
+
return TeamCityService;
|
|
33
|
+
}());
|
|
34
|
+
exports.TeamCityService = TeamCityService;
|
|
@@ -36,8 +36,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
36
36
|
}
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.getAddMilestoneCommand = void 0;
|
|
40
|
-
var CommandTypeMapping_1 = require("../constants/CommandTypeMapping");
|
|
39
|
+
exports.processMilestoneCommandOptions = exports.getAddMilestoneCommand = void 0;
|
|
41
40
|
var utils_1 = require("../utils");
|
|
42
41
|
function processOptions(options) {
|
|
43
42
|
var opts = {
|
|
@@ -54,7 +53,8 @@ function processOptions(options) {
|
|
|
54
53
|
opts.version = 'patch';
|
|
55
54
|
return opts;
|
|
56
55
|
}
|
|
57
|
-
|
|
56
|
+
exports.processMilestoneCommandOptions = processOptions;
|
|
57
|
+
var getAddMilestoneCommand = function (program, getAction) {
|
|
58
58
|
return function addMilestoneCommand(name, description) {
|
|
59
59
|
var _this = this;
|
|
60
60
|
program.command(name)
|
|
@@ -63,11 +63,17 @@ var getAddMilestoneCommand = function (program, container) {
|
|
|
63
63
|
.option('-p, --projectIds <projectIds...>')
|
|
64
64
|
.option('--hotfix')
|
|
65
65
|
.option('--major')
|
|
66
|
-
.action(function (
|
|
66
|
+
.action(function (opts) { return __awaiter(_this, void 0, void 0, function () {
|
|
67
|
+
var options;
|
|
67
68
|
return __generator(this, function (_a) {
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
69
|
+
switch (_a.label) {
|
|
70
|
+
case 0:
|
|
71
|
+
options = processOptions(opts);
|
|
72
|
+
return [4 /*yield*/, getAction(name)(options)];
|
|
73
|
+
case 1:
|
|
74
|
+
_a.sent();
|
|
75
|
+
return [2 /*return*/];
|
|
76
|
+
}
|
|
71
77
|
});
|
|
72
78
|
}); });
|
|
73
79
|
};
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.getActionBuilder = void 0;
|
|
40
|
+
var constants_1 = require("../constants");
|
|
41
|
+
var errors_1 = require("../errors");
|
|
42
|
+
var getActionBuilder = function (program, container) {
|
|
43
|
+
return function (command) {
|
|
44
|
+
return function (options) { return __awaiter(void 0, void 0, void 0, function () {
|
|
45
|
+
var result, err_1;
|
|
46
|
+
return __generator(this, function (_a) {
|
|
47
|
+
switch (_a.label) {
|
|
48
|
+
case 0:
|
|
49
|
+
_a.trys.push([0, 2, , 3]);
|
|
50
|
+
return [4 /*yield*/, container.get(constants_1.CommandTypeMapping[command]).run(options)];
|
|
51
|
+
case 1:
|
|
52
|
+
result = _a.sent();
|
|
53
|
+
if (!result)
|
|
54
|
+
program.error('Command did not successfully complete');
|
|
55
|
+
return [3 /*break*/, 3];
|
|
56
|
+
case 2:
|
|
57
|
+
err_1 = _a.sent();
|
|
58
|
+
if (!(err_1 instanceof errors_1.ShipItError))
|
|
59
|
+
throw err_1;
|
|
60
|
+
program.error(err_1.message);
|
|
61
|
+
return [3 /*break*/, 3];
|
|
62
|
+
case 3: return [2 /*return*/];
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
}); };
|
|
66
|
+
};
|
|
67
|
+
};
|
|
68
|
+
exports.getActionBuilder = getActionBuilder;
|