name: CI (rpc) on: workflow_dispatch: # allows manual triggering push: branches: - master paths: [ '.github/workflows/build-rpc.yml', '**/CMakeLists.txt', '**/.cmake', '**/*.h', '**/*.hpp', '**/*.c', '**/*.cpp' ] pull_request: types: [opened, synchronize, reopened] paths: [ '.github/workflows/build-rpc.yml', 'ggml/src/ggml-rpc/**' ] concurrency: group: ${{ github.workflow }}-${{ github.head_ref && github.ref || github.run_id }} cancel-in-progress: true env: GGML_NLOOP: 3 GGML_N_THREADS: 1 LLAMA_ARG_LOG_COLORS: 1 LLAMA_ARG_LOG_PREFIX: 1 LLAMA_ARG_LOG_TIMESTAMPS: 1 jobs: ubuntu-latest-rpc: runs-on: ubuntu-latest continue-on-error: true steps: - name: Clone id: checkout uses: actions/checkout@v6 - name: Dependencies id: depends run: | sudo apt-get update sudo apt-get install build-essential libssl-dev ninja-build - name: Build id: cmake_build run: | cmake -B build \ -G "Ninja" \ -DCMAKE_BUILD_TYPE=Release \ -DGGML_RPC=ON time cmake --build build --config Release -j $(nproc) - name: Test id: cmake_test run: | cd build ctest -L main --verbose