This commit is contained in:
Scott Crooks 2025-04-11 20:06:24 +00:00 committed by GitHub
commit 829c9aa8e6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 16 additions and 0 deletions

View file

@ -45,6 +45,10 @@ inputs:
required: false
default: '100'
outputs:
all_changed:
description: Boolean value indicating if all of the filters contained at least one changed file
any_changed:
description: Boolean value indicating if any of the filters contained at least one changed file
changes:
description: JSON array with names of all filters matching any of changed files
runs:

6
dist/index.js vendored
View file

@ -745,11 +745,14 @@ async function getChangedFilesFromApi(token, pullRequest) {
function exportResults(results, format) {
core.info('Results:');
const changes = [];
let anyChanged = false;
let allChanged = true;
for (const [key, files] of Object.entries(results)) {
const value = files.length > 0;
core.startGroup(`Filter ${key} = ${value}`);
if (files.length > 0) {
changes.push(key);
anyChanged = true;
core.info('Matching files:');
for (const file of files) {
core.info(`${file.filename} [${file.status}]`);
@ -757,6 +760,7 @@ function exportResults(results, format) {
}
else {
core.info('Matching files: none');
allChanged = false;
}
core.setOutput(key, value);
core.setOutput(`${key}_count`, files.length);
@ -764,6 +768,8 @@ function exportResults(results, format) {
const filesValue = serializeExport(files, format);
core.setOutput(`${key}_files`, filesValue);
}
core.setOutput('all_changed', allChanged);
core.setOutput('any_changed', anyChanged);
core.endGroup();
}
if (results['changes'] === undefined) {

View file

@ -231,17 +231,21 @@ async function getChangedFilesFromApi(token: string, pullRequest: PullRequestEve
function exportResults(results: FilterResults, format: ExportFormat): void {
core.info('Results:')
const changes = []
let anyChanged = false
let allChanged = true
for (const [key, files] of Object.entries(results)) {
const value = files.length > 0
core.startGroup(`Filter ${key} = ${value}`)
if (files.length > 0) {
changes.push(key)
anyChanged = true
core.info('Matching files:')
for (const file of files) {
core.info(`${file.filename} [${file.status}]`)
}
} else {
core.info('Matching files: none')
allChanged = false
}
core.setOutput(key, value)
@ -250,6 +254,8 @@ function exportResults(results: FilterResults, format: ExportFormat): void {
const filesValue = serializeExport(files, format)
core.setOutput(`${key}_files`, filesValue)
}
core.setOutput('all_changed', allChanged)
core.setOutput('any_changed', anyChanged)
core.endGroup()
}