Ver Fonte

ci: Add Rust and Asan flags (memory leaks, address sanitation) for tests

Pass some flags to test more aspects of rbpf in the CI. We cannot pass
those flags via the actions-rs/cargo Action, so we drop it for that
step. Actually, drop it everywhere, we can just as well run cargo
directly without having to pull another Action.

Suggested-by: Ben Kimock <kimockb@gmail.com>
Signed-off-by: Quentin Monnet <quentin@isovalent.com>
Quentin Monnet há 2 anos atrás
pai
commit
c738e360d6
1 ficheiros alterados com 13 adições e 10 exclusões
  1. 13 10
      .github/workflows/test.yaml

+ 13 - 10
.github/workflows/test.yaml

@@ -40,20 +40,23 @@ jobs:
           components: clippy
           components: clippy
 
 
       - name: Build with ${{ matrix.toolchain }}
       - name: Build with ${{ matrix.toolchain }}
-        uses: actions-rs/cargo@v1
-        with:
-          command: build
-          args: --release --all-features --all-targets
+        run: |
+          cargo +${{ matrix.toolchain }} build \
+              --release --all-features --all-targets
 
 
       - name: Test with ${{ matrix.toolchain }}
       - name: Test with ${{ matrix.toolchain }}
-        uses: actions-rs/cargo@v1
-        with:
-          command: test
+        run: |
+          if [[ "${{ matrix.toolchain }}" == 'nightly' ]]; then
+              export RUSTDOCFLAGS='-Zsanitizer=address'
+              export RUSTFLAGS='-Zsanitizer=address'
+              export ASAN_OPTIONS='detect_leaks=1'
+          fi
+          cargo +${{ matrix.toolchain }} test \
+              --target=x86_64-unknown-linux-gnu
 
 
       - name: Lint with ${{ matrix.toolchain }}
       - name: Lint with ${{ matrix.toolchain }}
-        uses: actions-rs/cargo@v1
-        with:
-          command: clippy
+        run: |
+          cargo +${{ matrix.toolchain }} clippy
 
 
       - name: Run BPF conformance tests - Interpreter
       - name: Run BPF conformance tests - Interpreter
         run: |
         run: |