summaryrefslogtreecommitdiffstats
path: root/.github
diff options
context:
space:
mode:
authorMoritz Hedtke <Moritz.Hedtke@t-online.de>2021-11-27 20:35:29 +0100
committerzowoq <59103226+zowoq@users.noreply.github.com>2021-11-30 09:41:52 +1000
commit4db84ed126a16e226c5f1a3f13c7bee92fa0a3a4 (patch)
tree5c92733f1a1bef0541e83d85a82175d567f1e63a /.github
parentd8d3cb95e9c05e56d517a369ccbe15fedd82edc3 (diff)
.github/workflows/editorconfig.yml: Don't use GitHub API for PR diff.
This caused ratelimits for large PRs (reformatting PRs)
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/editorconfig.yml33
1 files changed, 15 insertions, 18 deletions
diff --git a/.github/workflows/editorconfig.yml b/.github/workflows/editorconfig.yml
index 4cd3a1dfa8e8..7433d03eea7d 100644
--- a/.github/workflows/editorconfig.yml
+++ b/.github/workflows/editorconfig.yml
@@ -13,33 +13,30 @@ jobs:
runs-on: ubuntu-latest
if: github.repository_owner == 'NixOS'
steps:
- - name: Get list of changed files from PR
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- run: |
- echo 'PR_DIFF<<EOF' >> $GITHUB_ENV
- gh api \
- repos/NixOS/nixpkgs/pulls/${{github.event.number}}/files --paginate \
- | jq '.[] | select(.status != "removed") | .filename' \
- >> $GITHUB_ENV
- echo 'EOF' >> $GITHUB_ENV
- uses: actions/checkout@v2
- with:
- # pull_request_target checks out the base branch by default
- ref: refs/pull/${{ github.event.pull_request.number }}/merge
- if: env.PR_DIFF
- uses: cachix/install-nix-action@v16
- if: env.PR_DIFF
with:
# nixpkgs commit is pinned so that it doesn't break
nix_path: nixpkgs=https://github.com/NixOS/nixpkgs/archive/f93ecc4f6bc60414d8b73dbdf615ceb6a2c604df.tar.gz
- name: install editorconfig-checker
run: nix-env -iA editorconfig-checker -f '<nixpkgs>'
- if: env.PR_DIFF
+ - name: Get list of changed files from PR
+ run: |
+ git fetch origin --depth 1 ${{ github.event.pull_request.head.sha }}
+ git checkout ${{ github.event.pull_request.head.sha }}
+
+ git fetch origin --depth 1 ${{ github.event.pull_request.base.sha }}
+ git checkout ${{ github.event.pull_request.base.sha }}
+
+ git fetch origin --depth 1 pull/${{ github.event.pull_request.number }}/merge
+ # check this out last as editorconfig should check this commit
+ git checkout FETCH_HEAD
+
+ # everything except --diff-filter=D (deleted)
+ git diff --diff-filter=ACMRTUXB --name-only ${{ github.event.pull_request.base.sha }} ${{ github.event.pull_request.head.sha }} > $HOME/changed_files
- name: Checking EditorConfig
- if: env.PR_DIFF
run: |
- echo "$PR_DIFF" | xargs editorconfig-checker -disable-indent-size
+ cat $HOME/changed_files | xargs -r editorconfig-checker -disable-indent-size
- if: ${{ failure() }}
run: |
echo "::error :: Hey! It looks like your changes don't follow our editorconfig settings. Read https://editorconfig.org/#download to configure your editor so you never see this error again."