From 42fc92925d1118585abfb969549576c3ba1fb75c Mon Sep 17 00:00:00 2001 From: phoenix Date: Mon, 3 Feb 2025 00:27:12 +0000 Subject: [PATCH] Add .github/workflows/rust.yaml --- .github/workflows/rust.yaml | 59 +++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 .github/workflows/rust.yaml diff --git a/.github/workflows/rust.yaml b/.github/workflows/rust.yaml new file mode 100644 index 0000000..317ef9e --- /dev/null +++ b/.github/workflows/rust.yaml @@ -0,0 +1,59 @@ +name: Rust + +on: + push: + branches: [ main, master ] + pull_request: + branches: [ main, master ] + +env: + # Customize the profile here (e.g., release, debug) + PROFILE: release + +jobs: + build: + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest, macos-latest] + + steps: + - uses: actions/checkout@v3 + + - name: Install Rust (Ubuntu) + if: matrix.os == 'ubuntu-latest' + uses: actions-rs/toolchain@v1 + with: + toolchain: stable + override: true + + - name: Install Rust (macOS) + if: matrix.os == 'macos-latest' + uses: actions-rs/toolchain@v1 + with: + toolchain: stable + override: true + + - name: Build + uses: actions-rs/cargo@v1 + with: + command: build + args: --release # Or --debug, depending on the env.PROFILE + + - name: Run tests + uses: actions-rs/cargo@v1 + with: + command: test + args: --release # Or --debug, depending on the env.PROFILE + + - name: Clippy check (optional) + # Uncomment to enable Clippy linting + # uses: actions-rs/clippy-check@v1 + # with: + # token: ${{ secrets.GITHUB_TOKEN }} + # args: -- -D warnings + + - name: Generate code coverage (optional) + # Uncomment to generate code coverage reports (requires additional setup) + # uses: codecov/codecov-action@v3 \ No newline at end of file