Skip to content

Commit 3c5bec6

Browse files
authored
feat: imporve CI (#8)
* feat: improve CI * fix: clippy warnings
1 parent 0e82673 commit 3c5bec6

8 files changed

+84
-65
lines changed

.github/workflows/CI.yml

-42
This file was deleted.

.github/workflows/ci.yml

+38
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
name: Auto Build
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
pull_request:
8+
branches:
9+
- master
10+
11+
jobs:
12+
build:
13+
name: Auto Build CI
14+
runs-on: ${{ matrix.os }}
15+
strategy:
16+
matrix:
17+
os: [ubuntu-latest, windows-latest, macOS-latest]
18+
rust: [nightly, beta, stable]
19+
20+
steps:
21+
- name: Checkout Repository
22+
uses: actions/checkout@v4
23+
24+
- name: Install Rust toolchain
25+
run: |
26+
rustup set profile minimal
27+
rustup update --no-self-update ${{ matrix.rust }}
28+
rustup component add --toolchain ${{ matrix.rust }} rustfmt clippy
29+
rustup default ${{ matrix.rust }}
30+
31+
- name: Cargo Build
32+
run: cargo build
33+
34+
- name: Cargo Clippy
35+
run: cargo clippy -- -D warnings
36+
37+
- name: Cargo Fmt Check
38+
run: cargo fmt --all -- --check

.github/workflows/coverage.yml

+34
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: Code Coverage
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
pull_request:
8+
branches:
9+
- master
10+
11+
jobs:
12+
cover:
13+
name: Auto Codecov Coverage
14+
runs-on: ubuntu-latest
15+
16+
steps:
17+
- name: Checkout Repository
18+
uses: actions/checkout@v4
19+
20+
- name: Install Rust toolchain
21+
run: |
22+
rustup set profile minimal
23+
rustup update --no-self-update stable
24+
rustup default stable
25+
26+
- name: Run cargo-tarpaulin
27+
run: |
28+
cargo install cargo-tarpaulin
29+
cargo tarpaulin --out xml
30+
31+
- name: Upload to codecov.io
32+
uses: codecov/codecov-action@v4
33+
with:
34+
token: ${{secrets.CODECOV_TOKEN}}

.github/workflows/release.yml

+8-15
Original file line numberDiff line numberDiff line change
@@ -13,26 +13,19 @@ jobs:
1313

1414
steps:
1515
- name: Checkout Repository
16-
uses: actions/checkout@master
16+
uses: actions/checkout@v4
1717

1818
- name: Install Rust toolchain
19-
uses: actions-rs/toolchain@v1
20-
with:
21-
profile: minimal
22-
toolchain: stable
23-
override: true
19+
run: |
20+
rustup set profile minimal
21+
rustup update --no-self-update stable
22+
rustup default stable
2423
2524
- name: Cargo Login
26-
uses: actions-rs/cargo@v1
27-
with:
28-
command: login
29-
args: -- ${{ secrets.CARGO_TOKEN }}
25+
run: cargo login ${{ secrets.CARGO_TOKEN }}
3026

3127
- name: Cargo Publish
32-
uses: actions-rs/cargo@v1
33-
with:
34-
command: publish
35-
args: --no-verify
28+
run: cargo publish
3629

3730
- name: GitHub Release
3831
id: create_release
@@ -43,4 +36,4 @@ jobs:
4336
tag_name: ${{ github.ref }}
4437
release_name: Release ${{ github.ref }}
4538
draft: false
46-
prerelease: false
39+
prerelease: false

src/middleware.rs

+1-2
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,9 @@ use bytes::Bytes;
77
use casbin::prelude::{TryIntoAdapter, TryIntoModel};
88
use casbin::{CachedEnforcer, CoreApi, Result as CasbinResult};
99
use futures::future::BoxFuture;
10-
use http::{self, Request, StatusCode};
10+
use http::{Request, StatusCode};
1111
use http_body::{Body as HttpBody, Full};
1212
use std::{
13-
boxed::Box,
1413
convert::Infallible,
1514
ops::{Deref, DerefMut},
1615
sync::Arc,

tests/test_middleware.rs

+1-2
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,9 @@ use bytes::Bytes;
55
use casbin::function_map::key_match2;
66
use casbin::{CoreApi, DefaultModel, FileAdapter};
77
use futures::future::BoxFuture;
8-
use http::{self, Request, StatusCode};
8+
use http::{Request, StatusCode};
99
use http_body::Body as HttpBody;
1010
use std::{
11-
boxed::Box,
1211
convert::Infallible,
1312
task::{Context, Poll},
1413
};

tests/test_middleware_domain.rs

+1-2
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,9 @@ use axum_test_helper::TestClient;
44
use bytes::Bytes;
55
use casbin::{DefaultModel, FileAdapter};
66
use futures::future::BoxFuture;
7-
use http::{self, Request, StatusCode};
7+
use http::{Request, StatusCode};
88
use http_body::Body as HttpBody;
99
use std::{
10-
boxed::Box,
1110
convert::Infallible,
1211
task::{Context, Poll},
1312
};

tests/test_set_enforcer.rs

+1-2
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,9 @@ use bytes::Bytes;
55
use casbin::function_map::key_match2;
66
use casbin::{CachedEnforcer, CoreApi, DefaultModel, FileAdapter};
77
use futures::future::BoxFuture;
8-
use http::{self, Request, StatusCode};
8+
use http::{Request, StatusCode};
99
use http_body::Body as HttpBody;
1010
use std::{
11-
boxed::Box,
1211
convert::Infallible,
1312
sync::Arc,
1413
task::{Context, Poll},

0 commit comments

Comments
 (0)