ci: Print eslint results to stdout as well

The eslint jobs report their results as artifacts in junit format,
so that gitlab can present them in its UI.

However many people miss that, and unsuccessfully check the logs
instead.

Account for that by also printing the results to stdout.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2829>
This commit is contained in:
Florian Müllner 2023-07-08 13:06:05 +02:00 committed by Marge Bot
parent d52b1576ac
commit 3a086c43ae
2 changed files with 11 additions and 2 deletions

View File

@ -142,7 +142,7 @@ eslint:
stage: review
script:
- export NODE_PATH=$(npm root -g)
- ./.gitlab-ci/run-eslint --output-file ${LINT_LOG} --format junit
- ./.gitlab-ci/run-eslint --output-file ${LINT_LOG} --format junit --stdout
artifacts:
reports:
junit: ${LINT_LOG}
@ -155,7 +155,7 @@ eslint_mr:
stage: review
script:
- export NODE_PATH=$(npm root -g)
- ./.gitlab-ci/run-eslint --output-file ${LINT_MR_LOG} --format junit
- ./.gitlab-ci/run-eslint --output-file ${LINT_MR_LOG} --format junit --stdout
--remote ${CI_MERGE_REQUEST_PROJECT_URL}.git
--branch ${CI_MERGE_REQUEST_TARGET_BRANCH_NAME}
only:

View File

@ -81,6 +81,10 @@ async function getMergeRequestChanges(remote, branch) {
return report;
}
function hasOption(...names) {
return process.argv.some(arg => names.includes(arg));
}
function getOption(...names) {
const optIndex =
process.argv.findIndex(arg => names.includes(arg)) + 1;
@ -120,6 +124,11 @@ function getOption(...names) {
if (outputPath) {
fs.mkdirSync(path.dirname(outputPath), { recursive: true });
fs.writeFileSync(outputPath, resultText);
if (hasOption('--stdout')) {
const consoleFormatter = await regular.loadFormatter();
console.log(consoleFormatter.format(commonResults));
}
} else {
console.log(resultText);
}