From 9bf2644c69f0253ba905454e5541877fe84d512a Mon Sep 17 00:00:00 2001 From: EdJoPaTo Date: Sun, 6 Nov 2022 13:58:05 +0100 Subject: [PATCH] ci(rust): improve workflow --- .github/workflows/coverage.yml | 21 ++++++++++++---- .github/workflows/rust.yml | 44 +++++++++++++++++++++------------- .github/workflows/style.yml | 26 -------------------- 3 files changed, 43 insertions(+), 48 deletions(-) delete mode 100644 .github/workflows/style.yml diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml index 661f45a..cba5560 100644 --- a/.github/workflows/coverage.yml +++ b/.github/workflows/coverage.yml @@ -6,17 +6,28 @@ on: jobs: tarpaulin: - name: Tarpaulin runs-on: ubuntu-22.04 steps: - name: Setup Rust - uses: actions-rs/toolchain@v1 - with: - override: true - toolchain: stable + shell: bash -eux {0} + run: | + rustup --version + rustup show + rustup toolchain install stable --profile minimal + rustup default stable - uses: actions/checkout@v3 + - uses: actions/cache@v3 + with: + key: tarpaulin-${{ hashFiles('**/Cargo.lock') }} + path: | + ~/.cargo/bin/ + ~/.cargo/registry/index/ + ~/.cargo/registry/cache/ + ~/.cargo/git/db/ + target/ + - name: Run cargo-tarpaulin uses: actions-rs/tarpaulin@v0.1 with: diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index e37c70d..089814a 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -8,6 +8,19 @@ on: - cron: '42 2 * * 6' # weekly on Saturday 2:42 UTC jobs: + rustfmt: + runs-on: ubuntu-22.04 + steps: + - name: Setup Rust + shell: bash -eux {0} + run: | + rustup --version + rustup show + rustup toolchain install stable --profile minimal --component rustfmt + rustup default stable + - uses: actions/checkout@v3 + - run: cargo fmt --check --verbose + test: name: Test ${{ matrix.toolchain }} ${{ matrix.os }} runs-on: ${{ matrix.os }} @@ -45,12 +58,12 @@ jobs: features: --all-features steps: - name: Setup Rust - uses: actions-rs/toolchain@v1 - with: - components: clippy - override: true - profile: minimal - toolchain: ${{ matrix.toolchain }} + shell: bash -eux {0} + run: | + rustup --version + rustup show + rustup toolchain install ${{ matrix.toolchain }} --profile minimal --component clippy + rustup default ${{ matrix.toolchain }} - uses: actions/checkout@v3 @@ -108,24 +121,21 @@ jobs: os: windows-2022 steps: - name: Setup Rust - uses: actions-rs/toolchain@v1 - with: - override: true - profile: minimal - target: ${{ matrix.triple }} - toolchain: stable + shell: bash -eux {0} + run: | + rustup --version + rustup show + rustup toolchain install stable --profile minimal --target ${{ matrix.triple }} + rustup default stable - uses: actions/checkout@v3 - name: Fetch dependencies - uses: actions-rs/cargo@v1 - with: - command: fetch - args: --verbose + run: cargo fetch --verbose - name: Build uses: actions-rs/cargo@v1 with: command: build args: --release --verbose --all-features --target ${{ matrix.triple }} - use-cross: ${{ runner.os == 'Linux' && matrix.triple != 'x86_64-unknown-linux-gnu' }} + use-cross: ${{ runner.os == 'Linux' }} diff --git a/.github/workflows/style.yml b/.github/workflows/style.yml deleted file mode 100644 index 5708b91..0000000 --- a/.github/workflows/style.yml +++ /dev/null @@ -1,26 +0,0 @@ -name: Rust Code Formatting - -on: - push: - pull_request: - -jobs: - rustfmt: - name: Rustfmt - runs-on: ubuntu-22.04 - steps: - - name: Setup Rust - uses: actions-rs/toolchain@v1 - with: - toolchain: stable - override: true - profile: minimal - components: rustfmt - - - uses: actions/checkout@v3 - - - name: Check format - uses: actions-rs/cargo@v1 - with: - command: fmt - args: -- --check --verbose