@clickview/ship-it 0.0.29-dev.0 → 0.0.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/config.json +1 -1
  2. package/dist/F1/Analytics Web.md +8 -0
  3. package/dist/F1/AutoCaptions.md +30 -0
  4. package/dist/F1/Classroom.Api.md +23 -0
  5. package/dist/F1/ClickView Online.md +17 -0
  6. package/dist/F1/ClickView.Curator.md +100 -0
  7. package/dist/F1/ClickView.EmailService.md +53 -0
  8. package/dist/F1/ClickView.OnlineApi.md +13 -0
  9. package/dist/F1/Clients.md +19 -0
  10. package/dist/F1/Domain.Api.md +23 -0
  11. package/dist/F1/Exchange.Web.md +8 -0
  12. package/dist/F1/Image.Api.md +8 -0
  13. package/dist/F1/Integrations.Api.md +23 -0
  14. package/dist/F1/Krakend.md +8 -0
  15. package/dist/F1/Library Editor.md +0 -0
  16. package/dist/F1/Lite.md +60 -0
  17. package/dist/F1/Master.Api.md +58 -0
  18. package/dist/F1/Master.Auth.md +22 -0
  19. package/dist/F1/Objects.Api.md +12 -0
  20. package/dist/F1/Permissions.Api.md +12 -0
  21. package/dist/F1/RealtimeSalesforceSync.md +14 -0
  22. package/dist/F1/Release Notes.md +990 -0
  23. package/dist/F1/Search.Api.md +12 -0
  24. package/dist/F1/StreamableLearning.Web.md +35 -0
  25. package/dist/F1/Users.Api.md +13 -0
  26. package/dist/F1/VideoProcessorService.md +23 -0
  27. package/dist/F1/clickview.md +321 -0
  28. package/dist/F2/Analytics Web.md +7 -0
  29. package/dist/F2/Batch.Api.md +27 -0
  30. package/dist/F2/ClickView Online.md +12 -0
  31. package/dist/F2/ClickView.Curator.md +166 -0
  32. package/dist/F2/Clients.md +14 -0
  33. package/dist/F2/CurriculumIngestion.Api.md +13 -0
  34. package/dist/F2/Discover.Api.md +64 -0
  35. package/dist/F2/Domain.Api.md +16 -0
  36. package/dist/F2/Exchange.Web.md +7 -0
  37. package/dist/F2/Krakend.md +12 -0
  38. package/dist/F2/Library Editor.md +11 -0
  39. package/dist/F2/Lite.md +30 -0
  40. package/dist/F2/Objects.Api.md +12 -0
  41. package/dist/F2/Release Notes.md +759 -0
  42. package/dist/F2/Search.Api.md +30 -0
  43. package/dist/F2/Share.Api.md +12 -0
  44. package/dist/F2/StreamableLearning.Web.md +14 -0
  45. package/dist/F2/Subjects.API.md +12 -0
  46. package/dist/F2/Tv.Web.md +8 -0
  47. package/dist/F2/Users.Api.md +21 -0
  48. package/dist/F2/clickview.md +200 -0
  49. package/dist/F2/shortcode-api.md +8 -0
  50. package/dist/F3.1/Analytics Web.md +8 -0
  51. package/dist/F3.1/ClickView.Curator.md +14 -0
  52. package/dist/F3.1/Discover.Api.md +14 -0
  53. package/dist/F3.1/Domain.Api.md +7 -0
  54. package/dist/F3.1/Exchange.Web.md +8 -0
  55. package/dist/F3.1/Library Editor.md +8 -0
  56. package/dist/F3.1/Lite.md +8 -0
  57. package/dist/F3.1/Objects.Api.md +7 -0
  58. package/dist/F3.1/Release Notes.md +207 -0
  59. package/dist/F3.1/Search.Api.md +14 -0
  60. package/dist/F3.1/Share.Api.md +10 -0
  61. package/dist/F3.1/Subjects.API.md +35 -0
  62. package/dist/F3.1/VideoViews.Api.md +7 -0
  63. package/dist/F3.1/clickview.md +28 -0
  64. package/lib/config.json +1 -1
  65. package/lib/src/api-clients/git-lab/GitLabApiClient.js +17 -1
  66. package/lib/src/commands/BumpPackagesCommand.js +3 -1
  67. package/lib/src/commands/StartConsumingProjectBuildsCommand.js +76 -0
  68. package/lib/src/index.js +0 -0
  69. package/lib/src/services/GitLabService.js +5 -2
  70. package/lib/src/startup/AddMilestoneCommand.js +1 -0
  71. package/lib/src/tasks/CreateMergeRequestTask.js +1 -1
  72. package/lib/src/tasks/MergeMasterToDevTask.js +147 -0
  73. package/lib/src/tasks/StartConsumingProjectBuildsTask.js +149 -0
  74. package/lib/src/tasks/TagMasterTask.js +82 -17
  75. package/package.json +1 -1
@@ -0,0 +1,7 @@
1
+
2
+ # Code changes
3
+ * Getting `maxItems` in group instead of one by one in recently viewed endpoint
4
+
5
+
6
+ # Testing
7
+
@@ -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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "gitLab": {
3
- "accessToken": "glpat-YK8GmVgXRRf3zBe3JQze",
3
+ "accessToken": "glpat-i-knsmg2m7c8oMd-_xNn",
4
4
  "url": "https://gitlab.cvinternal.net"
5
5
  },
6
6
  "teamCity": {
@@ -67,15 +67,18 @@ var GitLabApiClient = /** @class */ (function () {
67
67
  }
68
68
  GitLabApiClient.prototype.getMergeRequests = function (options) {
69
69
  return __awaiter(this, void 0, void 0, function () {
70
- var milestone, projectIds, mergeRequests;
70
+ var milestone, projectIds, createdAfter, mergeRequests;
71
71
  return __generator(this, function (_a) {
72
72
  switch (_a.label) {
73
73
  case 0:
74
74
  milestone = options.milestone, projectIds = options.projectIds;
75
75
  if (!milestone && !(projectIds === null || projectIds === void 0 ? void 0 : projectIds.length))
76
76
  throw new errors_1.ShipItError('Must specify one of the following: Milestone or ProjectIds');
77
+ createdAfter = new Date();
78
+ createdAfter.setMonth(createdAfter.getMonth() - 3);
77
79
  return [4 /*yield*/, this.client.MergeRequests.all({
78
80
  milestone: milestone,
81
+ createdAfter: createdAfter.toISOString(),
79
82
  scope: 'all'
80
83
  })];
81
84
  case 1:
@@ -312,6 +315,19 @@ var GitLabApiClient = /** @class */ (function () {
312
315
  });
313
316
  });
314
317
  };
318
+ GitLabApiClient.prototype.AcceptMergeRequest = function (projectId, mergerequestIId) {
319
+ return __awaiter(this, void 0, void 0, function () {
320
+ var mergeRequest;
321
+ return __generator(this, function (_a) {
322
+ switch (_a.label) {
323
+ case 0: return [4 /*yield*/, this.client.MergeRequests.accept(projectId, mergerequestIId)];
324
+ case 1:
325
+ mergeRequest = _a.sent();
326
+ return [2 /*return*/, GitLabMapper_1.GitLabMapper.mergeRequest(mergeRequest)];
327
+ }
328
+ });
329
+ });
330
+ };
315
331
  GitLabApiClient.prototype.getFile = function (projectId, filePath, branchName) {
316
332
  return __awaiter(this, void 0, void 0, function () {
317
333
  var file, _a;
@@ -65,7 +65,9 @@ var BumpPackagesCommand = /** @class */ (function () {
65
65
  case 0: return [4 /*yield*/, this.bumpPackagesTask.run(options)];
66
66
  case 1:
67
67
  cont = _a.sent();
68
- return [2 /*return*/, cont];
68
+ if (!cont)
69
+ return [2 /*return*/, false];
70
+ return [4 /*yield*/, this.commitPackageVersionsTask.run(options)];
69
71
  case 2: return [2 /*return*/, _a.sent()];
70
72
  }
71
73
  });
@@ -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;
package/lib/src/index.js CHANGED
File without changes
@@ -264,7 +264,7 @@ var GitLabService = /** @class */ (function () {
264
264
  throw new errors_1.ShipItError("MergeRequest Id must be a number: ".concat(mergeRequestId));
265
265
  return this.apiClient.getMergeRequestById(projectId, +mergeRequestId);
266
266
  };
267
- GitLabService.prototype.createMergeRequest = function (projectId, branchName, description, milestoneName) {
267
+ GitLabService.prototype.createMergeRequest = function (projectId, branchName, targetBranch, title, description, milestoneName) {
268
268
  return __awaiter(this, void 0, void 0, function () {
269
269
  var milestone;
270
270
  return __generator(this, function (_a) {
@@ -272,11 +272,14 @@ var GitLabService = /** @class */ (function () {
272
272
  case 0: return [4 /*yield*/, this.getMilestone(milestoneName, projectId)];
273
273
  case 1:
274
274
  milestone = _a.sent();
275
- return [2 /*return*/, this.apiClient.createMergeRequest(projectId, branchName, 'master', branchName, description, milestone)];
275
+ return [2 /*return*/, this.apiClient.createMergeRequest(projectId, branchName, targetBranch, title, description, milestone)];
276
276
  }
277
277
  });
278
278
  });
279
279
  };
280
+ GitLabService.prototype.AcceptMergeRequest = function (projectId, mergerequestIId) {
281
+ return this.apiClient.AcceptMergeRequest(projectId, mergerequestIId);
282
+ };
280
283
  GitLabService.prototype.getMilestone = function (milestoneName, projectId) {
281
284
  return this.apiClient.getMilestone(milestoneName, projectId);
282
285
  };
@@ -75,6 +75,7 @@ var getAddMilestoneCommand = function (program, getAction) {
75
75
  .requiredOption('-m, --milestone <milestone>')
76
76
  .option('-p, --projectIds <projectIds...>')
77
77
  .option('-o, --omit <omittedProjectIds...>')
78
+ .option('--slack-notifier')
78
79
  .option('--hotfix')
79
80
  .option('--major')
80
81
  .action(function (opts) { return __awaiter(_this, void 0, void 0, function () {
@@ -94,7 +94,7 @@ var CreateMergeRequestTask = /** @class */ (function () {
94
94
  description = projectConfig.monorepo.enabled ?
95
95
  utils_1.Descriptions.getMonorepoCombinedDescription(project.mergeRequests) :
96
96
  utils_1.Descriptions.getCombinedDescription(project.mergeRequests);
97
- return [4 /*yield*/, this.service.createMergeRequest(project.id, branchName, description, options.milestone)];
97
+ return [4 /*yield*/, this.service.createMergeRequest(project.id, branchName, 'master', branchName, description, options.milestone)];
98
98
  case 6:
99
99
  mergeRequest = _b.sent();
100
100
  utils_1.Logger.logMessage("[".concat(project.title, "]: MR created"));
@@ -0,0 +1,147 @@
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.MergeMasterToDevTask = void 0;
52
+ require("reflect-metadata");
53
+ var inversify_1 = require("inversify");
54
+ var Logger_1 = require("../utils/Logger");
55
+ var types_1 = require("../types");
56
+ var services_1 = require("../services");
57
+ var util_1 = require("util");
58
+ var MergeMasterToDevTask = /** @class */ (function () {
59
+ function MergeMasterToDevTask(service, slackService) {
60
+ this.service = service;
61
+ this.slackService = slackService;
62
+ }
63
+ MergeMasterToDevTask.prototype.run = function (options) {
64
+ return __awaiter(this, void 0, void 0, function () {
65
+ var projects, delay, logMessageSlack, _i, projects_1, project, _a, branchName, nextVersion, mergeRequest, updatedMergeRequest, acceptMr, threadLabel, statusCleanMessage;
66
+ return __generator(this, function (_b) {
67
+ switch (_b.label) {
68
+ case 0:
69
+ Logger_1.Logger.logTask('Merging Master Into Dev');
70
+ return [4 /*yield*/, this.service.getProjects(options)];
71
+ case 1:
72
+ projects = _b.sent();
73
+ Logger_1.Logger.logMessage(projects.length);
74
+ delay = (0, util_1.promisify)(setTimeout);
75
+ logMessageSlack = '';
76
+ _i = 0, projects_1 = projects;
77
+ _b.label = 2;
78
+ case 2:
79
+ if (!(_i < projects_1.length)) return [3 /*break*/, 12];
80
+ project = projects_1[_i];
81
+ return [4 /*yield*/, this.service.getNextBranchInfo(project.id, options.version)];
82
+ case 3:
83
+ _a = _b.sent(), branchName = _a.branchName, nextVersion = _a.nextVersion;
84
+ Logger_1.Logger.logMessage(branchName);
85
+ return [4 /*yield*/, this.service.createMergeRequest(project.id, 'varun-ship-it', 'varun_qa_test', 'Merge master into dev testing', 'Merging master into dev', options.milestone)];
86
+ case 4:
87
+ mergeRequest = _b.sent();
88
+ Logger_1.Logger.logMessage(mergeRequest.url);
89
+ Logger_1.Logger.logMessage(project.title);
90
+ Logger_1.Logger.logMessage(mergeRequest.hasConflicts);
91
+ Logger_1.Logger.logMessage(mergeRequest.status);
92
+ return [4 /*yield*/, delay(5000)];
93
+ case 5:
94
+ _b.sent();
95
+ return [4 /*yield*/, this.service.getMergeRequestById(project.id, mergeRequest.iid)];
96
+ case 6:
97
+ updatedMergeRequest = _b.sent();
98
+ if (!updatedMergeRequest) return [3 /*break*/, 10];
99
+ Logger_1.Logger.logMessage(updatedMergeRequest.hasConflicts);
100
+ if (!updatedMergeRequest.hasConflicts) return [3 /*break*/, 7];
101
+ Logger_1.Logger.logMessage("Sack, send slack!");
102
+ Logger_1.Logger.logError("[".concat(project.title, "]: Requires cherrypicking. Merge conflicts found when trying to merge master into dev."));
103
+ logMessageSlack += "[".concat(project.title, "]: Requires cherrypicking. Requires cherrypicking. Merge conflicts found when trying to merge master into dev.\n");
104
+ logMessageSlack += " - ".concat(updatedMergeRequest.url, "\n");
105
+ return [3 /*break*/, 9];
106
+ case 7:
107
+ Logger_1.Logger.logMessage("Mergeing MR!");
108
+ return [4 /*yield*/, this.service.AcceptMergeRequest(project.id, mergeRequest.iid)];
109
+ case 8:
110
+ acceptMr = _b.sent();
111
+ Logger_1.Logger.logMessage(acceptMr.status);
112
+ _b.label = 9;
113
+ case 9: return [3 /*break*/, 11];
114
+ case 10:
115
+ Logger_1.Logger.logMessage("Could not find merge request!");
116
+ _b.label = 11;
117
+ case 11:
118
+ _i++;
119
+ return [3 /*break*/, 2];
120
+ case 12:
121
+ if (!(options.slackNotifier && logMessageSlack !== '')) return [3 /*break*/, 14];
122
+ threadLabel = "".concat(options.milestone, " merge conflicts found when merging master into dev.");
123
+ statusCleanMessage = 'No projects require cherrypicking';
124
+ return [4 /*yield*/, this.slackService.sendSlackStatusMessage({
125
+ emailList: [],
126
+ threadLabel: threadLabel,
127
+ statusMessage: logMessageSlack,
128
+ statusCleanMessage: statusCleanMessage
129
+ })];
130
+ case 13:
131
+ _b.sent();
132
+ _b.label = 14;
133
+ case 14: return [2 /*return*/, true];
134
+ }
135
+ });
136
+ });
137
+ };
138
+ MergeMasterToDevTask = __decorate([
139
+ (0, inversify_1.injectable)(),
140
+ __param(0, (0, inversify_1.inject)(types_1.SERVICES.GitLabService)),
141
+ __param(1, (0, inversify_1.inject)(types_1.SERVICES.SlackService)),
142
+ __metadata("design:paramtypes", [services_1.GitLabService,
143
+ services_1.SlackService])
144
+ ], MergeMasterToDevTask);
145
+ return MergeMasterToDevTask;
146
+ }());
147
+ exports.MergeMasterToDevTask = MergeMasterToDevTask;
@@ -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;