From: Jason Ish Date: Thu, 6 Jul 2023 15:57:00 +0000 (-0600) Subject: github-ci: update rust versions X-Git-Tag: suricata-7.0.0~68 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=84674f4205833e85b3c04eb2213a278b5becc378;p=thirdparty%2Fsuricata.git github-ci: update rust versions New minimum Rust version: 1.63.0. Current latest known good version: 1.70.0. Add test specifically for MSRV as we didn't have one. Ticket: #4163 --- diff --git a/.github/workflows/builds.yml b/.github/workflows/builds.yml index 4633faf965..51bea1ee6c 100644 --- a/.github/workflows/builds.yml +++ b/.github/workflows/builds.yml @@ -26,10 +26,10 @@ env: # A recent version of stable Rust that is known to pass build, test and other # verification steps in this workflow. This was added because using "stable" # could cause some steps to fail. - RUST_VERSION_KNOWN: "1.62.0" + RUST_VERSION_KNOWN: "1.70.0" # The minimum version of Rust supported. - RUST_VERSION_MIN: "1.58.1" + RUST_VERSION_MIN: "1.63.0" jobs: @@ -1896,7 +1896,7 @@ jobs: name: Ubuntu 20.04 (unsupported rust) runs-on: ubuntu-latest container: ubuntu:20.04 - needs: almalinux-8 + needs: debian-12-dist steps: - name: Cache ~/.cargo uses: actions/cache@v3.3.1 @@ -1935,7 +1935,7 @@ jobs: zlib1g \ zlib1g-dev \ dpdk-dev - - run: curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain 1.33.0 -y + - run: curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain 1.62.0 -y - run: echo "$HOME/.cargo/bin" >> $GITHUB_PATH - name: Download suricata.tar.gz uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a @@ -2538,6 +2538,93 @@ jobs: name: dist path: dist + debian-12-msrv: + name: Debian 12 MSRV + runs-on: ubuntu-latest + container: debian:12 + needs: [prepare-deps, prepare-cbindgen] + steps: + # Cache Rust stuff. + - name: Cache cargo registry + uses: actions/cache@v3.3.1 + with: + path: ~/.cargo + key: ${{ github.job }}-cargo + + - run: apt update + - run: | + apt -y install \ + autoconf \ + automake \ + build-essential \ + cmake \ + curl \ + dpdk-dev \ + git \ + jq \ + make \ + libpcre3 \ + libpcre3-dbg \ + libpcre3-dev \ + libpcre2-dev \ + libtool \ + libpcap-dev \ + libnet1-dev \ + libyaml-0-2 \ + libyaml-dev \ + libcap-ng-dev \ + libcap-ng0 \ + libmagic-dev \ + libmaxminddb-dev \ + libjansson-dev \ + libjansson4 \ + liblua5.1-dev \ + libnss3-dev \ + libnspr4-dev \ + libnuma-dev \ + liblz4-dev \ + libssl-dev \ + liblzma-dev \ + pkg-config \ + python3 \ + python3-yaml \ + sphinx-doc \ + sphinx-common \ + texlive-latex-base \ + texlive-fonts-recommended \ + texlive-fonts-extra \ + texlive-latex-extra \ + zlib1g \ + zlib1g-dev + - name: Install Rust + run: curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain ${RUST_VERSION_MIN} -y + - run: echo "$HOME/.cargo/bin" >> $GITHUB_PATH + - uses: actions/checkout@v3.5.3 + - uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a + with: + name: prep + path: prep + - name: Setup cbindgen + run: | + mkdir -p $HOME/.cargo/bin + cp prep/cbindgen $HOME/.cargo/bin + chmod 755 $HOME/.cargo/bin/cbindgen + - run: tar xf prep/libhtp.tar.gz + - run: tar xf prep/suricata-update.tar.gz + - run: tar xf prep/suricata-verify.tar.gz + - run: ./autogen.sh + - run: CFLAGS="${DEFAULT_CFLAGS}" ./configure --enable-unittests --enable-debug --enable-lua --enable-geoip --enable-profiling --enable-profiling-locks --enable-dpdk + - run: make -j2 + - run: make check + - name: Building Rust documentation + run: make doc + working-directory: rust + - name: Running suricata-verify + run: python3 ./suricata-verify/run.py -q + - run: make install + - run: suricata-update -V + - run: suricatasc -h + debian-11: name: Debian 11 (xdp) runs-on: ubuntu-latest