name: kpack CI on: push: branches: - develop paths: - 'shared/kpack/**' - '.github/workflows/kpack-ci.yml' pull_request: paths: - 'shared/kpack/**' - '.github/workflows/kpack-ci.yml' concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: python: name: Python tests (${{ matrix.os }}, ${{ matrix.python-version }}) strategy: fail-fast: false matrix: os: [ubuntu-latest, windows-latest] python-version: ['3.10', '3.12'] runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: sparse-checkout: | shared/kpack python/rocm-bootstrap lfs: true - uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0 with: python-version: ${{ matrix.python-version }} - name: Install gdb (Linux) if: runner.os == 'Linux' run: sudo apt-get install -y gdb - name: Install run: | pip install python/rocm-bootstrap pip install -e "shared/kpack[dev]" - name: Test working-directory: shared/kpack run: pytest -v runtime: name: C++ runtime tests (${{ matrix.os }}) strategy: fail-fast: false matrix: os: [ubuntu-latest, windows-latest] runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0 with: sparse-checkout: shared/kpack - name: Install dependencies (Linux) if: runner.os == 'Linux' run: sudo apt-get install -y libmsgpack-cxx-dev libzstd-dev libgtest-dev - name: Install dependencies (Windows) if: runner.os == 'Windows' run: vcpkg install msgpack:x64-windows zstd:x64-windows gtest:x64-windows - name: Configure (Linux) if: runner.os == 'Linux' run: cmake -B build -S shared/kpack -DBUILD_TESTING=ON - name: Configure (Windows) if: runner.os == 'Windows' run: cmake -B build -S shared/kpack -DBUILD_TESTING=ON -DCMAKE_TOOLCHAIN_FILE="$VCPKG_INSTALLATION_ROOT/scripts/buildsystems/vcpkg.cmake" shell: bash - name: Build run: cmake --build build --config Release - name: Test run: ctest --test-dir build --output-on-failure -C Release