espressif_tinyusb/.github/workflows/pre-commit.yml

55 lines
1.1 KiB
YAML

name: pre-commit
on:
push:
pull_request:
branches: [ master ]
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
pre-commit:
runs-on: ubuntu-latest
steps:
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: '3.x'
- name: Setup Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.0'
- name: Checkout TinyUSB
uses: actions/checkout@v3
- name: Run codespell
uses: codespell-project/actions-codespell@master
- name: Run Unit Tests
run: |
# Install Ceedling
gem install ceedling
cd test/unit-test
ceedling test:all
- name: Fetch deps
run: |
sudo apt update && sudo apt install libc++abi-dev libc++-dev
fuzz_harness=$(ls -d test/fuzz/device/*/ test/fuzz/host/*/)
for h in $fuzz_harness
do
make $h get-deps
done
- name: Build Fuzzer
run: |
fuzz_harness=$(ls -d test/fuzz/device/*/ test/fuzz/host/*/)
for h in $fuzz_harness
do
make $h all
done