pr-size-labeler/action.yml
John Kuhn cc6827c0ee
Support ignoring file deletions (#76)
* Support ignoring file deletions

Tweak action.yml

* Tweak the readme description

Co-authored-by: Onkar Ruikar <87750369+OnkarRuikar@users.noreply.github.com>

* tweak removed file check to include line_deletion var

Co-authored-by: Onkar Ruikar <87750369+OnkarRuikar@users.noreply.github.com>

* docs: unify the "Basic concepts or assumptions" readme section into the most related arguments to make it easier to read

Improve the existing contribution guide (#74)

* Improve the existing contribution guide

* reorder the contribution steps to push testing up

Co-authored-by: Javier Ferrer González <javier.ferrer@codely.com>

* tweak contribution process opener copy

Co-authored-by: Javier Ferrer González <javier.ferrer@codely.com>

---------

Co-authored-by: Javier Ferrer González <javier.ferrer@codely.com>

Put back accidental deletion

---------

Co-authored-by: Onkar Ruikar <87750369+OnkarRuikar@users.noreply.github.com>
Co-authored-by: Javier Ferrer González <javier.ferrer@codely.com>
Co-authored-by: Rob W <rlw0788@gmail.com>
2024-05-14 06:15:36 -07:00

92 lines
3 KiB
YAML

name: 'Pull Request size labeler'
description: 'Label a PR based on the amount of changes'
inputs:
GITHUB_TOKEN:
description: 'GitHub token'
required: true
xs_label:
description: 'Label for xs PR'
required: false
default: 'size/xs'
xs_max_size:
description: 'Max size for a PR to be considered xs'
required: false
default: '10'
s_label:
description: 'Label for s PR'
required: false
default: 'size/s'
s_max_size:
description: 'Max size for a PR to be considered s'
required: false
default: '100'
m_label:
description: 'Label for m PR'
required: false
default: 'size/m'
m_max_size:
description: 'Max size for a PR to be considered m'
required: false
default: '500'
l_label:
description: 'Label for l PR'
required: false
default: 'size/l'
l_max_size:
description: 'Max size for a PR to be considered l'
required: false
default: '1000'
xl_label:
description: 'Label for xl PR'
required: false
default: 'size/xl'
fail_if_xl:
description: 'Report GitHub Workflow failure if the PR size is xl allowing to forbid PR merge'
required: false
default: 'false'
message_if_xl:
description: 'Message to show if the PR size is xl'
required: false
default: >
This PR exceeds the recommended size of 1000 lines.
Please make sure you are NOT addressing multiple issues with one PR.
Note this PR might be rejected due to its size.
github_api_url:
description: 'URL to the API of your Github Server, only necessary for Github Enterprise customers'
required: false
default: '${{ github.api_url }}'
files_to_ignore:
description: 'Whitespace separated list of files to ignore when calculating the PR size (sum of changes)'
required: false
default: ''
ignore_line_deletions:
description: 'Whether to ignore lines which are deleted when calculating the PR size. If set to "true", deleted lines will be ignored.'
required: false
default: 'false'
ignore_file_deletions:
description: 'Whether to ignore files which are deleted when calculating the PR size. If set to "true", deleted files will be ignored.'
required: false
default: 'false'
runs:
using: 'docker'
image: 'Dockerfile'
args:
- --github_token=${{ inputs.GITHUB_TOKEN }}
- --github_api_url=${{ inputs.github_api_url }}
- --xs_label=${{ inputs.xs_label }}
- --xs_max_size=${{ inputs.xs_max_size }}
- --s_label=${{ inputs.s_label }}
- --s_max_size=${{ inputs.s_max_size }}
- --m_label=${{ inputs.m_label }}
- --m_max_size=${{ inputs.m_max_size }}
- --l_label=${{ inputs.l_label }}
- --l_max_size=${{ inputs.l_max_size }}
- --xl_label=${{ inputs.xl_label }}
- --fail_if_xl=${{ inputs.fail_if_xl }}
- --message_if_xl="${{ inputs.message_if_xl }}"
- --files_to_ignore=${{ inputs.files_to_ignore }}
- --ignore_line_deletions=${{ inputs.ignore_line_deletions }}
- --ignore_file_deletions=${{ inputs.ignore_file_deletions }}
branding:
icon: 'tag'
color: 'green'