validate.yml 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. on:
  2. pull_request:
  3. push:
  4. workflow_dispatch:
  5. jobs:
  6. build_ubuntu:
  7. runs-on: ubuntu-latest
  8. steps:
  9. - name: gitconfig
  10. run: |
  11. git config --global core.autocrlf input
  12. - name: checkout
  13. uses: actions/checkout@v3
  14. with:
  15. fetch-depth: 0
  16. - name: Install Rust
  17. uses: actions-rs/toolchain@v1
  18. with:
  19. toolchain: stable
  20. target: x86_64-unknown-linux-gnu
  21. override: true
  22. components: rustfmt, clippy
  23. - name: Set up cargo cache
  24. uses: Swatinem/rust-cache@v2
  25. continue-on-error: false
  26. with:
  27. key: ${{ runner.os }}-cargo-${{ hashFiles('zeroidc//Cargo.lock') }}
  28. shared-key: ${{ runner.os }}-cargo-
  29. workspaces: |
  30. zeroidc/
  31. - name: validate-1m-linux
  32. env:
  33. CC: 'gcc'
  34. CXX: 'g++'
  35. BRANCH: ${{ github.ref_name }}
  36. run: |
  37. sudo apt update && sudo apt install -y valgrind xmlstarlet gcovr iperf3 tree
  38. make one ZT_COVERAGE=1 ZT_TRACE=1
  39. sudo chmod +x ./.github/workflows/validate-linux.sh
  40. sudo ./.github/workflows/validate-linux.sh
  41. - name: Archive test results
  42. uses: actions/upload-artifact@v4
  43. with:
  44. name: ${{github.sha}}-test-results
  45. path: "*test-results*"
  46. - name: final-report
  47. run: |
  48. sudo chmod +x ./.github/workflows/validate-report.sh
  49. sudo ./.github/workflows/validate-report.sh