name: Backend Actions run-name: ${{ gitea.actor }} is running backend actions on: [push] jobs: build: runs-on: rust-latest defaults: run: working-directory: ./backend steps: - uses: actions/checkout@v4 - name: Load Cache uses: actions/cache@v4 with: path: | ~/.cargo/registry ~/.cargo/git target key: ${{ runner.os }}-cargo-build-${{ hashFiles('Cargo.lock') }} - name: Build Release Binary run: cargo build --release --locked test: runs-on: rust-latest defaults: run: working-directory: ./backend steps: - uses: actions/checkout@v4 - name: Load Cache uses: actions/cache@v4 with: path: | ~/.cargo/registry ~/.cargo/git target key: ${{ runner.os }}-cargo-test-${{ hashFiles('Cargo.lock') }} - name: Build Test Binary run: cargo test --no-run - name: Run Tests run: ./scripts/test.sh - name: Upload Test Logs uses: actions/upload-artifact@v4 with: name: nuchat-${{ hashFiles('src/**') }}-${{ hashFiles('tests/**') }}.log path: logs/*