44 lines
1.7 KiB
YAML
44 lines
1.7 KiB
YAML
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 '<nixpkgs>'
|
|
- 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."
|
|
|