Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,12 @@ Optional. The name of the label, defaults to lfs-detected!

Optional. The color of the label, defaults to ff1493.

### `sendComment`

Optional. If set to false, disables sending comments.

Default `true`.

## Outputs

### `lfsFiles`
Expand Down
4 changes: 4 additions & 0 deletions action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@ inputs:
required: false
default: ff1493
description: The color of the label, defaults to ff1493
sendComment:
required: false
default: true
description: Disable sending comments
outputs:
lfsFiles: # output will be available to future steps
description: "Array of possible detected large file(s)"
Expand Down
34 changes: 21 additions & 13 deletions src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -88,27 +88,35 @@ async function run() {
core.info('Detected file(s) that should be in LFS: ');
core.info(lsfFiles.join('\n'));

const body = getCommentBody(
largeFiles,
accidentallyCheckedInLsfFiles,
fsl
core.setOutput('lfsFiles', lsfFiles);
core.setFailed(
'Large file(s) detected! Setting PR status to failed. Consider using git-lfs to track the LFS file(s)'
);

await Promise.all([
octokit.rest.issues.addLabels({
...issueBaseProps,
labels: [labelName],
}),
octokit.rest.issues.createComment({
...issueBaseProps,
body,
}),
]);

core.setOutput('lfsFiles', lsfFiles);
core.setFailed(
'Large file(s) detected! Setting PR status to failed. Consider using git-lfs to track the LFS file(s)'
);

const send_comment = core.getInput('sendComment');
if (send_comment === "" || send_comment === "true") {
const body = getCommentBody(
largeFiles,
accidentallyCheckedInLsfFiles,
fsl
);

await Promise.all([
octokit.rest.issues.createComment({
...issueBaseProps,
body,
}),
]);
} else if (send_comment !== "false") {
throw new Error("sendComment must be either true or false");
}
} else {
core.info('No large file(s) detected...');

Expand Down