yourcloud/.forgejo/workflows/build.yaml
2024-08-06 09:59:05 -05:00

81 lines
1.5 KiB
YAML

on: [push]
jobs:
formatting-nix:
runs-on: beefcake
steps:
- name: Checkout
uses: actions/checkout@v3
- name: alejandra -c .
run: 'nix develop -c alejandra -c .'
build:
runs-on: beefcake
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Cache
id: cache-build
uses: actions/cache@v4
with:
path: target
key: ${{ runner.os }}-build
- name: cargo build
run: 'nix develop -c cargo build'
test:
runs-on: beefcake
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Cache
id: cache-test
uses: actions/cache@v4
with:
path: target
key: ${{ runner.os }}-test
- name: Cache
id: cache-test
uses: actions/cache@v4
with:
path: prime-numbers
key: ${{ runner.os }}-build
- name: cargo test
run: 'nix develop -c cargo test'
formatting-rust:
runs-on: beefcake
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Cache
id: cache-formatting
uses: actions/cache@v4
with:
path: target
key: ${{ runner.os }}-formatting
- name: cargo fmt --check
run: 'nix develop -c cargo fmt --check'
lint:
runs-on: beefcake
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Cache
id: cache-lint
uses: actions/cache@v4
with:
path: target
key: ${{ runner.os }}-lint
- name: cargo clippy
run: 'nix develop -c cargo clippy'