diff --git a/.github/workflows/builds.yml b/.github/workflows/builds.yml index e4eb3d9734..aea1f2742f 100644 --- a/.github/workflows/builds.yml +++ b/.github/workflows/builds.yml @@ -3217,3 +3217,77 @@ jobs: PATH="$PATH:$(pwd)" ./src/suricata --build-info - run: make install + pf-ring: + name: PF_RING + runs-on: ubuntu-latest + container: almalinux:9 + needs: [prepare-deps, debian-12-dist] + steps: + # Cache Rust stuff. + - name: Cache cargo registry + uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 + with: + path: ~/.cargo + key: ${{ github.job }}-cargo + + - name: Cache RPMs + uses: actions/cache@13aacd865c20de90d75de3b17ebe84f7a17d57d2 + with: + path: /var/cache/dnf + key: ${{ github.job }}-dnf + - run: echo "keepcache=1" >> /etc/dnf/dnf.conf + + - name: Determine number of CPUs + run: echo CPUS=$(nproc --all) >> $GITHUB_ENV + + - name: Install system packages + run: | + dnf -y install dnf-plugins-core epel-release + dnf config-manager --set-enabled crb + dnf -y install \ + autoconf \ + automake \ + diffutils \ + numactl-devel \ + dpdk-devel \ + file-devel \ + gcc \ + gcc-c++ \ + git \ + jansson-devel \ + libtool \ + libyaml-devel \ + libnfnetlink-devel \ + libnetfilter_queue-devel \ + libnet-devel \ + libcap-ng-devel \ + libevent-devel \ + libmaxminddb-devel \ + libpcap-devel \ + libtool \ + lz4-devel \ + make \ + pcre2-devel \ + pkgconfig \ + python3-devel \ + python3-sphinx \ + python3-yaml \ + rust-toolset \ + sudo \ + which \ + zlib-devel + + - name: Install PF_RING + run: | + curl https://packages.ntop.org/centos-stable/ntop.repo > /etc/yum.repos.d/ntop.repo + dnf install -y pfring + + - name: Download suricata.tar.gz + uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 + with: + name: dist + - run: tar xf suricata-*.tar.gz --strip-components=1 + - run: ./configure --enable-pfring + - run: make -j ${CPUS} + - run: make install + - run: test -e /usr/local/lib/suricata/pfring.so