Something went wrong. Try again.
Buttplug sex toy control library
Something went wrong. Try again.
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697name: Buttplug CI Build
on: push: branches: - dev - master - protocol-work**
concurrency: group: ${{ github.head_ref || github.ref }} cancel-in-progress: true jobs: build-stable: runs-on: ${{ matrix.os }} strategy: matrix: os: [ubuntu-latest, macos-latest, windows-latest] steps: - uses: actions/checkout@v2 - name: Fix ~/.cargo directory permissions if: startsWith(matrix.os, 'ubuntu') || startsWith(matrix.os, 'macos') run: sudo chown -R $(whoami):$(id -ng) ~/.cargo/ - name: Update package list if: startsWith(matrix.os, 'ubuntu') run: sudo apt-get -y update - name: Install required packages if: startsWith(matrix.os, 'ubuntu') run: sudo apt-get -y install libudev-dev libusb-1.0-0-dev libdbus-1-dev - name: Cache cargo registry uses: actions/cache@v4 with: path: ~/.cargo/registry key: ${{ runner.os }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }}-${{ hashFiles('.github/workflows/cache_version') }} - name: Cache cargo build uses: actions/cache@v4 with: path: target key: ${{ runner.os }}-cargo-build-target-${{ hashFiles('**/Cargo.lock') }}-${{ hashFiles('.github/workflows/cache_version') }} - name: Rust toolchain fetch uses: actions-rs/toolchain@v1 with: profile: minimal toolchain: nightly override: true components: rustfmt, clippy - name: Formatting check continue-on-error: true uses: actions-rs/cargo@v1 with: command: fmt args: --all -- --check - name: Build Debug run: cargo build - name: Run tests run: cargo test # Only run doc gen on windows. It has the most code to build anyways, all other projects are a subset of it. - name: Run doc gen if: startsWith(matrix.os, 'windows') run: cargo doc --no-deps# - name: Build Release# run: cargo build --release build-wasm: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Fix ~/.cargo directory permissions run: sudo chown -R $(whoami):$(id -ng) ~/.cargo/ - name: Update package list run: sudo apt-get -y update - name: Install required packages run: sudo apt-get -y install libudev-dev libusb-1.0-0-dev libdbus-1-dev - name: Cache cargo registry uses: actions/cache@v4 with: path: ~/.cargo/registry key: ${{ runner.os }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }}-${{ hashFiles('.github/workflows/cache_version') }} - name: Cache cargo build uses: actions/cache@v4 with: path: target key: ${{ runner.os }}-cargo-build-target-${{ hashFiles('**/Cargo.lock') }}-${{ hashFiles('.github/workflows/cache_version') }} - name: Rust toolchain fetch uses: actions-rs/toolchain@v1 with: profile: minimal toolchain: nightly override: true components: rustfmt, clippy - name: WASM Toolchain fetch uses: jetli/wasm-pack-action@v0.4.0 with: version: 'latest' - name: Build Dev run: wasm-pack build --dev crates/buttplug_server --no-default-features --features wasm