96 lines
3.4 KiB
YAML
96 lines
3.4 KiB
YAML
name: Lint
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
pull_request:
|
|
|
|
jobs:
|
|
quick-checks:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Fetch Wenet
|
|
uses: actions/checkout@v1
|
|
- name: Checkout PR tip
|
|
run: |
|
|
set -eux
|
|
if [[ "${{ github.event_name }}" == "pull_request" ]]; then
|
|
# We are on a PR, so actions/checkout leaves us on a merge commit.
|
|
# Check out the actual tip of the branch.
|
|
git checkout ${{ github.event.pull_request.head.sha }}
|
|
fi
|
|
echo ::set-output name=commit_sha::$(git rev-parse HEAD)
|
|
id: get_pr_tip
|
|
- name: Ensure no tabs
|
|
run: |
|
|
(! git grep -I -l $'\t' -- . ':(exclude)*.svg' ':(exclude)**Makefile' ':(exclude)**/contrib/**' ':(exclude)third_party' ':(exclude).gitattributes' ':(exclude).gitmodules' || (echo "The above files have tabs; please convert them to spaces"; false))
|
|
- name: Ensure no trailing whitespace
|
|
run: |
|
|
(! git grep -I -n $' $' -- . ':(exclude)third_party' ':(exclude).gitattributes' ':(exclude).gitmodules' || (echo "The above files have trailing whitespace; please remove them"; false))
|
|
|
|
flake8-py3:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Setup Python
|
|
uses: actions/setup-python@v1
|
|
with:
|
|
python-version: 3.x
|
|
architecture: x64
|
|
- name: Fetch Wenet
|
|
uses: actions/checkout@v1
|
|
- name: Checkout PR tip
|
|
run: |
|
|
set -eux
|
|
if [[ "${{ github.event_name }}" == "pull_request" ]]; then
|
|
# We are on a PR, so actions/checkout leaves us on a merge commit.
|
|
# Check out the actual tip of the branch.
|
|
git checkout ${{ github.event.pull_request.head.sha }}
|
|
fi
|
|
echo ::set-output name=commit_sha::$(git rev-parse HEAD)
|
|
id: get_pr_tip
|
|
- name: Run flake8
|
|
run: |
|
|
set -eux
|
|
pip install flake8==3.8.2 flake8-bugbear flake8-comprehensions flake8-executable flake8-pyi==20.5.0 mccabe pycodestyle==2.6.0 pyflakes==2.2.0
|
|
flake8 --version
|
|
flake8 | tee ${GITHUB_WORKSPACE}/flake8-output.txt
|
|
- name: Add annotations
|
|
uses: pytorch/add-annotations-github-action@master
|
|
with:
|
|
check_name: 'flake8-py3'
|
|
linter_output_path: 'flake8-output.txt'
|
|
commit_sha: ${{ steps.get_pr_tip.outputs.commit_sha }}
|
|
regex: '^(?<filename>.*?):(?<lineNumber>\d+):(?<columnNumber>\d+): (?<errorCode>\w\d+) (?<errorDesc>.*)'
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
cpplint:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Setup Python
|
|
uses: actions/setup-python@v1
|
|
with:
|
|
python-version: 3.x
|
|
architecture: x64
|
|
- name: Fetch Wenet
|
|
uses: actions/checkout@v1
|
|
- name: Checkout PR tip
|
|
run: |
|
|
set -eux
|
|
if [[ "${{ github.event_name }}" == "pull_request" ]]; then
|
|
# We are on a PR, so actions/checkout leaves us on a merge commit.
|
|
# Check out the actual tip of the branch.
|
|
git checkout ${{ github.event.pull_request.head.sha }}
|
|
fi
|
|
echo ::set-output name=commit_sha::$(git rev-parse HEAD)
|
|
id: get_pr_tip
|
|
- name: Run cpplint
|
|
run: |
|
|
set -eux
|
|
pip install cpplint
|
|
cpplint --version
|
|
cpplint --recursive .
|
|
if [ $? != 0 ]; then exit 1; fi
|
|
|