Skip to content
You're viewing an older version of this GitHub Action. Do you want to see the latest version instead?
alert-triangle

GitHub Action

LFS-warning

v3.0

LFS-warning

alert-triangle

LFS-warning

Checks file sizes in a Pull Request and warns of large files

Installation

Copy and paste the following snippet into your .yml file.

              

- name: LFS-warning

uses: ppremk/lfs-warning@v3.0

Learn more about this action in ppremk/lfs-warning

Choose a version

LFS-Warning action

This action works to prevent both:

  • Large files that are not LFS tracked
  • Files that are LFS tracked

from being checked-in in non-pointer format/not stored in LFS. The latter happens if the client does not have git-lfs installed.

How it works

This action scans files in commits of a pull request and will mark the pull request as failed, add a lfs-detected! label and reply with an issue comment if any of the following is true about any of the pull request files:

  • The file size is greater than the configured file size limit threshold.
  • The file is tracked in LFS but is being checked-in as a regular file
    • the current implementation of this check is that the file has git attribute filter: lfs but does not contain the string version https://git-lfs.github.com/spec/v1'

pr-with-lfs-detected

Note: Remember to configure the branch protection rule and select the LFS-warning status when you enable the Required status check to pass option.

status-check

Inputs

filesizelimit

Required, set's the file size limit threshold. Accepts b (bytes), mb (megabytes) and gb (gigabytes) as units of measurement, if omitted interprets as bytes.

Default 10mb.

token

Optional. Takes a valid GitHub Token from the Repo by default.

exclusionPatterns

Optional. A newline delimited list of glob patterns that match checked in files to exclude form LFS Warning.

Outputs

lfsFiles

Returns an array of possible detected large file(s)

Usage

Consume the action by referencing the stable release

uses: actionsdesk/lfs-warning@v2.0
with:
  token: ${{ secrets.GITHUB_TOKEN }} # Optional
  with:
    filesizelimit: 10MB
    exclusionPatterns: |
      **/*.png

Contributers