From 5d27cd6fae6ac728ae956c8ddd7945dde15555f0 Mon Sep 17 00:00:00 2001 From: Alicia Sykes Date: Sun, 12 Sep 2021 22:31:49 +0100 Subject: [PATCH] :building_construction: Actions for monitoring PR size --- .github/workflows/get-size.yml | 24 +++++++++++++++++++++--- .github/workflows/repo-visualization.yml | 20 ++++++++++++++++++++ 2 files changed, 41 insertions(+), 3 deletions(-) create mode 100644 .github/workflows/repo-visualization.yml diff --git a/.github/workflows/get-size.yml b/.github/workflows/get-size.yml index b8aae5bf..f2576fef 100644 --- a/.github/workflows/get-size.yml +++ b/.github/workflows/get-size.yml @@ -1,12 +1,30 @@ # Adds a comment to new PRs, showing the compressed size and size difference of new code -name: 🌈 Get Compressed Size +# And labels the PR based on the number of lines changes +name: 🌈 Check PR Size on: [pull_request] jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 - - uses: preactjs/compressed-size-action@v2 + - 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 }} pattern: "./dist/**/**" + # 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 }} + xs_max_size: '10' + s_max_size: '100' + m_max_size: '500' + l_max_size: '1000' + 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. diff --git a/.github/workflows/repo-visualization.yml b/.github/workflows/repo-visualization.yml new file mode 100644 index 00000000..23b7ac6d --- /dev/null +++ b/.github/workflows/repo-visualization.yml @@ -0,0 +1,20 @@ +# Generates diagram showing file breakdown +name: 📊 Generate Repo Visualization +on: + workflow_dispatch: # Manual dispatch + schedule: + - cron: '0 1 * * 0' # At 01:00 on Sunday. +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@master + - name: Update diagram + uses: githubocto/repo-visualizer@0.7.1 + with: + root_path: 'src/' + output_file: docs/assets/repo-visualization.svg + excluded_paths: dist,node_modules + commit_message: ':yellow_heart: Updates repo diagram' + branch: master \ No newline at end of file