aboutsummaryrefslogtreecommitdiffstats
path: root/.github/workflows
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/ci.yaml61
1 files changed, 60 insertions, 1 deletions
diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml
index 56cfdda..c13f63e 100644
--- a/.github/workflows/ci.yaml
+++ b/.github/workflows/ci.yaml
@@ -12,6 +12,53 @@ concurrency:
name: ci
jobs:
+ clippy:
+ runs-on: ubuntu-latest
+ permissions:
+ security-events: write # to upload sarif results
+ name: beta / clippy
+ steps:
+ - uses: actions/checkout@v5
+ with:
+ submodules: true
+ - uses: dtolnay/rust-toolchain@master
+ with:
+ toolchain: beta
+ components: clippy,rustfmt
+ - uses: Swatinem/rust-cache@v2
+ - run: cargo install clippy-sarif sarif-fmt
+ - name: install protoc
+ uses: arduino/setup-protoc@v3
+ with:
+ repo-token: ${{ secrets.GITHUB_TOKEN }}
+ - name: Run rust-clippy
+ run:
+ cargo clippy
+ --workspace
+ --all-features
+ --message-format=json | clippy-sarif | tee rust-clippy-results.sarif | sarif-fmt
+ continue-on-error: true
+ - name: Upload analysis results to GitHub
+ uses: github/codeql-action/upload-sarif@v3
+ with:
+ sarif_file: rust-clippy-results.sarif
+ wait-for-processing: true
+
+
+ fmt:
+ runs-on: ubuntu-latest
+ name: stable / fmt
+ steps:
+ - uses: actions/checkout@v5
+ with:
+ submodules: true
+ - name: Install stable
+ uses: dtolnay/rust-toolchain@stable
+ with:
+ components: rustfmt
+ - name: cargo fmt --check
+ run: cargo fmt --check
+
os-check:
runs-on: ${{ matrix.os }}
name: ${{ matrix.os }} / stable
@@ -175,14 +222,26 @@ jobs:
# # cargo llvm-cov --no-report nextest
# # cargo llvm-cov --no-report --doc
# # cargo llvm-cov report --doctests --lcov --output-path lcov.info
+ - name: Create junit.xml (nextest)
+ run: |
+ mkdir -p .config
+ echo '[profile.ci.junit]' > .config/nextest.toml
+ echo 'path = "junit.xml"' >> .config/nextest.toml
- name: cargo llvm-cov
- run: cargo llvm-cov nextest --workspace --locked --all-features --lcov --output-path lcov.info
+ run: cargo llvm-cov nextest --profile ci --workspace --locked --all-features --lcov --output-path lcov.info
- name: Upload to codecov.io
uses: codecov/codecov-action@v5
with:
fail_ci_if_error: true
token: ${{ secrets.CODECOV_TOKEN }}
slug: ${{ github.repository }}
+ - uses: codecov/test-results-action@v1
+ if: ${{ !cancelled() }}
+ with:
+ fail_ci_if_error: true
+ files: ./target/nextest/ci/junit.xml
+ token: ${{ secrets.CODECOV_TOKEN }}
+ verbose: true
- name: Stop stack
if: always()
run: |