# Adds a comment to new PRs, showing the compressed size and size difference of new code # And also labels the PR based on the number of lines changes name: 🌈 Check PR Size on: [pull_request] jobs: build: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2 # Find and comment with compressed size - name: Get Compressed Size uses: preactjs/compressed-size-action@v2 with: repo-token: ${{ secrets.BOT_GITHUB_TOKEN || secrets.GITHUB_TOKEN }} pattern: './dist/**/*.{js,css,html}' strip-hash: '\\b\\w{8}\\.' exclude: '{./dist/manifest.json,**/*.map,**/node_modules/**}' minimum-change-threshold: 100 # Check number of lines of code added - name: Label based on Lines of Code uses: codelytv/pr-size-labeler@v1 with: GITHUB_TOKEN: ${{ secrets.BOT_GITHUB_TOKEN || secrets.GITHUB_TOKEN }} xs_max_size: '10' s_max_size: '100' m_max_size: '500' l_max_size: '1000' s_label: '🟩 PR - Small' m_label: '🟨 PR - Medium' l_label: '🟧 PR - Large' xl_label: '🟥 PR - XL' fail_if_xl: 'false' message_if_xl: > It looks like this PR is very large (over 1000 lines). Try to avoid addressing multiple issues in a single PR, and in the future consider breaking large tasks down into smaller steps. This it to make reviewing, testing, reverting and general quality management easier.