name: ci-nym-wallet-rust on: pull_request: paths: - 'nym-wallet/**' - 'common/**' - 'contracts/vesting/**' - 'nym-api/nym-api-requests/**' - '.github/workflows/ci-nym-wallet-rust.yml' jobs: build: runs-on: arc-linux-latest env: CARGO_TERM_COLOR: always RUSTUP_PERMIT_COPY_RENAME: 1 steps: - name: Install system dependencies run: | sudo apt-get update && sudo apt-get install -y libdbus-1-dev libmnl-dev libnftnl-dev \ libwebkit2gtk-4.1-dev build-essential curl wget libssl-dev jq \ libgtk-3-dev squashfs-tools libayatana-appindicator3-dev make libfuse2 unzip librsvg2-dev file \ libsoup-3.0-dev libjavascriptcoregtk-4.1-dev continue-on-error: true - name: Check out repository code uses: actions/checkout@v6 - name: Install rust toolchain uses: actions-rs/toolchain@v1 with: profile: minimal toolchain: ${{ vars.REQUIRED_RUSTC_VERSION }} override: true components: rustfmt, clippy - name: Set debug to false working-directory: nym-wallet run: | sed -i.bak '1s/^/\[profile.dev\]\ndebug = false\n\n/' Cargo.toml git diff - name: Ensure nym-wallet/dist exists for Tauri run: mkdir -p nym-wallet/dist - name: Build all binaries uses: actions-rs/cargo@v1 with: command: build args: --manifest-path nym-wallet/Cargo.toml --workspace - name: Run all tests uses: actions-rs/cargo@v1 with: command: test args: --manifest-path nym-wallet/Cargo.toml --workspace - name: Check formatting uses: actions-rs/cargo@v1 with: command: fmt args: --manifest-path nym-wallet/Cargo.toml --all -- --check - uses: actions-rs/clippy-check@v1 name: Clippy checks continue-on-error: true with: token: ${{ secrets.GITHUB_TOKEN }} args: --manifest-path nym-wallet/Cargo.toml --workspace --all-features - name: Run clippy uses: actions-rs/cargo@v1 with: command: clippy args: --manifest-path nym-wallet/Cargo.toml --workspace --all-features --all-targets -- -D warnings - name: Install cargo-audit uses: actions-rs/cargo@v1 with: command: install args: cargo-audit --locked - name: Cargo audit (nym-wallet workspace) uses: actions-rs/cargo@v1 with: command: audit working-directory: nym-wallet continue-on-error: true