diff --git a/.github/workflows/builds.yml b/.github/workflows/builds.yml index 4f0ff34fcabf..4633faf965de 100644 --- a/.github/workflows/builds.yml +++ b/.github/workflows/builds.yml @@ -497,6 +497,197 @@ jobs: - run: suricatasc -h - run: suricata-update -V + centos-stream9: + name: CentOS Stream 9 + runs-on: ubuntu-latest + container: quay.io/centos/centos:stream9 + needs: [prepare-deps, debian-12-dist] + steps: + # Cache Rust stuff. + - name: Cache cargo registry + uses: actions/cache@v3.3.1 + with: + path: ~/.cargo + key: ${{ github.job }}-cargo + + - name: Cache RPMs + uses: actions/cache@v3.3.1 + with: + path: /var/cache/dnf + key: ${{ github.job }}-dnf + - run: echo "keepcache=1" >> /etc/dnf/dnf.conf + + - name: Install system packages + run: | + dnf -y install dnf-plugins-core epel-release + dnf config-manager --set-enabled crb + dnf -y install \ + autoconf \ + automake \ + cargo-vendor \ + cbindgen \ + diffutils \ + numactl-devel \ + dpdk-devel \ + file-devel \ + gcc \ + gcc-c++ \ + git \ + jansson-devel \ + jq \ + lua-devel \ + libtool \ + libyaml-devel \ + libnfnetlink-devel \ + libnetfilter_queue-devel \ + libnet-devel \ + libcap-ng-devel \ + libevent-devel \ + libmaxminddb-devel \ + libpcap-devel \ + libtool \ + lz4-devel \ + make \ + nss-devel \ + pcre2-devel \ + pkgconfig \ + python3-devel \ + python3-sphinx \ + python3-yaml \ + rust-toolset \ + sudo \ + which \ + zlib-devel + - name: Download suricata.tar.gz + uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a + with: + name: dist + - run: tar zxvf suricata-*.tar.gz --strip-components=1 + - name: ./configure + run: CFLAGS="${DEFAULT_CFLAGS}" ./configure + - run: make -j2 + - run: make install + - run: make install-conf + - run: suricatasc -h + - run: suricata-update -V + - name: Check if Suricata-Update example configuration files are installed + run: | + test -e /usr/local/lib/suricata/python/suricata/update/configs/disable.conf + test -e /usr/local/lib/suricata/python/suricata/update/configs/drop.conf + test -e /usr/local/lib/suricata/python/suricata/update/configs/enable.conf + test -e /usr/local/lib/suricata/python/suricata/update/configs/modify.conf + test -e /usr/local/lib/suricata/python/suricata/update/configs/threshold.in + test -e /usr/local/lib/suricata/python/suricata/update/configs/update.yaml + - uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a + with: + name: prep + path: prep + - run: tar xf prep/suricata-verify.tar.gz + - run: python3 ./suricata-verify/run.py -q + - run: suricata-update -V + - run: suricatasc -h + + centos-stream8: + name: CentOS Stream 8 + runs-on: ubuntu-latest + container: quay.io/centos/centos:stream8 + needs: [prepare-deps, debian-12-dist] + steps: + # Cache Rust stuff. + - name: Cache cargo registry + uses: actions/cache@v3.3.1 + with: + path: ~/.cargo + key: ${{ github.job }}-cargo + + - name: Cache RPMs + uses: actions/cache@v3.3.1 + with: + path: /var/cache/dnf + key: ${{ github.job }}-dnf + - run: echo "keepcache=1" >> /etc/dnf/dnf.conf + + - name: Install system packages + run: | + dnf -y install dnf-plugins-core epel-release + dnf config-manager --set-enabled powertools + dnf -y install \ + autoconf \ + automake \ + diffutils \ + numactl-devel \ + dpdk-devel \ + file-devel \ + gcc \ + gcc-c++ \ + git \ + jansson-devel \ + jq \ + lua-devel \ + libtool \ + libyaml-devel \ + libnfnetlink-devel \ + libnetfilter_queue-devel \ + libnet-devel \ + libcap-ng-devel \ + libevent-devel \ + libmaxminddb-devel \ + libpcap-devel \ + libtool \ + lz4-devel \ + make \ + nss-devel \ + pcre2-devel \ + pkgconfig \ + python3-devel \ + python3-sphinx \ + python3-yaml \ + rust-toolset \ + sudo \ + which \ + zlib-devel + # These packages required to build the PDF. + dnf -y install \ + texlive-latex \ + texlive-cmap \ + texlive-collection-latexrecommended \ + texlive-fncychap \ + texlive-titlesec \ + texlive-tabulary \ + texlive-framed \ + texlive-wrapfig \ + texlive-upquote \ + texlive-capt-of \ + texlive-needspace + - name: Download suricata.tar.gz + uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a + with: + name: dist + - run: tar zxvf suricata-*.tar.gz --strip-components=1 + - name: ./configure + run: CFLAGS="${DEFAULT_CFLAGS}" ./configure + - run: make -j2 + - run: make install + - run: make install-conf + - run: suricatasc -h + - run: suricata-update -V + - name: Check if Suricata-Update example configuration files are installed + run: | + test -e /usr/local/lib/suricata/python/suricata/update/configs/disable.conf + test -e /usr/local/lib/suricata/python/suricata/update/configs/drop.conf + test -e /usr/local/lib/suricata/python/suricata/update/configs/enable.conf + test -e /usr/local/lib/suricata/python/suricata/update/configs/modify.conf + test -e /usr/local/lib/suricata/python/suricata/update/configs/threshold.in + test -e /usr/local/lib/suricata/python/suricata/update/configs/update.yaml + - uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a + with: + name: prep + path: prep + - run: tar xf prep/suricata-verify.tar.gz + - run: python3 ./suricata-verify/run.py -q + - run: suricata-update -V + - run: suricatasc -h + centos-7: name: CentOS 7 runs-on: ubuntu-latest