You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
suricata/.github/workflows/scan-build.yml

102 lines
2.8 KiB
YAML

name: Scan-build
on:
push:
paths-ignore:
- "doc/**"
- "etc/schema.json"
pull_request:
paths-ignore:
- "doc/**"
- "etc/schema.json"
permissions: read-all
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
scan-build:
name: Scan-build
runs-on: ubuntu-latest
container: ubuntu:26.04
steps:
- name: Cache scan-build
uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9
with:
path: ~/.cargo
key: scan-build
- run: apt update && apt -y install git
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1
- name: Build with scan-build
run: ./qa/ci/scan-build.sh
- name: 'Upload Scan Build Results'
uses: actions/upload-artifact@v7.0.1
if: always()
with:
name: scan-build-results
path: scan-build-report/
retention-days: 5
gcc-analyzer:
name: GCC analyzer
runs-on: ubuntu-latest
container: ubuntu:26.04
steps:
- name: Cache scan-build
uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9
with:
path: ~/.cargo
key: scan-build
- name: Install system packages
run: |
apt update
apt -y install \
libpcre2-dev \
build-essential \
autoconf \
automake \
cargo \
cbindgen \
dpdk-dev \
gcc-16 \
git \
libtool \
libpcap-dev \
libnet1-dev \
libyaml-0-2 \
libyaml-dev \
libcap-ng-dev \
libcap-ng0 \
libmagic-dev \
libnetfilter-log-dev \
libnetfilter-queue-dev \
libnetfilter-queue1 \
libnfnetlink-dev \
libnfnetlink0 \
libnuma-dev \
libhiredis-dev \
libhyperscan-dev \
libjansson-dev \
libevent-dev \
libevent-pthreads-2.1-7 \
liblz4-dev \
make \
python3-yaml \
rustc \
software-properties-common \
zlib1g \
zlib1g-dev
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1
- run: git config --global --add safe.directory /__w/suricata/suricata
- run: ./scripts/bundle.sh
- run: ./autogen.sh
- run: ./configure --enable-warnings --enable-dpdk --enable-nfqueue --enable-nflog --enable-debug-validation
env:
CC: gcc-16
CFLAGS: "-fanalyzer -Werror"
SURICATA_LUA_SYS_CFLAGS: ""
- run: make