Files
bacnet_stack/.github/workflows/lint.yml
T

119 lines
3.0 KiB
YAML

name: Quality
on:
push:
branches:
- master
pull_request:
branches:
- '*'
jobs:
pre-commit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: actions/setup-python@v6
- uses: pre-commit/action@v3.0.1
scan-build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Create LLVM clang-tools scan-build Workspace
run: |
sudo apt-get update -qq
sudo apt-get install -qq clang-tools
- name: Static Defect Analysis using scan-build
run: |
make clean
make scan-build
splint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Create SPLint Workspace
run: |
sudo apt-get update -qq
sudo apt-get install -qq splint
- name: Static Defect Analysis using SPLint
run: make splint
cppcheck:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Create CPPcheck Workspace
run: |
sudo apt-get update -qq
sudo apt-get install -qq cppcheck
- name: Static Defect Analysis using CPPcheck
run: |
cppcheck --version
make clean
make cppcheck
flawfinder:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Create Flawfinder Workspace
run: |
sudo apt-get update -qq
sudo apt-get install -qq flawfinder
- name: Static Defect Analysis using flawfinder
run: |
flawfinder --version
make clean
make flawfinder
codespell:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Create codespell Workspace
run: |
sudo apt-get update -qq
sudo apt-get install -qq codespell
- name: Static Spelling Analysis using codespell
run: make spell
unittest:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Create Build Environment
run: |
sudo apt-get update -qq
sudo apt-get install -qq lcov
- name: Run Unit Test with Code Coverage
run: make test
unittest-secure-connect:
runs-on: ubuntu-latest
steps:
- name: Checkout BACnet Stack
uses: actions/checkout@v5
- name: Checkout libwebsockets
uses: actions/checkout@v5
with:
repository: warmcat/libwebsockets
ref: v4.3-stable
path: libwebsockets
- name: Create BACnet/SC Build Environment
run: |
sudo apt-get update -qq
sudo apt-get install -qq lcov
sudo apt-get install -qq libssl-dev
sudo apt-get install -qq libcap-dev
sudo apt-get install -qq libuv1-dev
bash -c 'cd libwebsockets;mkdir build;cd build;cmake .. -DLWS_WITH_LIBUV=ON -DLWS_WITH_MINIMAL_EXAMPLES=0 -DLWS_MAX_SMP=32 -DCMAKE_POLICY_VERSION_MINIMUM=3.5;make'
sudo bash -c 'cd libwebsockets;cd build;make install'
- name: Run BACnet/SC Unit Test with Code Coverage
run: |
pwd
ls -al
echo "make test-bsc"