diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..2e039a2 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,71 @@ +name: CI + +on: + push: + branches: + - main + pull_request: + branches: + - main + +env: + CARGO_TERM_COLOR: always + RUSTFLAGS: -Dwarnings + +jobs: + test_lib_linux: + name: Build and test library (Linux) + runs-on: ubuntu-latest + defaults: + run: + working-directory: ./lib + steps: + - uses: actions/checkout@v4 + - run: cargo fmt --check + - run: cargo clippy + - run: cargo test + + test_lib_windows: + name: Build and test library (Windows) + runs-on: windows-latest + defaults: + run: + working-directory: ./lib + steps: + - uses: actions/checkout@v4 + - run: cargo fmt --check + - run: cargo clippy + - run: cargo test + + build_app_linux: + name: Build Linux application + runs-on: ubuntu-latest + defaults: + run: + working-directory: ./app + steps: + - uses: actions/checkout@v4 + - run: cargo fmt --check + - run: cargo clippy + + build_app_windows: + name: Build Windows application + runs-on: windows-latest + defaults: + run: + working-directory: ./app + steps: + - uses: actions/checkout@v4 + - run: cargo fmt --check + - run: cargo clippy + + build_efi: + name: Build EFI application + runs-on: ubuntu-latest + defaults: + run: + working-directory: ./efi + steps: + - uses: actions/checkout@v4 + - run: cargo fmt --check + - run: cargo clippy