@@ -49,41 +49,46 @@ jobs:
49
49
with :
50
50
components : clippy, rustfmt
51
51
52
- # Combine security tools installation
53
- - name : Install Security Tools
54
- run : |
55
- cargo install cargo-audit cargo-deny --locked
56
-
57
52
# Group formatting and linting checks
58
53
- name : Code Quality Checks
59
54
run : |
60
55
cargo fmt -- --check
61
56
cargo clippy --all-targets --all-features -- -D warnings
62
57
58
+ - name : Install cargo-tarpaulin
59
+ uses : baptiste0928/cargo-install@v3
60
+ with :
61
+ crate : cargo-tarpaulin
62
+
63
63
# Run tests with coverage
64
64
- name : Run Tests
65
65
run : |
66
- cargo install cargo-tarpaulin
67
- cargo tarpaulin --out Xml
66
+ cargo tarpaulin --out Xml --output-dir coverage.xml
68
67
69
- # Add test coverage reporting
70
- - name : Upload Coverage
68
+ # Upload test result as artifact
69
+ - name : Upload Coverage Report
70
+ uses : actions/upload-artifact@v4
71
+ with :
72
+ name : coverage-report
73
+ path : coverage.xml
74
+
75
+ - name : Upload Coverage to Codev
71
76
uses : codecov/codecov-action@v5
72
77
with :
73
78
token : ${{ secrets.CODECOV_TOKEN }}
74
79
80
+ - name : Install cargo-audit
81
+ uses : baptiste0928/cargo-install@v3
82
+ with :
83
+ crate : cargo-audit
84
+
85
+ - name : Install cargo-deny
86
+ uses : baptiste0928/cargo-install@v3
87
+ with :
88
+ crate : cargo-deny
89
+
75
90
# Group security checks
76
91
- name : Security Audit
77
92
run : |
78
93
cargo audit --stale
79
94
cargo deny check
80
-
81
- # Add caching for installed tools
82
- - name : C2w3e456 ache Tools
83
- uses : actions/cache@v3
84
- with :
85
- path : |
86
- ~/.cargo/bin/cargo-audit
87
- ~/.cargo/bin/cargo-deny
88
- ~/.cargo/bin/cargo-tarpaulin
89
- key : ${{ runner.os }}-cargo-tools-${{ hashFiles('**/Cargo.lock') }}
0 commit comments