Skip to content

Commit 226a4ff

Browse files
committed
qa: add debug logging on why a job might not be excluded
Signed-off-by: Maximilian Bösing <[email protected]>
1 parent 5a7d64c commit 226a4ff

File tree

1 file changed

+23
-6
lines changed

1 file changed

+23
-6
lines changed

src/config/app.ts

Lines changed: 23 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -242,7 +242,12 @@ function isJobExcludedByDeprecatedCommandName(job: Job, exclusions: JobToExclude
242242
);
243243
}
244244

245-
function isJobExcludedByConfiguration(job: Job, exclude: JobToExcludeFromFile, config: Config): boolean {
245+
function isJobExcludedByConfiguration(
246+
job: Job,
247+
exclude: JobToExcludeFromFile,
248+
config: Config,
249+
logger: Logger
250+
): boolean {
246251
const jobName = isJobFromTool(job) ? job.tool.name : job.name;
247252

248253
if (jobName !== exclude.name) {
@@ -253,23 +258,35 @@ function isJobExcludedByConfiguration(job: Job, exclude: JobToExcludeFromFile, c
253258
const dependenciesToExclude = exclude.dependencies ?? WILDCARD_ALIAS;
254259

255260
if (!isAnyPhpVersionType(phpVersionToExclude)) {
261+
const nonExcludedPhpVersionDebugMessage = `Job with name ${ jobName } is not matching exclusion rule`
262+
+ ` with name ${ exclude.name } due to non-excluded php version.`;
263+
256264
if (isLowestPhpVersionType(phpVersionToExclude) && job.job.php !== config.minimumPhpVersion) {
265+
logger.debug(nonExcludedPhpVersionDebugMessage);
266+
257267
return false;
258268
}
259269

260270
if (isLatestPhpVersionType(phpVersionToExclude) && job.job.php !== config.latestPhpVersion) {
271+
logger.debug(nonExcludedPhpVersionDebugMessage);
272+
261273
return false;
262274
}
263275

264276
if (phpVersionToExclude !== job.job.php) {
277+
logger.debug(nonExcludedPhpVersionDebugMessage);
278+
265279
return false;
266280
}
267281
}
268282

269-
if (!isAnyComposerDependencySet(dependenciesToExclude)) {
270-
if (dependenciesToExclude !== job.job.composerDependencySet) {
271-
return false;
272-
}
283+
if (!isAnyComposerDependencySet(dependenciesToExclude) && dependenciesToExclude !== job.job.composerDependencySet) {
284+
logger.debug(
285+
`Job with name ${ jobName } is not matching exclusion rule`
286+
+ ` with name ${ exclude.name } due to non-excluded Composer dependencies.`
287+
);
288+
289+
return false;
273290
}
274291

275292
return true;
@@ -280,7 +297,7 @@ function isJobExcluded(job: Job, exclusions: JobToExcludeFromFile[], config: Con
280297
return false;
281298
}
282299

283-
if (exclusions.some((exclude) => isJobExcludedByConfiguration(job, exclude, config))) {
300+
if (exclusions.some((exclude) => isJobExcludedByConfiguration(job, exclude, config, logger))) {
284301
logger.info(`Job with name ${ job.name } is excluded due to application config.`);
285302

286303
return true;

0 commit comments

Comments
 (0)