Skip to content

Deny clippy::large_futures and fix +nightly lint #5355

Deny clippy::large_futures and fix +nightly lint

Deny clippy::large_futures and fix +nightly lint #5355

Workflow file for this run

name: Build and Test
on:
pull_request:
push:
schedule:
- cron: "0 0 * * 0"
env:
RUSTFLAGS: -Dwarnings
CARGO_INCREMENTAL: 0
jobs:
msrv:
name: Get minimum supported rust version
runs-on: ubuntu-20.04
outputs:
msrv: ${{ steps.get_msrv.outputs.msrv }}
steps:
- uses: actions/checkout@v4
- id: get_msrv
run: |
MSRV=$(cargo metadata --format-version=1 --no-deps | jq '.packages[] | select(.name == "azure_core").rust_version' -r)
echo setting msrv to ${MSRV}
echo msrv=${MSRV} >> "$GITHUB_OUTPUT"
code-style:
name: Code Style
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v4
- uses: Swatinem/rust-cache@v2
# for code style, we only care about `stable`
- run: eng/scripts/code_style.sh stable
test-sdk:
name: SDK Tests
runs-on: ubuntu-20.04
needs:
- msrv
continue-on-error: ${{ matrix.experimental }}
strategy:
matrix:
build:
- stable
- ${{ needs.msrv.outputs.msrv }}
experimental:
- false
include:
- build: nightly
experimental: true
steps:
- uses: actions/checkout@v4
- uses: Swatinem/rust-cache@v2
- run: eng/scripts/sdk_tests.sh ${{ matrix.build }}
test-docs-sdk:
name: SDK docs
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@nightly
- uses: dtolnay/install@cargo-docs-rs
- run: eng/scripts/verify-docs.sh sdk
test-wasm:
name: WASM Tests
runs-on: ubuntu-20.04
needs:
- msrv
continue-on-error: ${{ matrix.experimental }}
strategy:
matrix:
build:
- stable
- ${{ needs.msrv.outputs.msrv }}
experimental:
- false
include:
- build: nightly
experimental: true
steps:
- uses: actions/checkout@v4
- uses: Swatinem/rust-cache@v2
- run: eng/scripts/check_wasm.sh ${{ matrix.build }}
# test-integration:
# name: Emulator Tests
# runs-on: ubuntu-20.04
# needs:
# - msrv
# continue-on-error: ${{ matrix.experimental }}
# strategy:
# matrix:
# build:
# - stable
# - ${{ needs.msrv.outputs.msrv }}
# experimental:
# - false
# include:
# - build: nightly
# experimental: true
# steps:
# - uses: actions/checkout@v4
# - uses: Swatinem/rust-cache@v2
# - run: eng/scripts/emulator_tests.sh ${{ matrix.build }}
# - name: display free disk space
# run: df -h /
# if: ${{ always() }}
test-e2e:
name: E2E Tests
runs-on: ubuntu-20.04
needs:
- msrv
continue-on-error: ${{ matrix.experimental }}
strategy:
matrix:
build:
- stable
- ${{ needs.msrv.outputs.msrv }}
experimental:
- false
include:
- build: nightly
experimental: true
steps:
- uses: actions/checkout@v4
- uses: Swatinem/rust-cache@v2
- run: eng/scripts/e2e_tests.sh ${{ matrix.build }}
- name: display free disk space
run: df -h /
if: ${{ always() }}
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@nightly
- name: Verify dependencies
run: |
find sdk/ -maxdepth 3 -type f -name Cargo.toml -exec bash -c 'eng/scripts/verify-dependencies.rs {}' \;