name: "Checking EditorConfig" permissions: read-all on: # avoids approving first time contributors pull_request_target: branches-ignore: - 'release-**' jobs: tests: runs-on: ubuntu-latest if: github.repository_owner == 'NixOS' steps: - uses: actions/checkout@v2 - uses: cachix/install-nix-action@v16 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 '' - 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 run: | 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."