name: client on: [push, pull_request, merge_group] jobs: build: strategy: fail-fast: false matrix: platform: - { os: linux, arch: x86_64, on: ubuntu-latest, deps: linux } - { os: linux, arch: aarch64, on: ubuntu-latest, deps: linux } - { os: darwin, arch: x86_64, on: macos-14, deps: darwin } - { os: darwin, arch: aarch64, on: macos-14, deps: darwin } - { os: freebsd, arch: x86_64, on: ubuntu-latest, deps: linux } - { os: windows, arch: x86_64, on: windows-latest, deps: windows } env: TARGET_OS: "${{ matrix.platform.os }}" TARGET_ARCH: "${{ matrix.platform.arch }}" runs-on: "${{ matrix.platform.on }}" name: build ${{ matrix.platform.os }}-${{ matrix.platform.arch }} defaults: run: shell: bash steps: - run: git config --global core.autocrlf false && git config --global core.eol lf if: ${{ matrix.platform.os == 'windows' }} - uses: actions/checkout@v4 with: submodules: recursive - uses: dtolnay/rust-toolchain@stable if: ${{ matrix.platform.os != 'darwin' }} - uses: dtolnay/rust-toolchain@stable with: targets: "${{ matrix.platform.arch }}-apple-darwin" if: ${{ matrix.platform.os == 'darwin' }} - uses: homebrew/actions/setup-homebrew@master if: ${{ matrix.platform.os == 'darwin' }} - run: ./hack/ci/install-${{ matrix.platform.deps }}-deps.sh - run: ./hack/build/cargo.sh build --bin kratactl