Files
nuchat/.gitea/workflows/cargo.yaml
Fergus Molloy 10bbd9a72c
Some checks failed
Cargo / ui (push) Failing after 4s
Cargo / build (push) Successful in 16s
Cargo / test (push) Has been skipped
Cargo / check (push) Successful in 26s
put ui build in new job
2025-07-18 16:00:00 +01:00

88 lines
2.3 KiB
YAML

name: Cargo
run-name: ${{ gitea.actor }} is verifying cargo build and tests
on: [push]
jobs:
build:
env:
RUNNER_TOOL_CACHE: /toolcache
runs-on: rust-latest
steps:
- name: Check out repository code
uses: actions/checkout@v4
- name: Cache
uses: actions/cache@v4
with:
path: |
~/.cargo/registry
~/.cargo/git
target
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
restore-keys: |
${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
${{ runner.os }}-cargo-
- name: Build release project
uses: actions-rs/cargo@v1
with:
command: build
args: --locked
check:
needs: build
runs-on: rust-latest
steps:
- name: Check out repository code
uses: actions/checkout@v4
- name: Cache
uses: actions/cache@v4
with:
path: |
~/.cargo/registry
~/.cargo/git
target
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
restore-keys: |
${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
${{ runner.os }}-cargo-
- name: Run clippy
uses: actions-rs/cargo@v1
with:
command: clippy
args: -p nuchat --no-deps -- -Dwarnings -Wclippy::correctness -Wclippy::complexity -Wclippy::perf -Aclippy::missing_errors_doc -Aclippy::missing_panics_doc
ui:
runs-on: js-latest
steps:
- name: Debug
run: |
node --version
npm --version
nvm install 24
nvm use 24
node --version
npm --version
- name: Build
run: make -f=./ui/Makefile dist
test:
needs: [build, ui]
runs-on: rust-latest
steps:
- name: Check out repository code
uses: actions/checkout@v4
- name: Cache
uses: actions/cache@v4
with:
path: |
~/.cargo/registry
~/.cargo/git
target
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
restore-keys: |
${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
${{ runner.os }}-cargo-
- name: Run tests
uses: actions-rs/cargo@v1
with:
command: test