Add CI check for mixed line endings
Trigger workflow on all file changes. Closes https://github.com/wxWidgets/wxWidgets/pull/2224
This commit is contained in:
parent
7a74c0872c
commit
36ab71301c
33
.github/workflows/code_checks.yml
vendored
33
.github/workflows/code_checks.yml
vendored
@ -5,25 +5,9 @@ on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
paths:
|
||||
- '.github/workflows/code_checks.yml'
|
||||
- 'docs/**'
|
||||
- 'include/**'
|
||||
- 'interface/**'
|
||||
- 'misc/suppressions/**'
|
||||
- '**/*.md'
|
||||
- '!docs/changes*txt'
|
||||
pull_request:
|
||||
branches:
|
||||
- master
|
||||
paths:
|
||||
- '.github/workflows/code_checks.yml'
|
||||
- 'docs/**'
|
||||
- 'include/**'
|
||||
- 'interface/**'
|
||||
- 'misc/suppressions/**'
|
||||
- '**/*.md'
|
||||
- '!docs/changes*txt'
|
||||
|
||||
jobs:
|
||||
check-unix:
|
||||
@ -66,3 +50,20 @@ jobs:
|
||||
':!**/*.sln' \
|
||||
':!**/*.vcproj' \
|
||||
':!**/*.xpm'
|
||||
|
||||
|
||||
check-mixed-eol:
|
||||
runs-on: ubuntu-20.04
|
||||
name: Check Mixed EOL
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dos2unix
|
||||
run: |
|
||||
sudo apt-get install -y dos2unix
|
||||
|
||||
- name: Check for mixed EOL
|
||||
run: |
|
||||
./misc/scripts/check_mixed_eol.sh
|
||||
|
35
misc/scripts/check_mixed_eol.sh
Executable file
35
misc/scripts/check_mixed_eol.sh
Executable file
@ -0,0 +1,35 @@
|
||||
#!/bin/bash
|
||||
|
||||
cd `dirname "$0"`/../..
|
||||
|
||||
find . \( \
|
||||
-path './.git' -prune -o \
|
||||
-path './3rdparty' -prune -o \
|
||||
-path './src/expat' -prune -o \
|
||||
-path './src/jpeg' -prune -o \
|
||||
-path './src/png' -prune -o \
|
||||
-path './src/tiff' -prune -o \
|
||||
-path './src/zlib' -prune \) \
|
||||
-o -type f -print0 |
|
||||
(
|
||||
while IFS= read -r -d '' file; do
|
||||
case "$file" in
|
||||
*.ani | *.bmp | *.chm | *.dia | *.gif | *.gz | *.hlp | *.icns | *.ico | *.jpg | *.mo | *.mpg | *.pcx | *.pdf | *.png | *.pnm | *.tga | *.tif | *.ttf | *.wav | *.zip )
|
||||
continue
|
||||
;;
|
||||
esac
|
||||
|
||||
read dos unix mac <<< $(dos2unix --info=dum "$file" | awk '{print $1, $2, $3}')
|
||||
if [[ "$dos" -eq "0" ]] && [[ "$unix" -eq "0" ]]; then
|
||||
:
|
||||
elif [[ "$dos" -eq "0" ]] && [[ "$mac" -eq "0" ]]; then
|
||||
:
|
||||
elif [[ "$unix" -eq "0" ]] && [[ "$mac" -eq "0" ]]; then
|
||||
:
|
||||
else
|
||||
echo "$file has mixed EOL"
|
||||
rc=$((rc+1))
|
||||
fi
|
||||
done
|
||||
exit $rc
|
||||
)
|
Loading…
Reference in New Issue
Block a user