Bladeren bron

ci: update ci

thesimplekid 1 jaar geleden
bovenliggende
commit
66cd1f577b
2 gewijzigde bestanden met toevoegingen van 93 en 4 verwijderingen
  1. 93 0
      .github/workflows/ci.yml
  2. 0 4
      .github/workflows/lint.yml

+ 93 - 0
.github/workflows/ci.yml

@@ -0,0 +1,93 @@
+name: CI
+
+on:
+  push:
+    branches: [ main ]
+  pull_request:
+    branches: [ main ]
+
+env:
+  CARGO_TERM_COLOR: always
+
+jobs:
+  fmt:
+    name: Format
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v3
+      - run: cargo fmt --all -- --config format_code_in_doc_comments=true --check
+
+  build:
+    name: Build
+    runs-on: ubuntu-latest
+    strategy:
+      matrix:
+        rust:
+          - version: stable
+          - version: 1.64.0 #MSRV
+        build-args:
+          [
+            -p cashu,
+            -p cashu --no-default-features,
+            -p cashu --no-default-features --features wallet,
+            -p cashu --no-default-features --features mint,
+            -p cashu-sdk,
+            -p cashu-sdk --no-default-features,
+            -p cashu-sdk --features blocking,
+          ]
+    steps:
+    - name: Checkout
+      uses: actions/checkout@v3
+    - name: Cache
+      uses: actions/cache@v3
+      with:
+        path: |
+          ~/.cargo/registry
+          ~/.cargo/git
+          target
+        key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.toml','**/Cargo.lock') }}
+    - name: Set default toolchain
+      run: rustup default ${{ matrix.rust.version }}
+    - name: Set profile
+      run: rustup set profile minimal && rustup component add clippy
+    - name: Build
+      run: cargo build ${{ matrix.build-args }}
+    - name: Tests
+      run: cargo test ${{ matrix.build-args }}
+    - name: Clippy
+      run: cargo clippy ${{ matrix.build-args }} -- -D warnings
+
+  build-wasm:
+    name: Build WASM
+    runs-on: ubuntu-latest
+    strategy:
+      matrix:
+        rust:
+          - version: stable
+          - version: 1.64.0 #MSRV
+        build-args:
+          [
+            -p cashu,
+            -p cashu-sdk,
+          ]
+    steps:
+    - name: Checkout
+      uses: actions/checkout@v3
+    - name: Cache
+      uses: actions/cache@v3
+      with:
+        path: |
+          ~/.cargo/registry
+          ~/.cargo/git
+          target
+        key: ${{ runner.os }}-cargo-wasm32-${{ hashFiles('**/Cargo.toml','**/Cargo.lock') }}
+    - name: Set default toolchain
+      run: rustup default ${{ matrix.rust.version }}
+    - name: Add WASM
+      run: rustup target add wasm32-unknown-unknown
+    - name: Set profile
+      run: rustup set profile minimal && rustup component add clippy
+    - name: Build
+      run: cargo build ${{ matrix.build-args }} --target wasm32-unknown-unknown
+    - name: Clippy
+      run: cargo clippy ${{ matrix.build-args }} --target wasm32-unknown-unknown -- -D warnings

+ 0 - 4
.github/workflows/lint.yml

@@ -22,7 +22,3 @@ jobs:
       uses: crate-ci/typos@v1.0.4
     - name: Run fmt
       run: cargo fmt --all --check 
-    - name: Run clippy
-      run: |
-        rustup component add clippy
-        cargo clippy --all