name: CI on: push: branches: [main, master] pull_request: env: CARGO_TERM_COLOR: always RUST_VERSION: "1.92" jobs: check: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v5 - name: Build server-ui uses: ./.github/actions/build-server-ui - name: Setup Rust uses: dtolnay/rust-toolchain@master with: toolchain: ${{ env.RUST_VERSION }} components: rustfmt, clippy - name: Cache Cargo uses: Swatinem/rust-cache@v2 - name: Install Linux GUI deps run: | sudo apt-get update sudo apt-get install -y \ libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev \ libxkbcommon-dev libwayland-dev libegl1-mesa-dev \ libfontconfig1-dev - name: fmt run: cargo fmt --all -- --check - name: clippy run: cargo clippy --workspace --locked --all-targets - name: test run: cargo test --workspace --locked - name: Build release bins run: cargo build --release --locked -p orbien-server -p orbien-client