refactor(ci): inline build steps, delete build-binary.sh

Replace build-binary.sh with discrete workflow steps: Build
mistralrs-server, Collect artifacts. Remove commented-out NCCL
check block.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-27 10:00:22 +03:00
parent 54cffcfe81
commit 65a265c095
3 changed files with 12 additions and 41 deletions

View File

@@ -39,30 +39,27 @@ jobs:
fi fi
echo "${HOME}/.cargo/bin" >> "$GITHUB_PATH" echo "${HOME}/.cargo/bin" >> "$GITHUB_PATH"
#- name: Check for NCCL
# run: |
# if ! ldconfig -p | grep -q libnccl.so.2; then
# echo "ERROR: libnccl not found. Install with:"
# echo " sudo dnf config-manager addrepo --from-repofile=https://developer.download.nvidia.com/compute/cuda/repos/rhel9/x86_64/cuda-rhel9.repo"
# echo " sudo dnf --repo=cuda-rhel9-x86_64 install libnccl libnccl-devel"
# exit 1
# fi
- name: Clone mistral.rs at tag - name: Clone mistral.rs at tag
run: | run: |
git clone --depth 1 --branch "${{ inputs.tag }}" \ git clone --depth 1 --branch "${{ inputs.tag }}" \
https://github.com/EricLBuehler/mistral.rs.git src/ https://github.com/EricLBuehler/mistral.rs.git src/
- name: Build - name: Build mistralrs-server
run: ./script/build-binary.sh run: |
export PATH="${{ matrix.cuda_home }}/bin:${PATH}"
export LD_LIBRARY_PATH="${{ matrix.cuda_home }}/targets/x86_64-linux/lib:${{ matrix.cuda_home }}/lib64:${LD_LIBRARY_PATH:-}"
cd src
cargo build --release --locked --features "${{ matrix.cargo_features }}"
env: env:
FLAVOUR_NAME: ${{ matrix.name }}
CUDA_HOME: ${{ matrix.cuda_home }}
CARGO_FEATURES: ${{ matrix.cargo_features }}
CUDA_COMPUTE_CAP: ${{ matrix.compute_caps }} CUDA_COMPUTE_CAP: ${{ matrix.compute_caps }}
CARGO_BUILD_JOBS: ${{ matrix.build_jobs }} CARGO_BUILD_JOBS: ${{ matrix.build_jobs }}
NVCC_THREADS: ${{ matrix.nvcc_threads }} NVCC_THREADS: ${{ matrix.nvcc_threads }}
SRC_DIR: src
- name: Collect artifacts
run: |
mkdir --parents artifacts
cp src/target/release/mistralrs-server "artifacts/mistralrs-server-${{ matrix.name }}"
echo "built: $(artifacts/mistralrs-server-${{ matrix.name }} --version 2>&1 | head -1)"
- name: Upload binary artifact - name: Upload binary artifact
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3

View File

@@ -27,7 +27,6 @@ Defined in `flavours.yml`. Each flavour specifies a name, `cuda_home`, `cargo_fe
- `rpm/mistralrs.spec` — RPM spec (binary-only package, no rebuild) - `rpm/mistralrs.spec` — RPM spec (binary-only package, no rebuild)
- `rpm/systemd/mistralrs@.service` — templated systemd unit (`@BINARY@` and `@FLAVOUR@` are sed-replaced during rpmbuild) - `rpm/systemd/mistralrs@.service` — templated systemd unit (`@BINARY@` and `@FLAVOUR@` are sed-replaced during rpmbuild)
- `rpm/systemd/mistralrs@.conf.example` — example env file for instances - `rpm/systemd/mistralrs@.conf.example` — example env file for instances
- `script/build-binary.sh` — compiles mistralrs-server with cargo (requires `FLAVOUR_NAME`, `CUDA_HOME`, `CARGO_FEATURES`, `CUDA_COMPUTE_CAP`, `SRC_DIR` env vars)
- `script/setup/` — one-time infra setup scripts (DNS, TLS cert, nginx, GPG) for `rpm.lair.cafe` on host `oolon` - `script/setup/` — one-time infra setup scripts (DNS, TLS cert, nginx, GPG) for `rpm.lair.cafe` on host `oolon`
## Commands ## Commands

View File

@@ -1,25 +0,0 @@
#!/usr/bin/env bash
set -euo pipefail
: "${FLAVOUR_NAME:?}"
: "${CUDA_HOME:?}"
: "${CARGO_FEATURES:?}"
: "${CUDA_COMPUTE_CAP:?}"
: "${SRC_DIR:?}"
export PATH="${CUDA_HOME}/bin:${PATH}"
export LD_LIBRARY_PATH="${CUDA_HOME}/targets/x86_64-linux/lib:${CUDA_HOME}/lib64:${LD_LIBRARY_PATH:-}"
cd "${SRC_DIR}"
# --locked ensures Cargo.lock is respected; fails loud if it's out of sync
# rather than silently resolving to different versions.
cargo build --release --locked --features "${CARGO_FEATURES}"
mkdir -p ../artifacts
cp target/release/mistralrs-server "../artifacts/mistralrs-server-${FLAVOUR_NAME}"
# Also grab the other binaries if you want them
cp target/release/mistralrs "../artifacts/mistralrs-${FLAVOUR_NAME}" 2>/dev/null || true
echo "Built $(../artifacts/mistralrs-server-${FLAVOUR_NAME} --version 2>&1 | head -1)"