Skip to content

Commit 91f107e

Browse files
committed
Fixup after nobuild PR
1 parent 18109a6 commit 91f107e

File tree

4 files changed

+49
-29
lines changed

4 files changed

+49
-29
lines changed

bin/ncu-ci

Lines changed: 4 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -247,10 +247,9 @@ class CICommand {
247247
case CITGM:
248248
case CITGM_NOBUILD:
249249
if (job.jobid2) {
250-
const ids = [job.jobid, job.jobid2];
251-
build = new CITGMComparisonBuild(cli, request, ids);
250+
build = new CITGMComparisonBuild(cli, request, job);
252251
} else {
253-
build = new CITGMBuild(cli, request, job.jobid);
252+
build = new CITGMBuild(cli, request, job);
254253
}
255254
break;
256255
case BENCHMARK:
@@ -375,21 +374,9 @@ class JobCommand extends CICommand {
375374

376375
queue.push({
377376
type: commandToType[this.command],
378-
<<<<<<< HEAD
379-
<<<<<<< HEAD
380-
jobid: this.argv.jobid,
381-
noBuild: this.argv.nobuild || false
382-
||||||| merged common ancestors
383-
jobid: this.argv.jobid
384-
=======
385-
jobid: argv.jobid
386-
>>>>>>> refactor: pull some builds into own files
387-
||||||| merged common ancestors
388-
jobid: argv.jobid
389-
=======
390377
jobid: argv.jobid,
391-
jobid2: argv.jobid2
392-
>>>>>>> feat: enable citgm run comparisons
378+
jobid2: argv.jobid2,
379+
noBuild: this.argv.nobuild || false
393380
});
394381
}
395382
}

lib/ci/build-types/citgm_build.js

Lines changed: 27 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,22 @@ const {
1616
} = require('../ci_failure_parser');
1717

1818
class CITGMBuild extends TestBuild {
19-
constructor(cli, request, id) {
20-
const path = `job/citgm-smoker/${id}/`;
19+
constructor(cli, request, job) {
20+
const { jobid, noBuild } = job;
21+
const path = noBuild
22+
? `job/citgm-smoker-nobuild/${jobid}/`
23+
: `job/citgm-smoker/${jobid}/`;
24+
2125
const tree = CITGM_MAIN_TREE;
2226

2327
super(cli, request, path, tree);
2428

25-
this.id = id;
29+
this.id = jobid;
30+
this.noBuild = noBuild;
2631
}
2732

2833
async getResults() {
29-
const { apiUrl, id } = this;
34+
const { apiUrl } = this;
3035

3136
let headerData;
3237
try {
@@ -45,7 +50,7 @@ class CITGMBuild extends TestBuild {
4550
// they do summary data, so we need to update the endpoint
4651
// and issue a second API call in order to fetch result data.
4752
this.tree = CITGM_REPORT_TREE;
48-
this.path = `job/citgm-smoker/${id}/testReport/`;
53+
this.updatePath(true);
4954

5055
let resultData;
5156
try {
@@ -60,7 +65,7 @@ class CITGMBuild extends TestBuild {
6065
this.results = this.parseResults(resultData);
6166

6267
// Update id again so that it correctly displays in Summary output.
63-
this.path = `job/citgm-smoker/${id}/`;
68+
this.updatePath(false);
6469

6570
return { result };
6671
}
@@ -93,6 +98,19 @@ class CITGMBuild extends TestBuild {
9398
return results;
9499
}
95100

101+
updatePath(testReport) {
102+
const { id, noBuild } = this;
103+
if (testReport) {
104+
this.path = noBuild
105+
? `job/citgm-smoker-nobuild/${id}/testReport/`
106+
: `job/citgm-smoker/${id}/testReport/`;
107+
} else {
108+
this.path = noBuild
109+
? `job/citgm-smoker-nobuild/${id}/`
110+
: `job/citgm-smoker/${id}/`;
111+
}
112+
}
113+
96114
displayBuilds() {
97115
const { cli, results } = this;
98116
const { failed, skipped, passed, total } = results.statistics;
@@ -154,8 +172,10 @@ class CITGMBuild extends TestBuild {
154172
output += `### [${failure}](${data.url})\n\n`;
155173

156174
const failures = data.modules.map(f => `* ${f.name}`);
157-
output += `${failures.join('\n')}\n\n`;
175+
const items = failures.length > 0 ? `${failures.join('\n')}` : 'None.';
176+
output += `${items}\n\n`;
158177
}
178+
159179
return output;
160180
}
161181
}

lib/ci/build-types/citgm_comparison_build.js

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,14 +4,20 @@ const { statusType } = require('../ci_utils');
44
const { CITGMBuild } = require('./citgm_build');
55

66
class CITGMComparisonBuild {
7-
constructor(cli, request, ids) {
8-
const baseBuild = new CITGMBuild(cli, request, ids[0]);
9-
const comparisonBuild = new CITGMBuild(cli, request, ids[1]);
7+
constructor(cli, request, job) {
8+
const { jobid, jobid2, noBuild } = job;
9+
10+
const baseBuild = new CITGMBuild(cli, request, { jobid, noBuild });
11+
12+
// noBuild in a comparison build only applies to the base build.
13+
const comparisonBuild = new CITGMBuild(cli, request, {
14+
jobid: jobid2,
15+
noBuild: false
16+
});
1017

1118
this.cli = cli;
1219
this.builds = { baseBuild, comparisonBuild };
1320
this.results = {};
14-
this.ids = ids;
1521
}
1622

1723
async getResults() {

test/unit/ci_result_parser.test.js

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,14 @@ describe('Jenkins', () => {
232232
jobCache.enable();
233233

234234
const cli = new TestCLI();
235-
const comparisonBuild = new CITGMComparisonBuild(cli, {}, [2392, 2390]);
235+
236+
const job = {
237+
jobid: 2392,
238+
jobid2: 2390,
239+
noBuild: false
240+
};
241+
242+
const comparisonBuild = new CITGMComparisonBuild(cli, {}, job);
236243
await comparisonBuild.getResults();
237244

238245
const expectedJson = fixtures.readJSON(...prefix, 'expected.json');

0 commit comments

Comments
 (0)