ci: kernel matrix on cloud GHA via lvh #8
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Kernel Matrix | |
| on: | |
| pull_request: | |
| branches: [main] | |
| push: | |
| branches: [main] | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| jobs: | |
| build: | |
| name: Build (release) | |
| runs-on: ubuntu-22.04 | |
| timeout-minutes: 30 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: dtolnay/rust-toolchain@nightly | |
| with: | |
| components: rust-src | |
| - name: Install bpf-linker | |
| run: cargo install bpf-linker --locked | |
| - name: Build release | |
| working-directory: honeybeepf-llm | |
| run: cargo build --release -p honeybeepf-llm | |
| - name: Upload binary | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: honeybeepf-llm-bin | |
| path: honeybeepf-llm/target/release/honeybeepf-llm | |
| if-no-files-found: error | |
| retention-days: 1 | |
| matrix: | |
| name: vmtest ${{ matrix.kernel }} | |
| needs: build | |
| runs-on: ubuntu-22.04 | |
| timeout-minutes: 20 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| kernel: | |
| - '5.10-20260427.035409' | |
| - '5.15-20260427.035409' | |
| - '6.1-20260427.035409' | |
| - '6.6-20260427.035409' | |
| - '6.12-20260427.035409' | |
| - '6.18-20260427.035409' | |
| - 'bpf-next-20260427.035409' | |
| include: | |
| - kernel: 'bpf-next-20260427.035409' | |
| allow-failure: true | |
| continue-on-error: ${{ matrix.allow-failure == true }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| name: honeybeepf-llm-bin | |
| path: ./bin | |
| - run: chmod +x bin/honeybeepf-llm | |
| - uses: cilium/little-vm-helper@v0.0.29 | |
| with: | |
| test-name: smoke-${{ matrix.kernel }} | |
| image: 'kind' | |
| image-version: ${{ matrix.kernel }} | |
| host-mount: ./ | |
| install-dependencies: 'true' | |
| cmd: | | |
| set -e | |
| uname -r | |
| mount | grep bpf || true | |
| cd /host | |
| export BUILTIN_PROBES__LLM=true | |
| export BUILTIN_PROBES__INTERVAL=2 | |
| export RUST_LOG=info | |
| timeout --preserve-status 5 ./bin/honeybeepf-llm --verbose > /tmp/boot.log 2>&1 || true | |
| cat /tmp/boot.log | |
| grep -qE 'Monitoring active|Parsed settings' /tmp/boot.log | |
| ssl-trace: | |
| name: ssl-trace ${{ matrix.kernel }} | |
| needs: build | |
| runs-on: ubuntu-22.04 | |
| timeout-minutes: 20 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| kernel: ['6.6-20260427.035409', 'bpf-next-20260427.035409'] | |
| include: | |
| - kernel: 'bpf-next-20260427.035409' | |
| allow-failure: true | |
| continue-on-error: ${{ matrix.allow-failure == true }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| name: honeybeepf-llm-bin | |
| path: ./bin | |
| - run: chmod +x bin/honeybeepf-llm | |
| - uses: cilium/little-vm-helper@v0.0.29 | |
| with: | |
| test-name: ssl-trace-${{ matrix.kernel }} | |
| image: 'kind' | |
| image-version: ${{ matrix.kernel }} | |
| host-mount: ./ | |
| install-dependencies: 'true' | |
| cmd: | | |
| set -e | |
| cd /host | |
| apt-get install -y --no-install-recommends curl ca-certificates >/dev/null 2>&1 || true | |
| export BUILTIN_PROBES__LLM=true | |
| export BUILTIN_PROBES__INTERVAL=2 | |
| export RUST_LOG=info | |
| ./bin/honeybeepf-llm --verbose > /tmp/agent.log 2>&1 & | |
| sleep 10 | |
| curl -sk https://example.com -o /dev/null || true | |
| curl -sk https://www.google.com -o /dev/null || true | |
| sleep 3 | |
| pkill -INT honeybeepf-llm || true | |
| sleep 1 | |
| echo '----- agent log -----' | |
| cat /tmp/agent.log | |
| grep -qiE 'ssl|attach|probe|llm|openssl' /tmp/agent.log |