Skip to content

Merge pull request #24 from baoyachi/laerling/separate-modules #71

Merge pull request #24 from baoyachi/laerling/separate-modules

Merge pull request #24 from baoyachi/laerling/separate-modules #71

Workflow file for this run

name: check
on:
push:
branches:
- "*"
tags:
- "*"
pull_request:
branches:
- "*"
jobs:
build:
strategy:
matrix:
os:
- ubuntu-latest
- macos-latest
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@v2
with:
submodules: true
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
components: clippy, rustfmt
- name: Check format
run: cargo fmt --all
- name: Check fix
run: cargo fix && cargo fix
- name: Check with clippy
run: cargo clippy --all -- -D warnings
- name: Build Release
run: cargo build --release --all-features
- name: Run tests
run: cargo test --all-features --all
# build on nightly
- uses: actions-rs/toolchain@v1
with:
toolchain: nightly
override: true
- name: Build on nightly
run: cargo build --release --all-features
windows-vcpkg:
name: windows-vcpkg
runs-on: windows-latest
needs: [ build ]
steps:
- uses: actions/checkout@v3
- uses: sfackler/actions/rustup@master
- run: echo "version=$(rustc --version)" >> $GITHUB_OUTPUT
id: rust-version
- run: echo "VCPKG_ROOT=$env:VCPKG_INSTALLATION_ROOT" | Out-File -FilePath $env:GITHUB_ENV -Append
- run: vcpkg install openssl:x64-windows-static-md
- uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
components: clippy, rustfmt
- name: Check format
run: cargo fmt --all
- name: Check fix
run: cargo fix && cargo fix
- name: Check with clippy
run: cargo clippy --all -- -D warnings
- name: Build Release
run: cargo build --release
- name: Run tests
run: cargo test --all-features --all
- uses: actions-rs/toolchain@v1
with:
toolchain: nightly
override: true
- name: Build on nightly
run: cargo build --release
publish-crate:
if: startsWith(github.ref, 'refs/tags/v')
runs-on: ubuntu-latest
needs: [ windows-vcpkg ]
steps:
- name: Set up Rust
uses: hecrj/setup-rust-action@v2
- uses: actions/checkout@v4
- name: Publish
shell: bash
run: |
cargo publish --token ${{ secrets.CRATES_GITHUB_TOKEN }}