Skip to content

CI - stag-toolkit

CI - stag-toolkit #193

Workflow file for this run

#checkov:skip:CKV2_GHA_1:Comment
name: Rust CI Workflow
run-name: CI - ${{ github.event.repository.name }}
on:
push:
workflow_dispatch:
jobs:
rust:
runs-on: ubuntu-latest
name: Test + Lint Rust
permissions:
id-token: write
contents: read
actions: write
statuses: write
steps:
- name: Clone
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
fetch-depth: 1
- name: Install Rust toolchain
uses: crusty-pie/toolchain@v1
with:
toolchain: stable
override: true
components: rustfmt, clippy
- name: Rust fmt
id: rust-fmt
run: |
cargo fmt --check --verbose
- name: Machete
id: rust-machete
uses: bnjbvr/[email protected]
- name: Unit Tests and Code Coverage
id: tarpaulin
run: |
cargo install cargo-tarpaulin
cargo tarpaulin -o html --output-dir reports/
- name: Super-Linter
uses: super-linter/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SUPPRESS_POSSUM: true
LINTER_RULES_PATH: .
DISABLE_ERRORS: true
VALIDATE_RUST_2015: false
VALIDATE_RUST_2018: false
VALIDATE_RUST_2021: false
VALIDATE_RUST_CLIPPY: false
VALIDATE_JSCPD: false # takes forever
# These seem to be broken
VALIDATE_GROOVY: false
FIX_GROOVY: false
- name: Archive Coverage Results
uses: actions/upload-artifact@v4
with:
name: code-coverage-report
path: reports/tarpaulin-report.html
godot:
runs-on: ubuntu-latest
name: Test Godot
permissions:
id-token: write
contents: read
actions: write
steps:
- name: Clone
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
fetch-depth: 0
- name: Setup StagToolkit
uses: ./.gitea/composite/setup
with:
cross-compile: false
toolkit-path: '.'
import-assets: true
- name: Godot Unit Tests
shell: bash
run: |
make test-godot