v2.2.0 (Fixing CI) #9
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Develop PR | |
on: | |
pull_request: | |
branches: [ "main" ] | |
env: | |
CARGO_TERM_COLOR: always | |
jobs: | |
style: | |
name: Check Style | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v1 | |
- name: Install rust | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
components: rustfmt | |
profile: minimal | |
override: true | |
- name: cargo fmt -- --check | |
uses: actions-rs/cargo@v1 | |
with: | |
command: fmt | |
args: --all -- --check | |
test: | |
name: Test | |
if: always() | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
build: [ stable, beta, nightly ] | |
include: | |
- build: beta | |
rust: beta | |
- build: nightly | |
rust: nightly | |
benches: true | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v1 | |
- name: Install rust | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: ${{ matrix.rust || 'stable' }} | |
profile: minimal | |
override: true | |
- name: Build debug | |
uses: actions-rs/cargo@v1 | |
with: | |
command: build | |
args: ${{ matrix.features }} | |
- name: Test | |
uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: ${{ matrix.features }} | |
- name: Test all benches | |
if: matrix.benches | |
uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: --benches ${{ matrix.features }} | |
deploy_building: | |
name: Deploy Building | |
# needs: [ test ] | |
strategy: | |
matrix: | |
os: [ ubuntu-latest ] # Default os for build | |
target: [ aarch64-unknown-linux-gnu, | |
i686-pc-windows-gnu, x86_64-pc-windows-gnu, | |
i686-unknown-linux-gnu, x86_64-unknown-linux-gnu, | |
x86_64-apple-darwin ] | |
exclude: # Do not build for macOS on Linux | |
- target: x86_64-apple-darwin | |
os: ubuntu-latest | |
include: # List of all targets to build for and the name for common mortals | |
- target: aarch64-unknown-linux-gnu | |
name: linux-arm64 | |
- target: i686-pc-windows-gnu | |
name: windows-i686 | |
- target: x86_64-pc-windows-gnu | |
name: windows-x86_64 | |
- target: i686-unknown-linux-gnu | |
name: linux-i686 | |
- target: x86_64-unknown-linux-gnu | |
name: linux-x86_64 | |
- target: x86_64-apple-darwin | |
name: macos-x86_64 | |
os: macos-latest | |
# Runs on latest ubuntu by default except for windows targets | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v1 | |
- name: Install rust | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
profile: minimal | |
override: true | |
target: ${{ matrix.target }} | |
# | |
# - name: Install dependencies | |
# if: runner.os == 'Linux' | |
# run: sudo apt-get update && sudo apt-get install -y pkg-config libssl-dev | |
# | |
# - name: PKG Config path (Linux) | |
# if: runner.os == 'Linux' | |
# run: | | |
# echo "PKG_CONFIG_PATH=/usr/lib/x86_64-linux-gnu/pkgconfig/" >> $GITHUB_ENV | |
- name: Build release | |
run: | | |
RUSTFLAGS="-Awarnings" cargo install cross --git https://github.com/cross-rs/cross --quiet | |
cross build --release --target ${{ matrix.target }} |