@clickview/ship-it 0.0.2 → 0.0.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/lib/src/api-clients/{GitLabApiClient.js → git-lab/GitLabApiClient.js} +82 -107
- package/lib/src/api-clients/git-lab/GitLabMapper.js +60 -0
- package/lib/src/api-clients/index.js +1 -1
- package/lib/src/commands/BumpPackagesCommand.js +12 -4
- package/lib/src/commands/CreateBranchCommand.js +8 -8
- package/lib/src/commands/CreateMergeRequestCommand.js +11 -11
- package/lib/src/commands/CreateReleaseNotesCommand.js +4 -4
- package/lib/src/commands/InstallPackagesCommand.js +78 -0
- package/lib/src/commands/ReleaseCommand.js +14 -14
- package/lib/src/commands/StatusCommand.js +2 -2
- package/lib/src/commands/ValidateMergeRequestCommand.js +78 -0
- package/lib/src/commands/VersionCommand.js +2 -2
- package/lib/src/commands/index.js +2 -0
- package/lib/src/constants/CommandTypeMapping.js +15 -0
- package/lib/src/constants/MonorepoPackageJsonFiles.js +13 -0
- package/lib/src/errors/ShipItError.js +32 -0
- package/lib/src/errors/index.js +17 -0
- package/lib/src/index.js +3 -86
- package/lib/src/interfaces/command-options/BumpPackagesCommandOptions.js +2 -0
- package/lib/src/interfaces/command-options/InstallPackagesCommandOptions.js +2 -0
- package/lib/src/interfaces/command-options/MilestoneCommandOptions.js +2 -0
- package/lib/src/interfaces/command-options/ValidateMRCommandOptions.js +2 -0
- package/lib/src/interfaces/command-options/index.js +20 -0
- package/lib/src/interfaces/index.js +2 -1
- package/lib/src/interfaces/models/Milestone.js +2 -0
- package/lib/src/interfaces/models/index.js +1 -0
- package/lib/src/inversify.config.js +5 -0
- package/lib/src/services/GitLabService.js +95 -34
- package/lib/src/startup/AddMilestoneCommand.js +75 -0
- package/lib/src/startup/SetupCommands.js +92 -0
- package/lib/src/tasks/BumpPackagesTask.js +114 -238
- package/lib/src/tasks/BumpVersionTxtTask.js +13 -26
- package/lib/src/tasks/CommitPackageVersionsTask.js +105 -0
- package/lib/src/tasks/CreateBranchTask.js +17 -32
- package/lib/src/tasks/CreateMergeRequestTask.js +22 -37
- package/lib/src/tasks/CreateReleaseNotesTask.js +2 -6
- package/lib/src/tasks/InstallPackagesTask.js +358 -0
- package/lib/src/tasks/ValidateCommitsTask.js +6 -14
- package/lib/src/tasks/ValidateDescriptionsTask.js +15 -16
- package/lib/src/tasks/ValidateMergeRequestTask.js +108 -0
- package/lib/src/tasks/ValidateTask.js +7 -8
- package/lib/src/tasks/VersionTask.js +7 -20
- package/lib/src/tasks/index.js +3 -0
- package/lib/src/types.js +7 -2
- package/lib/src/utils/Descriptions.js +28 -23
- package/lib/src/utils/ProjectIds.js +7 -3
- package/package.json +22 -22
- /package/lib/src/interfaces/{ShipItOptions.js → VersionType.js} +0 -0
|
@@ -54,51 +54,51 @@ var inversify_1 = require("inversify");
|
|
|
54
54
|
var types_1 = require("../types");
|
|
55
55
|
var ReleaseCommand = /** @class */ (function () {
|
|
56
56
|
function ReleaseCommand(validateTask, versionTask, validateDescriptionsTask, validateCommitsTask, createBranchTask, bumpVersionTxtTask, createMergeRequestTask) {
|
|
57
|
-
this.
|
|
58
|
-
this.
|
|
59
|
-
this.
|
|
60
|
-
this.
|
|
61
|
-
this.
|
|
62
|
-
this.
|
|
63
|
-
this.
|
|
57
|
+
this.validateTask = validateTask;
|
|
58
|
+
this.versionTask = versionTask;
|
|
59
|
+
this.validateDescriptionsTask = validateDescriptionsTask;
|
|
60
|
+
this.validateCommitsTask = validateCommitsTask;
|
|
61
|
+
this.createBranchTask = createBranchTask;
|
|
62
|
+
this.bumpVersionTxtTask = bumpVersionTxtTask;
|
|
63
|
+
this.createMergeRequestTask = createMergeRequestTask;
|
|
64
64
|
}
|
|
65
65
|
ReleaseCommand.prototype.run = function (options) {
|
|
66
66
|
return __awaiter(this, void 0, void 0, function () {
|
|
67
67
|
var cont;
|
|
68
68
|
return __generator(this, function (_a) {
|
|
69
69
|
switch (_a.label) {
|
|
70
|
-
case 0: return [4 /*yield*/, this.
|
|
70
|
+
case 0: return [4 /*yield*/, this.validateTask.run(options)];
|
|
71
71
|
case 1:
|
|
72
72
|
cont = _a.sent();
|
|
73
73
|
// Check if we want to continue with inquirer?
|
|
74
74
|
if (!cont)
|
|
75
75
|
return [2 /*return*/];
|
|
76
|
-
return [4 /*yield*/, this.
|
|
76
|
+
return [4 /*yield*/, this.versionTask.run(options)];
|
|
77
77
|
case 2:
|
|
78
78
|
cont = _a.sent();
|
|
79
79
|
if (!cont)
|
|
80
80
|
return [2 /*return*/];
|
|
81
|
-
return [4 /*yield*/, this.
|
|
81
|
+
return [4 /*yield*/, this.validateDescriptionsTask.run(options)];
|
|
82
82
|
case 3:
|
|
83
83
|
cont = _a.sent();
|
|
84
84
|
if (!cont)
|
|
85
85
|
return [2 /*return*/];
|
|
86
|
-
return [4 /*yield*/, this.
|
|
86
|
+
return [4 /*yield*/, this.validateCommitsTask.run(options)];
|
|
87
87
|
case 4:
|
|
88
88
|
cont = _a.sent();
|
|
89
89
|
if (!cont)
|
|
90
90
|
return [2 /*return*/];
|
|
91
|
-
return [4 /*yield*/, this.
|
|
91
|
+
return [4 /*yield*/, this.createBranchTask.run(options)];
|
|
92
92
|
case 5:
|
|
93
93
|
cont = _a.sent();
|
|
94
94
|
if (!cont)
|
|
95
95
|
return [2 /*return*/];
|
|
96
|
-
return [4 /*yield*/, this.
|
|
96
|
+
return [4 /*yield*/, this.bumpVersionTxtTask.run(options)];
|
|
97
97
|
case 6:
|
|
98
98
|
cont = _a.sent();
|
|
99
99
|
if (!cont)
|
|
100
100
|
return [2 /*return*/];
|
|
101
|
-
return [4 /*yield*/, this.
|
|
101
|
+
return [4 /*yield*/, this.createMergeRequestTask.run(options)];
|
|
102
102
|
case 7:
|
|
103
103
|
_a.sent();
|
|
104
104
|
return [2 /*return*/];
|
|
@@ -54,13 +54,13 @@ var inversify_1 = require("inversify");
|
|
|
54
54
|
var types_1 = require("../types");
|
|
55
55
|
var StatusCommand = /** @class */ (function () {
|
|
56
56
|
function StatusCommand(validateTask) {
|
|
57
|
-
this.
|
|
57
|
+
this.validateTask = validateTask;
|
|
58
58
|
}
|
|
59
59
|
StatusCommand.prototype.run = function (options) {
|
|
60
60
|
return __awaiter(this, void 0, void 0, function () {
|
|
61
61
|
return __generator(this, function (_a) {
|
|
62
62
|
switch (_a.label) {
|
|
63
|
-
case 0: return [4 /*yield*/, this.
|
|
63
|
+
case 0: return [4 /*yield*/, this.validateTask.run(options)];
|
|
64
64
|
case 1:
|
|
65
65
|
_a.sent();
|
|
66
66
|
return [2 /*return*/];
|
|
@@ -0,0 +1,78 @@
|
|
|
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.ValidateMergeRequestCommand = void 0;
|
|
52
|
+
require("reflect-metadata");
|
|
53
|
+
var inversify_1 = require("inversify");
|
|
54
|
+
var types_1 = require("../types");
|
|
55
|
+
var ValidateMergeRequestCommand = /** @class */ (function () {
|
|
56
|
+
function ValidateMergeRequestCommand(validateMergeRequestTask) {
|
|
57
|
+
this.validateMergeRequestTask = validateMergeRequestTask;
|
|
58
|
+
}
|
|
59
|
+
ValidateMergeRequestCommand.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.validateMergeRequestTask.run(options)];
|
|
64
|
+
case 1:
|
|
65
|
+
_a.sent();
|
|
66
|
+
return [2 /*return*/];
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
});
|
|
70
|
+
};
|
|
71
|
+
ValidateMergeRequestCommand = __decorate([
|
|
72
|
+
(0, inversify_1.injectable)(),
|
|
73
|
+
__param(0, (0, inversify_1.inject)(types_1.TASKS.ValidateMergeRequestTask)),
|
|
74
|
+
__metadata("design:paramtypes", [Object])
|
|
75
|
+
], ValidateMergeRequestCommand);
|
|
76
|
+
return ValidateMergeRequestCommand;
|
|
77
|
+
}());
|
|
78
|
+
exports.ValidateMergeRequestCommand = ValidateMergeRequestCommand;
|
|
@@ -54,13 +54,13 @@ var inversify_1 = require("inversify");
|
|
|
54
54
|
var types_1 = require("../types");
|
|
55
55
|
var VersionCommand = /** @class */ (function () {
|
|
56
56
|
function VersionCommand(versionTask) {
|
|
57
|
-
this.
|
|
57
|
+
this.versionTask = versionTask;
|
|
58
58
|
}
|
|
59
59
|
VersionCommand.prototype.run = function (options) {
|
|
60
60
|
return __awaiter(this, void 0, void 0, function () {
|
|
61
61
|
return __generator(this, function (_a) {
|
|
62
62
|
switch (_a.label) {
|
|
63
|
-
case 0: return [4 /*yield*/, this.
|
|
63
|
+
case 0: return [4 /*yield*/, this.versionTask.run(options)];
|
|
64
64
|
case 1:
|
|
65
65
|
_a.sent();
|
|
66
66
|
return [2 /*return*/];
|
|
@@ -18,6 +18,8 @@ __exportStar(require("./BumpPackagesCommand"), exports);
|
|
|
18
18
|
__exportStar(require("./CreateBranchCommand"), exports);
|
|
19
19
|
__exportStar(require("./CreateMergeRequestCommand"), exports);
|
|
20
20
|
__exportStar(require("./CreateReleaseNotesCommand"), exports);
|
|
21
|
+
__exportStar(require("./InstallPackagesCommand"), exports);
|
|
21
22
|
__exportStar(require("./ReleaseCommand"), exports);
|
|
22
23
|
__exportStar(require("./StatusCommand"), exports);
|
|
24
|
+
__exportStar(require("./ValidateMergeRequestCommand"), exports);
|
|
23
25
|
__exportStar(require("./VersionCommand"), exports);
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CommandTypeMapping = void 0;
|
|
4
|
+
var types_1 = require("../types");
|
|
5
|
+
exports.CommandTypeMapping = {
|
|
6
|
+
'status': types_1.COMMANDS.StatusCommand,
|
|
7
|
+
'version': types_1.COMMANDS.VersionCommand,
|
|
8
|
+
'release': types_1.COMMANDS.ReleaseCommand,
|
|
9
|
+
'create-branches': types_1.COMMANDS.CreateBranchCommand,
|
|
10
|
+
'create-mrs': types_1.COMMANDS.CreateMergeRequestCommand,
|
|
11
|
+
'create-notes': types_1.COMMANDS.CreateReleaseNotesCommand,
|
|
12
|
+
'install-packages': types_1.COMMANDS.InstallPackagesCommand,
|
|
13
|
+
'bump-packages': types_1.COMMANDS.BumpPackagesCommand,
|
|
14
|
+
'validate-mr': types_1.COMMANDS.ValidateMergeRequestCommand
|
|
15
|
+
};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MONOREPO_PACKAGE_JSON_FILES = void 0;
|
|
4
|
+
exports.MONOREPO_PACKAGE_JSON_FILES = [
|
|
5
|
+
'packages/libs/analytics/package.json',
|
|
6
|
+
'packages/libs/styles/package.json',
|
|
7
|
+
'packages/libs/tooling/package.json',
|
|
8
|
+
'packages/projects/curator/package.json',
|
|
9
|
+
'packages/projects/library-editor/package.json',
|
|
10
|
+
'packages/projects/lite/package.json',
|
|
11
|
+
'packages/projects/online/package.json',
|
|
12
|
+
'packages/projects/reports/package.json'
|
|
13
|
+
];
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.ShipItError = void 0;
|
|
19
|
+
var ShipItError = /** @class */ (function (_super) {
|
|
20
|
+
__extends(ShipItError, _super);
|
|
21
|
+
function ShipItError(message) {
|
|
22
|
+
var _this = _super.call(this, message) || this;
|
|
23
|
+
/**
|
|
24
|
+
* Need to do this to extend errors in typescript and still be able to use instanceof in a catch statement
|
|
25
|
+
* https://stackoverflow.com/questions/31626231/custom-error-class-in-typescript/41429145
|
|
26
|
+
*/
|
|
27
|
+
Object.setPrototypeOf(_this, ShipItError.prototype);
|
|
28
|
+
return _this;
|
|
29
|
+
}
|
|
30
|
+
return ShipItError;
|
|
31
|
+
}(Error));
|
|
32
|
+
exports.ShipItError = ShipItError;
|
|
@@ -0,0 +1,17 @@
|
|
|
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("./ShipItError"), exports);
|
package/lib/src/index.js
CHANGED
|
@@ -1,101 +1,18 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
1
|
+
#!/usr/bin/env node
|
|
2
2
|
"use strict";
|
|
3
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
4
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
5
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
6
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
7
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
8
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
9
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
10
|
-
});
|
|
11
|
-
};
|
|
12
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
13
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
14
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
15
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
16
|
-
function step(op) {
|
|
17
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
18
|
-
while (_) try {
|
|
19
|
-
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;
|
|
20
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
21
|
-
switch (op[0]) {
|
|
22
|
-
case 0: case 1: t = op; break;
|
|
23
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
24
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
25
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
26
|
-
default:
|
|
27
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
28
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
29
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
30
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
31
|
-
if (t[2]) _.ops.pop();
|
|
32
|
-
_.trys.pop(); continue;
|
|
33
|
-
}
|
|
34
|
-
op = body.call(thisArg, _);
|
|
35
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
36
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
37
|
-
}
|
|
38
|
-
};
|
|
39
3
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
40
4
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
41
5
|
};
|
|
42
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
43
7
|
var commander_1 = require("commander");
|
|
44
8
|
var inversify_config_1 = require("./inversify.config");
|
|
45
|
-
var
|
|
46
|
-
var utils_1 = require("./utils");
|
|
9
|
+
var SetupCommands_1 = require("./startup/SetupCommands");
|
|
47
10
|
var config_json_1 = __importDefault(require("../config.json"));
|
|
48
|
-
function processOptions(options) {
|
|
49
|
-
var opts = {
|
|
50
|
-
milestone: options.milestone,
|
|
51
|
-
version: 'minor'
|
|
52
|
-
};
|
|
53
|
-
if (options.projectIds)
|
|
54
|
-
opts.projectIds = utils_1.ProjectIds.getProjectIds(options.projectIds);
|
|
55
|
-
if (options.hotfix && options.major)
|
|
56
|
-
throw new Error('Cannot pass both --hotfix and --major options');
|
|
57
|
-
if (options.major)
|
|
58
|
-
opts.version = 'major';
|
|
59
|
-
if (options.hotfix)
|
|
60
|
-
opts.version = 'patch';
|
|
61
|
-
return opts;
|
|
62
|
-
}
|
|
63
|
-
var commandTypeMapping = {
|
|
64
|
-
'status': types_1.COMMANDS.StatusCommand,
|
|
65
|
-
'version': types_1.COMMANDS.VersionCommand,
|
|
66
|
-
'release': types_1.COMMANDS.ReleaseCommand,
|
|
67
|
-
'create-branches': types_1.COMMANDS.CreateBranchCommand,
|
|
68
|
-
'create-mrs': types_1.COMMANDS.CreateMergeRequestCommand,
|
|
69
|
-
'create-notes': types_1.COMMANDS.CreateReleaseNotesCommand,
|
|
70
|
-
'bump-packages': types_1.COMMANDS.BumpPackagesCommand
|
|
71
|
-
};
|
|
72
|
-
function addCommand(name, description) {
|
|
73
|
-
var _this = this;
|
|
74
|
-
program.command(name)
|
|
75
|
-
.description(description)
|
|
76
|
-
.requiredOption('-m, --milestone <milestone>')
|
|
77
|
-
.option('-p, --projectIds <projectIds...>')
|
|
78
|
-
.option('--hotfix')
|
|
79
|
-
.option('--major')
|
|
80
|
-
.action(function (options) { return __awaiter(_this, void 0, void 0, function () {
|
|
81
|
-
return __generator(this, function (_a) {
|
|
82
|
-
container.get(commandTypeMapping[name])
|
|
83
|
-
.run(processOptions(options));
|
|
84
|
-
return [2 /*return*/];
|
|
85
|
-
});
|
|
86
|
-
}); });
|
|
87
|
-
}
|
|
88
11
|
var program = new commander_1.Command();
|
|
89
12
|
program
|
|
90
13
|
.name('ship-it')
|
|
91
14
|
.description('ClickView Release Manager')
|
|
92
15
|
.version('0.0.0');
|
|
93
16
|
var container = (0, inversify_config_1.createContainer)(config_json_1.default);
|
|
94
|
-
|
|
95
|
-
addCommand('version', 'Display the versions that will be used for the release');
|
|
96
|
-
addCommand('create-branches', 'Create release branches for all projects that are part of a milestone');
|
|
97
|
-
addCommand('create-mrs', 'Create merge requests for all projects that are part of a milestone');
|
|
98
|
-
addCommand('create-notes', 'Builds descriptions for all projects that are part of a milestone');
|
|
99
|
-
addCommand('release', 'Create releases for all projects that are part of a milestone');
|
|
100
|
-
addCommand('bump-packages', 'Bump consuming project npm packages for all projects that are part of a milestone');
|
|
17
|
+
(0, SetupCommands_1.setupCommands)(program, container);
|
|
101
18
|
program.parseAsync();
|
|
@@ -0,0 +1,20 @@
|
|
|
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("./BumpPackagesCommandOptions"), exports);
|
|
18
|
+
__exportStar(require("./InstallPackagesCommandOptions"), exports);
|
|
19
|
+
__exportStar(require("./MilestoneCommandOptions"), exports);
|
|
20
|
+
__exportStar(require("./ValidateMRCommandOptions"), exports);
|
|
@@ -14,9 +14,10 @@ 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-options"), exports);
|
|
17
18
|
__exportStar(require("./models"), exports);
|
|
18
19
|
__exportStar(require("./view-models"), exports);
|
|
19
20
|
__exportStar(require("./Config"), exports);
|
|
20
21
|
__exportStar(require("./ShipItCommand"), exports);
|
|
21
|
-
__exportStar(require("./ShipItOptions"), exports);
|
|
22
22
|
__exportStar(require("./ShipItTask"), exports);
|
|
23
|
+
__exportStar(require("./VersionType"), exports);
|
|
@@ -19,5 +19,6 @@ __exportStar(require("./Commit"), exports);
|
|
|
19
19
|
__exportStar(require("./CommitFile"), exports);
|
|
20
20
|
__exportStar(require("./File"), exports);
|
|
21
21
|
__exportStar(require("./MergeRequest"), exports);
|
|
22
|
+
__exportStar(require("./Milestone"), exports);
|
|
22
23
|
__exportStar(require("./Project"), exports);
|
|
23
24
|
__exportStar(require("./Tag"), exports);
|
|
@@ -32,7 +32,10 @@ function createContainer(config) {
|
|
|
32
32
|
container.bind(types_1.TASKS.CreateMergeRequestTask).to(tasks_1.CreateMergeRequestTask);
|
|
33
33
|
container.bind(types_1.TASKS.ValidateDescriptionsTask).to(tasks_1.ValidateDescriptionsTask);
|
|
34
34
|
container.bind(types_1.TASKS.CreateReleaseNotesTask).to(tasks_1.CreateReleaseNotesTask);
|
|
35
|
+
container.bind(types_1.TASKS.InstallPackagesTask).to(tasks_1.InstallPackagesTask);
|
|
35
36
|
container.bind(types_1.TASKS.BumpPackagesTask).to(tasks_1.BumpPackagesTask);
|
|
37
|
+
container.bind(types_1.TASKS.CommitPackageVersionsTask).to(tasks_1.CommitPackageVersionsTask);
|
|
38
|
+
container.bind(types_1.TASKS.ValidateMergeRequestTask).to(tasks_1.ValidateMergeRequestTask);
|
|
36
39
|
/**
|
|
37
40
|
* Commands
|
|
38
41
|
*/
|
|
@@ -42,7 +45,9 @@ function createContainer(config) {
|
|
|
42
45
|
container.bind(types_1.COMMANDS.CreateMergeRequestCommand).to(commands_1.CreateMergeRequestCommand);
|
|
43
46
|
container.bind(types_1.COMMANDS.ReleaseCommand).to(commands_1.ReleaseCommand);
|
|
44
47
|
container.bind(types_1.COMMANDS.CreateReleaseNotesCommand).to(commands_1.CreateReleaseNotesCommand);
|
|
48
|
+
container.bind(types_1.COMMANDS.InstallPackagesCommand).to(commands_1.InstallPackagesCommand);
|
|
45
49
|
container.bind(types_1.COMMANDS.BumpPackagesCommand).to(commands_1.BumpPackagesCommand);
|
|
50
|
+
container.bind(types_1.COMMANDS.ValidateMergeRequestCommand).to(commands_1.ValidateMergeRequestCommand);
|
|
46
51
|
return container;
|
|
47
52
|
}
|
|
48
53
|
exports.createContainer = createContainer;
|