diff --git a/.github/bors.toml b/.github/bors.toml index 3390d8f2d668e..dcf10fcd57fdc 100644 --- a/.github/bors.toml +++ b/.github/bors.toml @@ -1,10 +1,10 @@ status = [ - "build (stable, windows-latest)", - "build (stable, ubuntu-latest)", - "build (stable, macos-latest)", - "build (nightly, ubuntu-latest)", - "build-wasm (stable, ubuntu-latest)", - "build-wasm (nightly, ubuntu-latest)", + "build (windows-latest)", + "build (ubuntu-latest)", + "build (macos-latest)", + "build-wasm", + "nightly-checks (wasm32-unknown-unknown)", + "nightly-checks (x86_64-unknown-linux-gnu)", "build-android", "markdownlint", "run-examples", diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 196d913e799d3..2f43148b7c94a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -9,18 +9,13 @@ on: env: CARGO_TERM_COLOR: always + NIGHTLY_TOOLCHAIN: nightly-2022-07-13 jobs: build: strategy: matrix: - toolchain: [stable, nightly] os: [windows-latest, ubuntu-latest, macos-latest] - exclude: - - os: macos-latest - toolchain: nightly - - os: windows-latest - toolchain: nightly runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v3 @@ -32,11 +27,7 @@ jobs: ~/.cargo/registry/cache/ ~/.cargo/git/db/ target/ - key: ${{ runner.os }}-cargo-build-${{ matrix.toolchain }}-${{ hashFiles('**/Cargo.toml') }} - - uses: actions-rs/toolchain@v1 - with: - toolchain: ${{ matrix.toolchain }} - override: true + key: ${{ runner.os }}-cargo-build-stable-${{ hashFiles('**/Cargo.toml') }} - name: Install alsa and udev run: sudo apt-get update; sudo apt-get install --no-install-recommends libasound2-dev libudev-dev if: runner.os == 'linux' @@ -47,6 +38,35 @@ jobs: CARGO_INCREMENTAL: 0 RUSTFLAGS: "-C debuginfo=0 -D warnings" + nightly-checks: + strategy: + matrix: + target: [wasm32-unknown-unknown, x86_64-unknown-linux-gnu] + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: actions-rs/toolchain@v1 + with: + toolchain: ${{ env.NIGHTLY_TOOLCHAIN }} + target: ${{ matrix.target }} + override: true + - uses: actions/cache@v3 + with: + path: | + ~/.cargo/bin/ + ~/.cargo/registry/index/ + ~/.cargo/registry/cache/ + ~/.cargo/git/db/ + target/ + key: ubuntu-latest-cargo-build-stable-${{ matrix.target }}-${{ hashFiles('**/Cargo.toml') }} + - name: Install alsa and udev + run: sudo apt-get update; sudo apt-get install --no-install-recommends libasound2-dev libudev-dev + - name: Check wasm + uses: actions-rs/cargo@v1 + with: + command: check + args: --target ${{ matrix.target }} + ci: runs-on: ubuntu-latest steps: @@ -87,7 +107,7 @@ jobs: key: ${{ runner.os }}-cargo-miri-${{ hashFiles('**/Cargo.toml') }} - uses: actions-rs/toolchain@v1 with: - toolchain: nightly + toolchain: ${{ env.NIGHTLY_TOOLCHAIN }} components: miri override: true - name: Install alsa and udev @@ -132,11 +152,7 @@ jobs: run: cargo run -p ci -- compile build-wasm: - strategy: - matrix: - toolchain: [stable, nightly] - os: [ubuntu-latest] - runs-on: ${{ matrix.os }} + runs-on: ubuntu-latest needs: build steps: - uses: actions/checkout@v3 @@ -148,17 +164,17 @@ jobs: ~/.cargo/registry/cache/ ~/.cargo/git/db/ target/ - key: ${{ runner.os }}-cargo-build-wasm-${{ matrix.toolchain }}-${{ hashFiles('**/Cargo.toml') }} + key: ubuntu-assets-cargo-build-wasm-stable-${{ hashFiles('**/Cargo.toml') }} - uses: actions-rs/toolchain@v1 with: - toolchain: ${{ matrix.toolchain }} + toolchain: stable target: wasm32-unknown-unknown override: true - name: Check wasm uses: actions-rs/cargo@v1 with: command: check - args: --target wasm32-unknown-unknown --no-default-features --features bevy_winit,x11,hdr,bevy_gltf + args: --target wasm32-unknown-unknown markdownlint: runs-on: ubuntu-latest @@ -291,7 +307,7 @@ jobs: key: ${{ runner.os }}-cargo-check-unused-dependencies-${{ hashFiles('**/Cargo.toml') }} - uses: actions-rs/toolchain@v1 with: - toolchain: nightly + toolchain: ${{ env.NIGHTLY_TOOLCHAIN }} override: true - name: Installs cargo-udeps run: cargo install --force cargo-udeps