Fix stale CASE exchange blocking new session handshake #638
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: ChipTool Integration Tests | |
| on: | |
| push: | |
| branches: [ main ] | |
| pull_request: | |
| branches: [ main ] | |
| schedule: | |
| # Run every night at 2:00 AM UTC | |
| - cron: "0 2 * * *" | |
| workflow_dispatch: | |
| inputs: | |
| chip_ref: | |
| description: 'Chip repository reference (branch/tag/commit)' | |
| required: false | |
| # default: 'master' | |
| default: 'v1.4.2-branch' | |
| type: string | |
| env: | |
| RUST_TOOLCHAIN: stable | |
| CARGO_TERM_COLOR: always | |
| jobs: | |
| yaml_integration_tests: | |
| # Downgrade to 22.04 so that `activate.sh` does not fail with "ModuleNotFoundError: No module named 'pip'" | |
| # runs-on: ubuntu-latest | |
| runs-on: ubuntu-22.04 | |
| timeout-minutes: 120 | |
| steps: | |
| - name: Setup Rust toolchain | |
| uses: dtolnay/rust-toolchain@v1 | |
| with: | |
| toolchain: ${{ env.RUST_TOOLCHAIN }} | |
| components: rustfmt, clippy | |
| - name: Checkout rs-matter | |
| uses: actions/checkout@v4 | |
| - name: Install libdbus | |
| run: sudo apt-get install -y libdbus-1-dev | |
| - name: Build xtask | |
| run: | | |
| cd xtask; cargo build | |
| - name: Install system dependencies | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install `./xtask/target/debug/xtask -v s itest-packages` | |
| - name: Fix unshare permissions | |
| run: | | |
| sudo sysctl kernel.apparmor_restrict_unprivileged_userns=0 | |
| - name: Cache Chip build | |
| uses: actions/cache@v4 | |
| with: | |
| path: .build/itest/connectedhomeip | |
| key: >- | |
| chip-${{ runner.os }}-${{ | |
| hashFiles('.build/itest/connectedhomeip/**/*.py', | |
| '.build/itest/connectedhomeip/**/*.sh', '.build/itest/connectedhomeip/**/BUILD.gn') }} | |
| - name: Setup Chip environment | |
| run: | | |
| cargo xtask itest-setup --gitref "${{ inputs.chip_ref || 'v1.4.2-branch' }}" | |
| - name: Run YAML Integration Tests (with RustCrypto by default)) | |
| run: | | |
| cargo xtask itest | |
| # TODO: Enable once mbedtls-rs-sys built removes the installation step | |
| # - name: Run One YAML Integration Test with MbedTLS | |
| # run: | | |
| # cargo xtask itest --features mbedtls TestBasicInformation | |
| - name: Run One YAML Integration Test with OpenSSL | |
| run: | | |
| cargo xtask itest --features openssl TestBasicInformation | |
| - name: Run LevelControl and OnOff YAML Integration Tests for dimmable_light | |
| run: | | |
| # TODO: Specify this test list inside of itest instead of here & re-add Test_TC_LVL_4_1, Test_TC_LVL_9_1, Test_TC_OO_2_7 | |
| cargo xtask itest --target dimmable_light --timeout 500 --features chip-test Test_TC_LVL_2_1 Test_TC_LVL_2_2 Test_TC_LVL_3_1 Test_TC_LVL_5_1 Test_TC_LVL_6_1 Test_TC_LVL_7_1 Test_TC_OO_2_1 Test_TC_OO_2_2 Test_TC_OO_2_4 Test_TC_OO_2_6 | |
| - name: Upload test results on failure | |
| if: failure() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: test-results-${{ github.run_id }} | |
| path: | | |
| /tmp/rs-matter*/ | |
| .build/itest/connectedhomeip/out/host/chip-tool.log | |
| retention-days: 7 |