@clickview/ship-it 0.0.26 → 0.0.27-dev.0
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 +1 -1
- package/dist/F1/Analytics Web.md +8 -0
- package/dist/F1/AutoCaptions.md +30 -0
- package/dist/F1/Classroom.Api.md +23 -0
- package/dist/F1/ClickView Online.md +17 -0
- package/dist/F1/ClickView.Curator.md +100 -0
- package/dist/F1/ClickView.EmailService.md +53 -0
- package/dist/F1/ClickView.OnlineApi.md +13 -0
- package/dist/F1/Clients.md +19 -0
- package/dist/F1/Domain.Api.md +23 -0
- package/dist/F1/Exchange.Web.md +8 -0
- package/dist/F1/Image.Api.md +8 -0
- package/dist/F1/Integrations.Api.md +23 -0
- package/dist/F1/Krakend.md +8 -0
- package/dist/F1/Library Editor.md +0 -0
- package/dist/F1/Lite.md +60 -0
- package/dist/F1/Master.Api.md +58 -0
- package/dist/F1/Master.Auth.md +22 -0
- package/dist/F1/Objects.Api.md +12 -0
- package/dist/F1/Permissions.Api.md +12 -0
- package/dist/F1/RealtimeSalesforceSync.md +14 -0
- package/dist/F1/Release Notes.md +990 -0
- package/dist/F1/Search.Api.md +12 -0
- package/dist/F1/StreamableLearning.Web.md +35 -0
- package/dist/F1/Users.Api.md +13 -0
- package/dist/F1/VideoProcessorService.md +23 -0
- package/dist/F1/clickview.md +321 -0
- package/dist/F2/Analytics Web.md +7 -0
- package/dist/F2/Batch.Api.md +27 -0
- package/dist/F2/ClickView Online.md +12 -0
- package/dist/F2/ClickView.Curator.md +166 -0
- package/dist/F2/Clients.md +14 -0
- package/dist/F2/CurriculumIngestion.Api.md +13 -0
- package/dist/F2/Discover.Api.md +64 -0
- package/dist/F2/Domain.Api.md +16 -0
- package/dist/F2/Exchange.Web.md +7 -0
- package/dist/F2/Krakend.md +12 -0
- package/dist/F2/Library Editor.md +11 -0
- package/dist/F2/Lite.md +30 -0
- package/dist/F2/Objects.Api.md +12 -0
- package/dist/F2/Release Notes.md +759 -0
- package/dist/F2/Search.Api.md +30 -0
- package/dist/F2/Share.Api.md +12 -0
- package/dist/F2/StreamableLearning.Web.md +14 -0
- package/dist/F2/Subjects.API.md +12 -0
- package/dist/F2/Tv.Web.md +8 -0
- package/dist/F2/Users.Api.md +21 -0
- package/dist/F2/clickview.md +200 -0
- package/dist/F2/shortcode-api.md +8 -0
- package/dist/F3.1/Analytics Web.md +8 -0
- package/dist/F3.1/ClickView.Curator.md +14 -0
- package/dist/F3.1/Discover.Api.md +14 -0
- package/dist/F3.1/Domain.Api.md +7 -0
- package/dist/F3.1/Exchange.Web.md +8 -0
- package/dist/F3.1/Library Editor.md +8 -0
- package/dist/F3.1/Lite.md +8 -0
- package/dist/F3.1/Objects.Api.md +7 -0
- package/dist/F3.1/Release Notes.md +207 -0
- package/dist/F3.1/Search.Api.md +14 -0
- package/dist/F3.1/Share.Api.md +10 -0
- package/dist/F3.1/Subjects.API.md +35 -0
- package/dist/F3.1/VideoViews.Api.md +7 -0
- package/dist/F3.1/clickview.md +28 -0
- package/lib/config.json +1 -1
- package/lib/src/api-clients/git-lab/GitLabApiClient.js +20 -1
- package/lib/src/api-clients/git-lab/GitLabMapper.js +1 -0
- package/lib/src/commands/CreateReleaseNotesCommand.js +12 -1
- package/lib/src/commands/ReleaseCommand.js +22 -34
- package/lib/src/commands/StartConsumingProjectBuildsCommand.js +76 -0
- package/lib/src/constants/ProjectNames.js +1 -0
- package/lib/src/constants/TeamCityBuildIDs.js +2 -1
- package/lib/src/index.js +0 -0
- package/lib/src/services/GitLabService.js +10 -3
- package/lib/src/services/SlackService.js +0 -3
- package/lib/src/startup/SetupCommands.js +3 -0
- package/lib/src/tasks/StartConsumingProjectBuildsTask.js +149 -0
- package/lib/src/tasks/StartProjectBuildsTask.js +38 -17
- package/lib/src/tasks/ValidateTask.js +105 -30
- package/package.json +5 -5
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
|
|
2
|
+
# Curator
|
|
3
|
+
|
|
4
|
+
## Customer changes
|
|
5
|
+
* Fix dashboard created time.
|
|
6
|
+
|
|
7
|
+
# Lite
|
|
8
|
+
|
|
9
|
+
## Customer changes
|
|
10
|
+
- Related videos will no longer display, unless the user has come from: A playlist, A series or a dashboard.
|
|
11
|
+
- Related videos will now only show 5 videos, with a chevron to be clicked to show 25.
|
|
12
|
+
- Student feed will no longer show the activity status checkbox
|
|
13
|
+
- Fix shared by me date not updating after direct sharing to previously shared recipient
|
|
14
|
+
|
|
15
|
+
## Code changes
|
|
16
|
+
- Sending `allowSubstitute=true` as a query param when searching. This is so search can disable substitutes for places don't need it.
|
|
17
|
+
- No longer polling for video progress if the visibility api says the document is hidden.
|
|
18
|
+
- My Videos no longer fetches the category tree until a user moves a folder.
|
|
19
|
+
- Update the braze-client package version
|
|
20
|
+
* Fix the runtime error in the search page.
|
|
21
|
+
* Only fetch the presentation when the slug is valid.
|
|
22
|
+
|
|
23
|
+
# Testing
|
|
24
|
+
- Fixes INBOX-6234
|
|
25
|
+
* Fixes INBOX-6269
|
|
26
|
+
- Fix https://my.trackjs.com/errors/filtered?hash=6082f23657b4a484
|
|
27
|
+
- Fix https://my.trackjs.com/errors/filtered?hash=b5feeabaf3a19ac4
|
|
28
|
+
* Fix https://my.trackjs.com/errors/filtered?hash=bc3ecc4d23b89d3c
|
package/lib/config.json
CHANGED
|
@@ -359,7 +359,7 @@ var GitLabApiClient = /** @class */ (function () {
|
|
|
359
359
|
});
|
|
360
360
|
});
|
|
361
361
|
};
|
|
362
|
-
GitLabApiClient.prototype.getMilestone = function (
|
|
362
|
+
GitLabApiClient.prototype.getMilestone = function (milestoneName, projectId) {
|
|
363
363
|
return __awaiter(this, void 0, void 0, function () {
|
|
364
364
|
var groupMilestones, milestone, projectMilestones;
|
|
365
365
|
return __generator(this, function (_a) {
|
|
@@ -370,6 +370,8 @@ var GitLabApiClient = /** @class */ (function () {
|
|
|
370
370
|
milestone = groupMilestones.find(function (milestone) { return milestone.title === milestoneName; });
|
|
371
371
|
if (milestone)
|
|
372
372
|
return [2 /*return*/, GitLabMapper_1.GitLabMapper.milestone(milestone)];
|
|
373
|
+
if (!projectId)
|
|
374
|
+
return [2 /*return*/, null];
|
|
373
375
|
return [4 /*yield*/, this.client.ProjectMilestones.all(projectId)];
|
|
374
376
|
case 2:
|
|
375
377
|
projectMilestones = _a.sent();
|
|
@@ -381,6 +383,23 @@ var GitLabApiClient = /** @class */ (function () {
|
|
|
381
383
|
});
|
|
382
384
|
});
|
|
383
385
|
};
|
|
386
|
+
GitLabApiClient.prototype.updateMilestone = function (projectId, mergeRequestId, newMilestoneId) {
|
|
387
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
388
|
+
var updated;
|
|
389
|
+
return __generator(this, function (_a) {
|
|
390
|
+
switch (_a.label) {
|
|
391
|
+
case 0: return [4 /*yield*/, this.client.MergeRequests.edit(projectId, mergeRequestId, {
|
|
392
|
+
milestoneId: newMilestoneId,
|
|
393
|
+
})];
|
|
394
|
+
case 1:
|
|
395
|
+
updated = _a.sent();
|
|
396
|
+
if (!updated)
|
|
397
|
+
return [2 /*return*/, null];
|
|
398
|
+
return [2 /*return*/, GitLabMapper_1.GitLabMapper.milestone(updated.milestone)];
|
|
399
|
+
}
|
|
400
|
+
});
|
|
401
|
+
});
|
|
402
|
+
};
|
|
384
403
|
GitLabApiClient.prototype.getLabels = function (projectId) {
|
|
385
404
|
return __awaiter(this, void 0, void 0, function () {
|
|
386
405
|
var labels;
|
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
2
13
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
14
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
15
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
@@ -62,7 +73,7 @@ var CreateReleaseNotesCommand = /** @class */ (function () {
|
|
|
62
73
|
var cont;
|
|
63
74
|
return __generator(this, function (_a) {
|
|
64
75
|
switch (_a.label) {
|
|
65
|
-
case 0: return [4 /*yield*/, this.validateDescriptionsTask.run(options)];
|
|
76
|
+
case 0: return [4 /*yield*/, this.validateDescriptionsTask.run(__assign(__assign({}, options), { slackNotifier: false }))];
|
|
66
77
|
case 1:
|
|
67
78
|
cont = _a.sent();
|
|
68
79
|
if (!cont)
|
|
@@ -74,40 +74,28 @@ var ReleaseCommand = /** @class */ (function () {
|
|
|
74
74
|
// Check if we want to continue with inquirer?
|
|
75
75
|
if (!cont)
|
|
76
76
|
return [2 /*return*/, false];
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
return
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
cont =
|
|
90
|
-
if (!cont)
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
if (!
|
|
96
|
-
|
|
97
|
-
return
|
|
98
|
-
|
|
99
|
-
cont = _a.sent();
|
|
100
|
-
if (!cont)
|
|
101
|
-
return [2 /*return*/, false];
|
|
102
|
-
return [4 /*yield*/, this.createMergeRequestTask.run(options)];
|
|
103
|
-
case 7:
|
|
104
|
-
cont = _a.sent();
|
|
105
|
-
if (!cont)
|
|
106
|
-
return [2 /*return*/, false];
|
|
107
|
-
if (!options.triggerMonorepoBuild)
|
|
108
|
-
return [2 /*return*/, true];
|
|
109
|
-
return [4 /*yield*/, this.startMonorepoBuildTask.run(options)];
|
|
110
|
-
case 8: return [2 /*return*/, _a.sent()];
|
|
77
|
+
// cont = await this.versionTask.run(options);
|
|
78
|
+
// if (!cont)
|
|
79
|
+
// return false;
|
|
80
|
+
// cont = await this.validateDescriptionsTask.run(options);
|
|
81
|
+
// if (!cont)
|
|
82
|
+
// return false;
|
|
83
|
+
// cont = await this.validateCommitsTask.run(options);
|
|
84
|
+
// if (!cont)
|
|
85
|
+
// return false;
|
|
86
|
+
// cont = await this.createBranchTask.run(options);
|
|
87
|
+
// if (!cont)
|
|
88
|
+
// return false;
|
|
89
|
+
// cont = await this.bumpVersionTxtTask.run(options);
|
|
90
|
+
// if (!cont)
|
|
91
|
+
// return false;
|
|
92
|
+
// cont = await this.createMergeRequestTask.run(options);
|
|
93
|
+
// if (!cont)
|
|
94
|
+
// return false;
|
|
95
|
+
// if (!options.triggerMonorepoBuild)
|
|
96
|
+
// return true;
|
|
97
|
+
// return await this.startMonorepoBuildTask.run(options);
|
|
98
|
+
return [2 /*return*/, true];
|
|
111
99
|
}
|
|
112
100
|
});
|
|
113
101
|
});
|
|
@@ -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;
|
|
@@ -9,7 +9,7 @@ exports.TeamCityBuildIds = (_a = {},
|
|
|
9
9
|
_a[constants_1.PROJECT_NAMES.frontend.curator] = 'curator_web_BuildAndPackageDocker',
|
|
10
10
|
_a[constants_1.PROJECT_NAMES.frontend.cloud] = 'ClickViewCloud_BuildAndPackageDocker',
|
|
11
11
|
_a[constants_1.PROJECT_NAMES.frontend.reports] = 'Web_AnalyticsWeb_BuildAndPackageDocker',
|
|
12
|
-
_a[constants_1.PROJECT_NAMES.frontend.lite] = '
|
|
12
|
+
_a[constants_1.PROJECT_NAMES.frontend.lite] = 'Web_LiteWeb_BuildGodTest',
|
|
13
13
|
_a[constants_1.PROJECT_NAMES.backend.auth] = 'auth_web_B',
|
|
14
14
|
_a[constants_1.PROJECT_NAMES.frontend.exchange] = 'ExchangeWeb_BuildAndPackageDocker',
|
|
15
15
|
_a[constants_1.PROJECT_NAMES.frontend.streamable] = 'Web_StreamableLearningWeb_BuildAndPackageDocker',
|
|
@@ -41,4 +41,5 @@ exports.TeamCityBuildIds = (_a = {},
|
|
|
41
41
|
_a[constants_1.PROJECT_NAMES.backend.tvweb] = 'tv_web_BuildAndPackageDocker',
|
|
42
42
|
_a[constants_1.PROJECT_NAMES.backend.clients] = 'Tooling_Clients_PublishToNuget',
|
|
43
43
|
_a[constants_1.PROJECT_NAMES.backend.goodstuff] = 'Tooling_GoodStuffInternal_PublishToNuget',
|
|
44
|
+
_a[constants_1.PROJECT_NAMES.backend.share] = 'Api_ShareApi_BuildAndPackageDocker',
|
|
44
45
|
_a);
|
package/lib/src/index.js
CHANGED
|
File without changes
|
|
@@ -269,7 +269,7 @@ var GitLabService = /** @class */ (function () {
|
|
|
269
269
|
var milestone;
|
|
270
270
|
return __generator(this, function (_a) {
|
|
271
271
|
switch (_a.label) {
|
|
272
|
-
case 0: return [4 /*yield*/, this.getMilestone(
|
|
272
|
+
case 0: return [4 /*yield*/, this.getMilestone(milestoneName, projectId)];
|
|
273
273
|
case 1:
|
|
274
274
|
milestone = _a.sent();
|
|
275
275
|
return [2 /*return*/, this.apiClient.createMergeRequest(projectId, branchName, 'master', branchName, description, milestone)];
|
|
@@ -277,8 +277,8 @@ var GitLabService = /** @class */ (function () {
|
|
|
277
277
|
});
|
|
278
278
|
});
|
|
279
279
|
};
|
|
280
|
-
GitLabService.prototype.getMilestone = function (
|
|
281
|
-
return this.apiClient.getMilestone(
|
|
280
|
+
GitLabService.prototype.getMilestone = function (milestoneName, projectId) {
|
|
281
|
+
return this.apiClient.getMilestone(milestoneName, projectId);
|
|
282
282
|
};
|
|
283
283
|
GitLabService.prototype.getReleaseBranchNameMilestone = function (projectId, milestone) {
|
|
284
284
|
return __awaiter(this, void 0, void 0, function () {
|
|
@@ -488,6 +488,13 @@ var GitLabService = /** @class */ (function () {
|
|
|
488
488
|
});
|
|
489
489
|
});
|
|
490
490
|
};
|
|
491
|
+
GitLabService.prototype.updateMilestone = function (projectId, mergeRequestID, newMilestoneId) {
|
|
492
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
493
|
+
return __generator(this, function (_a) {
|
|
494
|
+
return [2 /*return*/, this.apiClient.updateMilestone(projectId, mergeRequestID, newMilestoneId)];
|
|
495
|
+
});
|
|
496
|
+
});
|
|
497
|
+
};
|
|
491
498
|
GitLabService = __decorate([
|
|
492
499
|
(0, inversify_1.injectable)(),
|
|
493
500
|
__param(0, (0, inversify_1.inject)(types_1.API_CLIENTS.GitLabApiClient)),
|
|
@@ -118,9 +118,6 @@ var SlackService = /** @class */ (function () {
|
|
|
118
118
|
mentionUserString = this.formatMentionUsers(userList);
|
|
119
119
|
if (!mentionUserString)
|
|
120
120
|
return [2 /*return*/];
|
|
121
|
-
return [4 /*yield*/, this.apiClient.replyInThread("Hello ".concat(mentionUserString), threadTs)];
|
|
122
|
-
case 7:
|
|
123
|
-
_d.sent();
|
|
124
121
|
return [2 /*return*/];
|
|
125
122
|
}
|
|
126
123
|
});
|
|
@@ -94,9 +94,11 @@ function setupCommands(program, container) {
|
|
|
94
94
|
.requiredOption('-m, --milestone <milestone>')
|
|
95
95
|
.option('-p, --projectIds <projectIds...>')
|
|
96
96
|
.option('-o, --omit <omittedProjectIds...>')
|
|
97
|
+
.option('-nm, --nextMilestone <nextMilestone>')
|
|
97
98
|
.option('--hotfix')
|
|
98
99
|
.option('--major')
|
|
99
100
|
.option('--trigger-monorepo-build')
|
|
101
|
+
.option('--slack-notifier')
|
|
100
102
|
.action(function (opts) { return __awaiter(_this, void 0, void 0, function () {
|
|
101
103
|
var options;
|
|
102
104
|
return __generator(this, function (_a) {
|
|
@@ -146,6 +148,7 @@ function setupCommands(program, container) {
|
|
|
146
148
|
.option('--monorepoBranchName <monorepoBranchName>')
|
|
147
149
|
.option('-p, --projectIds <projectIds...>')
|
|
148
150
|
.option('-o, --omit <omittedProjectIds...>')
|
|
151
|
+
.option('-t, --targetBranchName <targetBranchName>')
|
|
149
152
|
.action(function (opts) { return __awaiter(_this, void 0, void 0, function () {
|
|
150
153
|
var options;
|
|
151
154
|
return __generator(this, function (_a) {
|
|
@@ -0,0 +1,149 @@
|
|
|
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.StartConsumingProjectBuildsTask = void 0;
|
|
52
|
+
require("reflect-metadata");
|
|
53
|
+
var inversify_1 = require("inversify");
|
|
54
|
+
var utils_1 = require("../utils");
|
|
55
|
+
var services_1 = require("../services");
|
|
56
|
+
var types_1 = require("../types");
|
|
57
|
+
var TeamCityBuildIDs_1 = require("../constants/TeamCityBuildIDs");
|
|
58
|
+
var StartConsumingProjectBuildsTask = /** @class */ (function () {
|
|
59
|
+
function StartConsumingProjectBuildsTask(teamCityService, gitLabService) {
|
|
60
|
+
this.teamCityService = teamCityService;
|
|
61
|
+
this.gitLabService = gitLabService;
|
|
62
|
+
}
|
|
63
|
+
StartConsumingProjectBuildsTask.prototype.run = function (_options) {
|
|
64
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
65
|
+
var milestone, options, projects, consumingProjects, projectBuildMap, _i, consumingProjects_1, project, branchName, buildId, build, totalBuilds, project;
|
|
66
|
+
return __generator(this, function (_a) {
|
|
67
|
+
switch (_a.label) {
|
|
68
|
+
case 0:
|
|
69
|
+
utils_1.Logger.logTask('Starting builds for consuming projects in TeamCity');
|
|
70
|
+
if (!_options.monorepoBranchName && !_options.milestone) {
|
|
71
|
+
utils_1.Logger.logError('Please provide either a milestone or branch name argument.');
|
|
72
|
+
return [2 /*return*/, false];
|
|
73
|
+
}
|
|
74
|
+
milestone = _options.milestone;
|
|
75
|
+
if (!!milestone) return [3 /*break*/, 2];
|
|
76
|
+
utils_1.Logger.logInfo("Searching for a merge request in project \"monorepo\" with branch name \"".concat(_options.monorepoBranchName, "\"..."));
|
|
77
|
+
return [4 /*yield*/, this.gitLabService.getMilestoneByBranchName(utils_1.ProjectIds.MONOREPO_PROJECT_ID, _options.monorepoBranchName)];
|
|
78
|
+
case 1:
|
|
79
|
+
milestone = _a.sent();
|
|
80
|
+
_a.label = 2;
|
|
81
|
+
case 2:
|
|
82
|
+
if (!milestone)
|
|
83
|
+
return [2 /*return*/, false];
|
|
84
|
+
utils_1.Logger.logInfo("Found milestone \"".concat(milestone, "\". Proceeding to run builds for consuming projects..."));
|
|
85
|
+
options = {
|
|
86
|
+
version: _options.version,
|
|
87
|
+
projectIds: _options.projectIds,
|
|
88
|
+
omittedProjectIds: _options.omittedProjectIds,
|
|
89
|
+
milestone: milestone
|
|
90
|
+
};
|
|
91
|
+
return [4 /*yield*/, this.gitLabService.getProjects(options)];
|
|
92
|
+
case 3:
|
|
93
|
+
projects = _a.sent();
|
|
94
|
+
consumingProjects = projects.filter(function (p) { return p.id.toString() !== utils_1.ProjectIds.MONOREPO_PROJECT_ID; });
|
|
95
|
+
if (!consumingProjects.length) {
|
|
96
|
+
utils_1.Logger.logError("No projects that consume monorepo could be found");
|
|
97
|
+
return [2 /*return*/, false];
|
|
98
|
+
}
|
|
99
|
+
projectBuildMap = {};
|
|
100
|
+
_i = 0, consumingProjects_1 = consumingProjects;
|
|
101
|
+
_a.label = 4;
|
|
102
|
+
case 4:
|
|
103
|
+
if (!(_i < consumingProjects_1.length)) return [3 /*break*/, 8];
|
|
104
|
+
project = consumingProjects_1[_i];
|
|
105
|
+
return [4 /*yield*/, this.gitLabService.getReleaseBranchNameMilestone(project.id, options.milestone)];
|
|
106
|
+
case 5:
|
|
107
|
+
branchName = _a.sent();
|
|
108
|
+
if (!branchName) {
|
|
109
|
+
utils_1.Logger.logWarning("Release branch in project \"".concat(project.title, "\" with milestone \"").concat(options.milestone, "\" was not found. Skipping project..."));
|
|
110
|
+
return [3 /*break*/, 7];
|
|
111
|
+
}
|
|
112
|
+
buildId = TeamCityBuildIDs_1.TeamCityBuildIds[project.id.toString()];
|
|
113
|
+
if (!buildId) {
|
|
114
|
+
utils_1.Logger.logWarning("Skipping build for ".concat(project.title, " as no Team City build ID has been specified"));
|
|
115
|
+
return [3 /*break*/, 7];
|
|
116
|
+
}
|
|
117
|
+
return [4 /*yield*/, this.teamCityService.startBuild(buildId, branchName)];
|
|
118
|
+
case 6:
|
|
119
|
+
build = _a.sent();
|
|
120
|
+
projectBuildMap[project.title] = build;
|
|
121
|
+
_a.label = 7;
|
|
122
|
+
case 7:
|
|
123
|
+
_i++;
|
|
124
|
+
return [3 /*break*/, 4];
|
|
125
|
+
case 8:
|
|
126
|
+
totalBuilds = Object.keys(projectBuildMap).length;
|
|
127
|
+
if (!totalBuilds) {
|
|
128
|
+
utils_1.Logger.logWarning("No releases found in consuming projects with milestone \"".concat(options.milestone, "\"."));
|
|
129
|
+
return [2 /*return*/, true];
|
|
130
|
+
}
|
|
131
|
+
utils_1.Logger.logSuccess("Successfully started builds in ".concat(totalBuilds, " projects."));
|
|
132
|
+
for (project in projectBuildMap) {
|
|
133
|
+
utils_1.Logger.logInfo("[".concat(project, "]: ").concat(projectBuildMap[project].webUrl));
|
|
134
|
+
}
|
|
135
|
+
return [2 /*return*/, true];
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
});
|
|
139
|
+
};
|
|
140
|
+
StartConsumingProjectBuildsTask = __decorate([
|
|
141
|
+
(0, inversify_1.injectable)(),
|
|
142
|
+
__param(0, (0, inversify_1.inject)(types_1.SERVICES.TeamCityService)),
|
|
143
|
+
__param(1, (0, inversify_1.inject)(types_1.SERVICES.GitLabService)),
|
|
144
|
+
__metadata("design:paramtypes", [services_1.TeamCityService,
|
|
145
|
+
services_1.GitLabService])
|
|
146
|
+
], StartConsumingProjectBuildsTask);
|
|
147
|
+
return StartConsumingProjectBuildsTask;
|
|
148
|
+
}());
|
|
149
|
+
exports.StartConsumingProjectBuildsTask = StartConsumingProjectBuildsTask;
|
|
@@ -62,23 +62,44 @@ var StartProjectBuildsTask = /** @class */ (function () {
|
|
|
62
62
|
}
|
|
63
63
|
StartProjectBuildsTask.prototype.run = function (_options) {
|
|
64
64
|
return __awaiter(this, void 0, void 0, function () {
|
|
65
|
-
var milestone, options, projects, consumingProjects, projectBuildMap, _i, consumingProjects_1, project, branchName, buildId, build, totalBuilds, project;
|
|
65
|
+
var projectName, project, buildId, build, milestone, options, projects, consumingProjects, projectBuildMap, _i, consumingProjects_1, project, branchName, buildId, build, totalBuilds, project;
|
|
66
66
|
return __generator(this, function (_a) {
|
|
67
67
|
switch (_a.label) {
|
|
68
68
|
case 0:
|
|
69
69
|
utils_1.Logger.logTask('Starting builds for consuming projects in TeamCity');
|
|
70
|
+
if (!(_options.targetBranchName && _options.projectIds)) return [3 /*break*/, 3];
|
|
71
|
+
utils_1.Logger.logMessage("Starting consuming project build for given target branch ".concat(_options.targetBranchName));
|
|
72
|
+
if (_options.projectIds.length > 1) {
|
|
73
|
+
utils_1.Logger.logError("More than one project found!");
|
|
74
|
+
return [2 /*return*/, false];
|
|
75
|
+
}
|
|
76
|
+
projectName = _options.projectIds[0];
|
|
77
|
+
return [4 /*yield*/, this.gitLabService.getProject(projectName)];
|
|
78
|
+
case 1:
|
|
79
|
+
project = _a.sent();
|
|
80
|
+
buildId = TeamCityBuildIDs_1.TeamCityBuildIds[project.id];
|
|
81
|
+
if (!buildId) {
|
|
82
|
+
utils_1.Logger.logWarning("Skipping build for ".concat(project.title, " as no Team City build ID has been specified"));
|
|
83
|
+
return [2 /*return*/, false];
|
|
84
|
+
}
|
|
85
|
+
return [4 /*yield*/, this.teamCityService.startBuild(buildId, _options.targetBranchName)];
|
|
86
|
+
case 2:
|
|
87
|
+
build = _a.sent();
|
|
88
|
+
utils_1.Logger.logInfo("[".concat(project.title, "]: ").concat(build.webUrl));
|
|
89
|
+
return [2 /*return*/, true];
|
|
90
|
+
case 3:
|
|
70
91
|
if (!_options.monorepoBranchName && !_options.milestone) {
|
|
71
92
|
utils_1.Logger.logError('Please provide either a milestone or branch name argument.');
|
|
72
93
|
return [2 /*return*/, false];
|
|
73
94
|
}
|
|
74
95
|
milestone = _options.milestone;
|
|
75
|
-
if (!!milestone) return [3 /*break*/,
|
|
96
|
+
if (!!milestone) return [3 /*break*/, 5];
|
|
76
97
|
utils_1.Logger.logInfo("Searching for a merge request in project \"monorepo\" with branch name \"".concat(_options.monorepoBranchName, "\"..."));
|
|
77
98
|
return [4 /*yield*/, this.gitLabService.getMilestoneByBranchName(utils_1.ProjectIds.MONOREPO_PROJECT_ID, _options.monorepoBranchName)];
|
|
78
|
-
case
|
|
99
|
+
case 4:
|
|
79
100
|
milestone = _a.sent();
|
|
80
|
-
_a.label =
|
|
81
|
-
case
|
|
101
|
+
_a.label = 5;
|
|
102
|
+
case 5:
|
|
82
103
|
if (!milestone)
|
|
83
104
|
return [2 /*return*/, false];
|
|
84
105
|
utils_1.Logger.logInfo("Found milestone \"".concat(milestone, "\". Proceeding to run builds for consuming projects..."));
|
|
@@ -89,7 +110,7 @@ var StartProjectBuildsTask = /** @class */ (function () {
|
|
|
89
110
|
milestone: milestone
|
|
90
111
|
};
|
|
91
112
|
return [4 /*yield*/, this.gitLabService.getProjects(options)];
|
|
92
|
-
case
|
|
113
|
+
case 6:
|
|
93
114
|
projects = _a.sent();
|
|
94
115
|
consumingProjects = projects.filter(function (p) { return p.id.toString() !== utils_1.ProjectIds.MONOREPO_PROJECT_ID; });
|
|
95
116
|
if (!consumingProjects.length) {
|
|
@@ -98,31 +119,31 @@ var StartProjectBuildsTask = /** @class */ (function () {
|
|
|
98
119
|
}
|
|
99
120
|
projectBuildMap = {};
|
|
100
121
|
_i = 0, consumingProjects_1 = consumingProjects;
|
|
101
|
-
_a.label =
|
|
102
|
-
case
|
|
103
|
-
if (!(_i < consumingProjects_1.length)) return [3 /*break*/,
|
|
122
|
+
_a.label = 7;
|
|
123
|
+
case 7:
|
|
124
|
+
if (!(_i < consumingProjects_1.length)) return [3 /*break*/, 11];
|
|
104
125
|
project = consumingProjects_1[_i];
|
|
105
126
|
return [4 /*yield*/, this.gitLabService.getReleaseBranchNameMilestone(project.id, options.milestone)];
|
|
106
|
-
case
|
|
127
|
+
case 8:
|
|
107
128
|
branchName = _a.sent();
|
|
108
129
|
if (!branchName) {
|
|
109
130
|
utils_1.Logger.logWarning("Release branch in project \"".concat(project.title, "\" with milestone \"").concat(options.milestone, "\" was not found. Skipping project..."));
|
|
110
|
-
return [3 /*break*/,
|
|
131
|
+
return [3 /*break*/, 10];
|
|
111
132
|
}
|
|
112
133
|
buildId = TeamCityBuildIDs_1.TeamCityBuildIds[project.id.toString()];
|
|
113
134
|
if (!buildId) {
|
|
114
135
|
utils_1.Logger.logWarning("Skipping build for ".concat(project.title, " as no Team City build ID has been specified"));
|
|
115
|
-
return [3 /*break*/,
|
|
136
|
+
return [3 /*break*/, 10];
|
|
116
137
|
}
|
|
117
138
|
return [4 /*yield*/, this.teamCityService.startBuild(buildId, branchName)];
|
|
118
|
-
case
|
|
139
|
+
case 9:
|
|
119
140
|
build = _a.sent();
|
|
120
141
|
projectBuildMap[project.title] = build;
|
|
121
|
-
_a.label =
|
|
122
|
-
case
|
|
142
|
+
_a.label = 10;
|
|
143
|
+
case 10:
|
|
123
144
|
_i++;
|
|
124
|
-
return [3 /*break*/,
|
|
125
|
-
case
|
|
145
|
+
return [3 /*break*/, 7];
|
|
146
|
+
case 11:
|
|
126
147
|
totalBuilds = Object.keys(projectBuildMap).length;
|
|
127
148
|
if (!totalBuilds) {
|
|
128
149
|
utils_1.Logger.logWarning("No releases found in consuming projects with milestone \"".concat(options.milestone, "\"."));
|