mirror of
https://github.com/aljazceru/cdk.git
synced 2025-12-24 16:14:54 +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 }}
|
||||
|
||||
82
.github/workflows/flakebox-ci.yml
vendored
82
.github/workflows/flakebox-ci.yml
vendored
@@ -1,82 +0,0 @@
|
||||
# THIS FILE IS AUTOGENERATED FROM FLAKEBOX CONFIGURATION
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Build
|
||||
runs-on: ${{ matrix.runs-on }}
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Install Nix
|
||||
uses: DeterminateSystems/nix-installer-action@v4
|
||||
- name: Magic Nix Cache
|
||||
uses: DeterminateSystems/magic-nix-cache-action@v2
|
||||
- name: Build on ${{ matrix.host }}
|
||||
run: 'nix flake check -L .#
|
||||
|
||||
'
|
||||
strategy:
|
||||
matrix:
|
||||
host:
|
||||
- macos-x86_64
|
||||
- macos-aarch64
|
||||
- linux
|
||||
include:
|
||||
- host: linux
|
||||
runs-on: ubuntu-latest
|
||||
timeout: 60
|
||||
- host: macos-x86_64
|
||||
runs-on: macos-12
|
||||
timeout: 60
|
||||
- host: macos-aarch64
|
||||
runs-on: macos-14
|
||||
timeout: 60
|
||||
timeout-minutes: ${{ matrix.timeout }}
|
||||
flake:
|
||||
name: Flake self-check
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Check Nix flake inputs
|
||||
uses: DeterminateSystems/flake-checker-action@v5
|
||||
with:
|
||||
fail-mode: true
|
||||
lint:
|
||||
name: Lint
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Install Nix
|
||||
uses: DeterminateSystems/nix-installer-action@v4
|
||||
- name: Magic Nix Cache
|
||||
uses: DeterminateSystems/magic-nix-cache-action@v2
|
||||
- name: Cargo Cache
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
key: ${{ runner.os }}-${{ hashFiles('Cargo.lock') }}
|
||||
path: ~/.cargo
|
||||
- name: Commit Check
|
||||
run: '# run the same check that git `pre-commit` hook does
|
||||
|
||||
nix develop --ignore-environment .#lint --command ./misc/git-hooks/pre-commit
|
||||
|
||||
'
|
||||
name: CI
|
||||
'on':
|
||||
merge_group:
|
||||
branches:
|
||||
- master
|
||||
- main
|
||||
pull_request:
|
||||
branches:
|
||||
- master
|
||||
- main
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- main
|
||||
tags:
|
||||
- v*
|
||||
workflow_dispatch: {}
|
||||
|
||||
|
||||
# THIS FILE IS AUTOGENERATED FROM FLAKEBOX CONFIGURATION
|
||||
35
.github/workflows/flakebox-flakehub-publish.yml
vendored
35
.github/workflows/flakebox-flakehub-publish.yml
vendored
@@ -1,35 +0,0 @@
|
||||
# THIS FILE IS AUTOGENERATED FROM FLAKEBOX CONFIGURATION
|
||||
|
||||
jobs:
|
||||
flakehub-publish:
|
||||
permissions:
|
||||
contents: read
|
||||
id-token: write
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
ref: ${{ (inputs.tag != null) && format('refs/tags/{0}', inputs.tag) || ''
|
||||
}}
|
||||
- name: Install Nix
|
||||
uses: DeterminateSystems/nix-installer-action@v4
|
||||
- name: Flakehub Push
|
||||
uses: DeterminateSystems/flakehub-push@main
|
||||
with:
|
||||
name: ${{ github.repository }}
|
||||
tag: ${{ inputs.tag }}
|
||||
visibility: public
|
||||
name: Publish to Flakehub
|
||||
'on':
|
||||
push:
|
||||
tags:
|
||||
- v?[0-9]+.[0-9]+.[0-9]+*
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
tags:
|
||||
description: The existing tag to publish to FlakeHub
|
||||
required: true
|
||||
type: string
|
||||
|
||||
|
||||
# THIS FILE IS AUTOGENERATED FROM FLAKEBOX CONFIGURATION
|
||||
38
.github/workflows/test.yml
vendored
38
.github/workflows/test.yml
vendored
@@ -1,38 +0,0 @@
|
||||
name: test
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ main ]
|
||||
pull_request:
|
||||
branches: [ main ]
|
||||
|
||||
env:
|
||||
CARGO_TERM_COLOR: always
|
||||
|
||||
jobs:
|
||||
test:
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
rust:
|
||||
- version: stable
|
||||
build-args:
|
||||
[
|
||||
-p cdk,
|
||||
-p cdk-integration-tests,
|
||||
]
|
||||
steps:
|
||||
- name: Checkout Crate
|
||||
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: Test
|
||||
run: cargo test ${{ matrix.build-args }}
|
||||
Reference in New Issue
Block a user