Update CI script to be consistent with other branches

This commit is contained in:
Philipp Oppermann
2020-07-17 11:36:33 +02:00
parent 5dc842d05f
commit b276ec4765

View File

@@ -12,9 +12,8 @@ on:
pull_request: pull_request:
jobs: jobs:
test: check:
name: "Test" name: Check
strategy: strategy:
matrix: matrix:
platform: [ platform: [
@@ -22,55 +21,89 @@ jobs:
macos-latest, macos-latest,
windows-latest windows-latest
] ]
runs-on: ${{ matrix.platform }} runs-on: ${{ matrix.platform }}
timeout-minutes: 15
steps: steps:
- name: "Checkout Repository" - name: Checkout Repository
uses: actions/checkout@v1 uses: actions/checkout@v2
- name: Install Rust Toolchain
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: nightly
- name: Install `rust-src` Rustup Component
run: rustup component add rust-src
- name: Run `cargo check`
uses: actions-rs/cargo@v1
with:
command: check
- name: Install Rustup test:
run: | name: Test
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain nightly strategy:
echo ::add-path::$HOME/.cargo/bin matrix:
if: runner.os == 'macOS' platform: [
ubuntu-latest,
- name: "Print Rust Version" macos-latest,
run: | windows-latest
rustc -Vv ]
cargo -Vv runs-on: ${{ matrix.platform }}
steps:
- name: "Add thumbv7em-none-eabihf Target" - name: Install Rust Toolchain
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: nightly
- name: Install bootimage
run: cargo install bootimage --debug
- name: Checkout Repository
uses: actions/checkout@v2
- name: "Add thumbv7em-none-eabihf Target"
run: rustup target add thumbv7em-none-eabihf run: rustup target add thumbv7em-none-eabihf
- name: "Build for thumbv7em-none-eabihf"
- name: "Build for thumbv7em-none-eabihf" run: cargo build --target thumbv7em-none-eabihf
run: cargo build --target thumbv7em-none-eabihf - name: "Build for Linux"
if: runner.os == 'Linux'
- name: "Build for Linux" run: cargo rustc -- -C link-arg=-nostartfiles
if: runner.os == 'Linux' - name: "Build for macOS"
run: cargo rustc -- -C link-arg=-nostartfiles if: runner.os == 'macOS'
run: cargo rustc -- -C link-args="-e __start -static -nostartfiles"
- name: "Build for macOS" - name: "Build for Windows"
if: runner.os == 'macOS' if: runner.os == 'Windows'
run: cargo rustc -- -C link-args="-e __start -static -nostartfiles" run: cargo rustc -- -C link-args="/ENTRY:_start /SUBSYSTEM:console"
- name: "Build for Windows"
if: runner.os == 'Windows'
run: cargo rustc -- -C link-args="/ENTRY:_start /SUBSYSTEM:console"
check_formatting: check_formatting:
name: "Check Formatting" name: Check Formatting
runs-on: ubuntu-latest runs-on: ubuntu-latest
timeout-minutes: 2
steps: steps:
- uses: actions/checkout@v1 - name: Checkout Repository
- name: "Use the latest Rust nightly with rustfmt" uses: actions/checkout@v2
uses: actions-rs/toolchain@v1 - name: Install Rust Toolchain
with: uses: actions-rs/toolchain@v1
toolchain: nightly with:
profile: minimal profile: minimal
toolchain: nightly
components: rustfmt components: rustfmt
override: true override: true
- run: cargo fmt -- --check - name: Run `cargo fmt`
uses: actions-rs/cargo@v1
with:
command: fmt
args: --all -- --check
clippy:
name: Clippy
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v2
- name: Install Rust Toolchain
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: nightly
components: clippy, rust-src
override: true
- name: Run `cargo clippy`
uses: actions-rs/cargo@v1
with:
command: clippy