mirror of
https://github.com/aljazceru/cdk.git
synced 2025-12-30 19:15:20 +01:00
refactor: cdk MSRV
This commit is contained in:
205
.github/workflows/ci.yml
vendored
205
.github/workflows/ci.yml
vendored
@@ -2,28 +2,44 @@ name: CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ main ]
|
||||
branches: [main]
|
||||
pull_request:
|
||||
branches: [ main ]
|
||||
branches: [main]
|
||||
|
||||
env:
|
||||
CARGO_TERM_COLOR: always
|
||||
|
||||
jobs:
|
||||
fmt:
|
||||
name: Format
|
||||
self-care:
|
||||
name: Flake self-check
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- run: cargo fmt --all -- --config format_code_in_doc_comments=true --check
|
||||
- uses: actions/checkout@v4
|
||||
- name: Check Nix flake inputs
|
||||
uses: DeterminateSystems/flake-checker-action@v7
|
||||
with:
|
||||
fail-mode: true
|
||||
|
||||
build:
|
||||
name: Build
|
||||
pre-commit-checks:
|
||||
name: "Pre-commit checks: cargo fmt, typos"
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: checkout
|
||||
uses: actions/checkout@v4
|
||||
- name: Install Nix
|
||||
uses: DeterminateSystems/nix-installer-action@v11
|
||||
- name: Nix Cache
|
||||
uses: DeterminateSystems/magic-nix-cache-action@v6
|
||||
- name: Rust Cache
|
||||
uses: Swatinem/rust-cache@v2
|
||||
- name: Pre-commit checks
|
||||
run: nix develop -i -L .#stable --command pre-commit run --all-files
|
||||
|
||||
clippy:
|
||||
name: "Stable build, clippy and test"
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
rust:
|
||||
- version: stable
|
||||
build-args:
|
||||
[
|
||||
-p cdk,
|
||||
@@ -37,41 +53,90 @@ jobs:
|
||||
-p cdk-lnd,
|
||||
-p cdk-phoenixd,
|
||||
-p cdk-strike,
|
||||
-p cdk-lnbits
|
||||
-p cdk-lnbits,
|
||||
-p cdk-integration-tests,
|
||||
-p cdk-fake-wallet,
|
||||
--bin cdk-cli,
|
||||
--bin cdk-mintd,
|
||||
--bin cdk-mintd
|
||||
]
|
||||
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: Install protobuf
|
||||
run: sudo apt-get install -y protobuf-compiler
|
||||
- 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: Clippy
|
||||
run: cargo clippy ${{ matrix.build-args }} -- -D warnings
|
||||
- name: checkout
|
||||
uses: actions/checkout@v4
|
||||
- name: Install Nix
|
||||
uses: DeterminateSystems/nix-installer-action@v11
|
||||
- name: Nix Cache
|
||||
uses: DeterminateSystems/magic-nix-cache-action@v6
|
||||
- name: Rust Cache
|
||||
uses: Swatinem/rust-cache@v2
|
||||
- name: Build
|
||||
run: nix develop -i -L .#stable --command cargo build ${{ matrix.build-args }}
|
||||
- name: Clippy
|
||||
run: nix develop -i -L .#stable --command cargo clippy ${{ matrix.build-args }} -- -D warnings
|
||||
- name: Test
|
||||
run: nix develop -i -L .#stable --command cargo test ${{ matrix.build-args }}
|
||||
|
||||
build-wasm:
|
||||
name: Build WASM
|
||||
msrv-build:
|
||||
name: "MSRV build"
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
build-args:
|
||||
[
|
||||
-p cdk,
|
||||
-p cdk --no-default-features,
|
||||
-p cdk --no-default-features --features wallet,
|
||||
-p cdk --no-default-features --features mint,
|
||||
-p cdk-axum,
|
||||
-p cdk-strike,
|
||||
-p cdk-lnbits,
|
||||
-p cdk-phoenixd
|
||||
-p cdk-fake-wallet
|
||||
-p cdk-cln
|
||||
]
|
||||
steps:
|
||||
- name: checkout
|
||||
uses: actions/checkout@v4
|
||||
- name: Install Nix
|
||||
uses: DeterminateSystems/nix-installer-action@v11
|
||||
- name: Nix Cache
|
||||
uses: DeterminateSystems/magic-nix-cache-action@v6
|
||||
- name: Rust Cache
|
||||
uses: Swatinem/rust-cache@v2
|
||||
- name: Build
|
||||
run: nix develop -i -L .#msrv --command cargo build ${{ matrix.build-args }}
|
||||
|
||||
|
||||
db-msrv-build:
|
||||
name: "DB MSRV build"
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
build-args:
|
||||
[
|
||||
-p cdk-sqlite
|
||||
-p cdk-redb
|
||||
]
|
||||
steps:
|
||||
- name: checkout
|
||||
uses: actions/checkout@v4
|
||||
- name: Install Nix
|
||||
uses: DeterminateSystems/nix-installer-action@v11
|
||||
- name: Nix Cache
|
||||
uses: DeterminateSystems/magic-nix-cache-action@v6
|
||||
- name: Rust Cache
|
||||
uses: Swatinem/rust-cache@v2
|
||||
- name: Build
|
||||
run: nix develop -i -L .#db_shell --command cargo build ${{ matrix.build-args }}
|
||||
|
||||
check-wasm:
|
||||
name: Check WASM
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
rust:
|
||||
- version: stable
|
||||
- stable
|
||||
target:
|
||||
- wasm32-unknown-unknown
|
||||
build-args:
|
||||
[
|
||||
-p cdk,
|
||||
@@ -80,53 +145,41 @@ jobs:
|
||||
-p cdk-js
|
||||
]
|
||||
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
|
||||
- name: checkout
|
||||
uses: actions/checkout@v4
|
||||
- name: Install Nix
|
||||
uses: DeterminateSystems/nix-installer-action@v11
|
||||
- name: Nix Cache
|
||||
uses: DeterminateSystems/magic-nix-cache-action@v6
|
||||
- name: Rust Cache
|
||||
uses: Swatinem/rust-cache@v2
|
||||
- name: Build cdk and binding
|
||||
run: nix develop -i -L ".#${{ matrix.rust }}" --command cargo build ${{ matrix.build-args }} --target ${{ matrix.target }}
|
||||
|
||||
run-examples:
|
||||
name: Run Examples
|
||||
|
||||
check-wasm-msrv:
|
||||
name: Check WASM
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
rust:
|
||||
- version: stable
|
||||
- msrv
|
||||
target:
|
||||
- wasm32-unknown-unknown
|
||||
build-args:
|
||||
[
|
||||
mint-token,
|
||||
p2pk,
|
||||
proof-selection,
|
||||
wallet
|
||||
-p cdk,
|
||||
-p cdk --no-default-features,
|
||||
-p cdk --no-default-features --features wallet,
|
||||
]
|
||||
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: Run
|
||||
run: cargo run --example ${{ matrix.build-args }}
|
||||
- name: checkout
|
||||
uses: actions/checkout@v4
|
||||
- name: Install Nix
|
||||
uses: DeterminateSystems/nix-installer-action@v11
|
||||
- name: Nix Cache
|
||||
uses: DeterminateSystems/magic-nix-cache-action@v6
|
||||
- name: Rust Cache
|
||||
uses: Swatinem/rust-cache@v2
|
||||
- name: Build cdk wasm
|
||||
run: nix develop -i -L ".#${{ matrix.rust }}" --command cargo build ${{ matrix.build-args }} --target ${{ matrix.target }}
|
||||
|
||||
Reference in New Issue
Block a user