-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add a CI to check if the PR on main is OK and fix bug by installing O…
…penSSL
- Loading branch information
1 parent
a391ed0
commit c9d0f66
Showing
2 changed files
with
150 additions
and
1 deletion.
There are no files selected for viewing
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,137 @@ | ||
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: | ||
name: Deploy | ||
needs: [ test ] | ||
if: startsWith(github.ref, 'refs/tags/') | ||
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 OpenSSL (Linux & Windows) # Windows building is running on Linux | ||
if: matrix.target != 'x86_64-apple-darwin' | ||
run: | | ||
sudo apt-get update | ||
sudo apt-get install libssl-dev | ||
- name: Install OpenSSL (macOS) | ||
if: matrix.target == 'x86_64-apple-darwin' | ||
run: | | ||
brew update | ||
brew install openssl | ||
- name: Build release | ||
uses: actions-rs/cargo@v1 | ||
with: | ||
use-cross: true | ||
command: build | ||
args: --release --target ${{ matrix.target }} |
This file contains 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