Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Run cargo/rustup directly in CI #2

Merged
merged 4 commits into from
Oct 30, 2022
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
125 changes: 23 additions & 102 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,17 +31,11 @@ jobs:
- name: "Checkout"
uses: actions/checkout@v3

- name: "Cargo Check"
uses: actions-rs/cargo@v1.0.1
with:
command: check
args: --no-default-features --features ${{ matrix.features }}
- name: "Check for compiler errors"
run: cargo check --no-default-features --features ${{ matrix.features }}

- name: "Linting"
uses: actions-rs/cargo@v1.0.1
with:
command: clippy
args: --no-default-features --features ${{ matrix.features }} -- -D warnings
- name: "Run linter"
run: cargo clippy --no-default-features --features ${{ matrix.features }} -- -D warnings

formatting_check:
needs: code_quality_check
Expand All @@ -50,18 +44,11 @@ jobs:
- name: "Checkout"
uses: actions/checkout@v3

- name: "Set Nightly Rust Toolchain"
uses: "actions-rs/toolchain@v1"
with:
toolchain: nightly
override: true
components: rustfmt
- name: "Install the nightly Rust toolchain"
run: rustup toolchain install nightly -c rustfmt

- name: "Formatting Check"
uses: actions-rs/cargo@v1.0.1
with:
command: fmt
args: --check
- name: "Check formatting"
run: cargo +nightly fmt --check

dependancy_audit:
needs: formatting_check
Expand All @@ -70,10 +57,8 @@ jobs:
- name: "Checkout"
uses: actions/checkout@v3

- name: "Audit"
uses: actions-rs/cargo@v1.0.1
with:
command: audit
- name: "Audit dependancies"
run: cargo audit

test_suite:
needs: [code_quality_check, formatting_check]
Expand Down Expand Up @@ -108,11 +93,8 @@ jobs:
- name: "Checkout"
uses: actions/checkout@v3

- name: "Cargo Test"
uses: actions-rs/cargo@v1.0.1
with:
command: test
args: --no-default-features --features ${{ matrix.features }} --no-fail-fast
- name: "Run tests"
run: cargo test --no-default-features --features ${{ matrix.features }} --no-fail-fast

os_compat_nix:
needs: test_suite
Expand All @@ -132,17 +114,8 @@ jobs:
- name: "Checkout"
uses: actions/checkout@v3

- name: "Cargo Build"
uses: actions-rs/cargo@v1.0.1
with:
command: build
args: --no-default-features --features ${{ matrix.features }}

- name: "Cargo Test"
uses: actions-rs/cargo@v1.0.1
with:
command: test
args: --no-default-features --features ${{ matrix.features }} --no-fail-fast http_logs_from_pub
- name: "Run HTTP test"
run: cargo test --no-default-features --features ${{ matrix.features }} --no-fail-fast http_logs_from_pub

os_compat_win-msvc:
needs: test_suite
Expand All @@ -157,17 +130,8 @@ jobs:
- name: "Checkout"
uses: actions/checkout@v3

- name: "Cargo Build"
uses: actions-rs/cargo@v1.0.1
with:
command: build
args: --no-default-features --features ${{ matrix.features }}

- name: "Cargo Test"
uses: actions-rs/cargo@v1.0.1
with:
command: test
args: --no-default-features --features ${{ matrix.features }} --no-fail-fast http_logs_from_pub
- name: "Run HTTP test"
run: cargo test --no-default-features --features ${{ matrix.features }} --no-fail-fast http_logs_from_pub

os_compat_win_gnu:
needs: test_suite
Expand All @@ -179,26 +143,14 @@ jobs:
- "rustcrypto,rustls-tls"
runs-on: windows-latest
steps:
- name: "Set GNU Rust Toolchain"
uses: "actions-rs/toolchain@v1"
with:
toolchain: stable-x86_64-pc-windows-gnu
override: true
- name: "Install the stable GNU Rust toolchain"
run: rustup toolchain install stable-gnu

- name: "Checkout"
uses: actions/checkout@v3

- name: "Cargo Build"
uses: actions-rs/cargo@v1.0.1
with:
command: build
args: --no-default-features --features ${{ matrix.features }}

- name: "Cargo Test"
uses: actions-rs/cargo@v1.0.1
with:
command: test
args: --no-default-features --features ${{ matrix.features }} --no-fail-fast http_logs_from_pub
- name: "Run HTTP test"
run: cargo +stable-gnu test --no-default-features --features ${{ matrix.features }} --no-fail-fast http_logs_from_pub

os_compat_win-msvc_openssl:
needs: test_suite
Expand All @@ -218,17 +170,8 @@ jobs:
- name: "Checkout"
uses: actions/checkout@v3

- name: "Cargo Build"
uses: actions-rs/cargo@v1.0.1
with:
command: build
args: --no-default-features --features ${{ matrix.features }}

- name: "Cargo Test"
uses: actions-rs/cargo@v1.0.1
with:
command: test
args: --no-default-features --features ${{ matrix.features }} --no-fail-fast http_logs_from_pub
- name: "Run HTTP test"
run: cargo test --no-default-features --features ${{ matrix.features }} --no-fail-fast http_logs_from_pub

# Commenting this out for now; getting GNU and OpenSSL set up properly on Windows will take some more work
# os_compat_win_gnu_openssl:
Expand All @@ -243,26 +186,4 @@ jobs:
# - "openssl-vendored,native-tls-vendored"
# runs-on: windows-latest
# steps:
# - name: "Install OpenSSL"
# run: vcpkg install openssl:x64-windows-static-md

# - name: "Set GNU Rust Toolchain"
# uses: "actions-rs/toolchain@v1"
# with:
# toolchain: stable-x86_64-pc-windows-gnu
# override: true

# - name: "Checkout"
# uses: actions/checkout@v3

# - name: "Cargo Build"
# uses: actions-rs/cargo@v1.0.1
# with:
# command: build
# args: --no-default-features --features ${{ matrix.features }}

# - name: "Cargo Test"
# uses: actions-rs/cargo@v1.0.1
# with:
# command: test
# args: --no-default-features --features ${{ matrix.features }} --no-fail-fast http_logs_from_pub
# TODO