CI: get real inputs, and do a full run
This commit is contained in:
parent
8ae2115b52
commit
045ff818bd
70
.github/workflows/test.yaml
vendored
70
.github/workflows/test.yaml
vendored
@ -2,34 +2,64 @@ name: test
|
|||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches: [ main ]
|
branches: [main]
|
||||||
|
|
||||||
env:
|
env:
|
||||||
CARGO_TERM_COLOR: always
|
CARGO_TERM_COLOR: always
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
tests:
|
setup:
|
||||||
name: AoC 2024
|
name: Setup
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
- name: setup toolchain
|
- name: setup toolchain
|
||||||
uses: actions-rust-lang/setup-rust-toolchain@v1
|
uses: actions-rust-lang/setup-rust-toolchain@v1
|
||||||
with:
|
with:
|
||||||
cache: true
|
cache: true
|
||||||
components: clippy, rustfmt
|
components: clippy, rustfmt
|
||||||
toolchain: stable
|
toolchain: stable
|
||||||
|
|
||||||
- name: fake inputs
|
- name: install cargo-aoc
|
||||||
run: |
|
run: cargo install --locked cargo-aoc
|
||||||
mkdir -p input/2024/
|
|
||||||
for i in $(seq 1 25); do touch input/2024/day${i}.txt; done
|
|
||||||
|
|
||||||
- name: cargo test
|
- name: get date
|
||||||
run: cargo test --lib --all-features
|
id: date
|
||||||
|
run: |
|
||||||
|
echo date=$(date +%Y%m%d) > $GITHUB_OUTPUT
|
||||||
|
|
||||||
- name: rustfmt
|
- name: Get cached inputs
|
||||||
run: cargo fmt --all -- --check
|
id: inputs
|
||||||
|
uses: actions/cache@v4
|
||||||
|
with:
|
||||||
|
path: input
|
||||||
|
key: ${{ steps.date.outputs.date }}
|
||||||
|
|
||||||
# - name: clippy
|
- name: Get inputs from source
|
||||||
# run: cargo clippy --lib --all-features --tests -- -D warnings
|
if: steps.inputs.outputs.cache-hit != 'true'
|
||||||
|
run: |
|
||||||
|
cargo aoc credentials ${{ secrets.AOC_SESSION }}
|
||||||
|
for i in $(seq 1 25); do
|
||||||
|
dayfmt=$(printf %02d $i)
|
||||||
|
if [ ${{ steps.date.outputs.date }} -ge 202412${dayfmt} ]; then
|
||||||
|
cargo aoc input --year 2024 --day $i
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
test:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
name: Test and Lint
|
||||||
|
steps:
|
||||||
|
- name: cargo test
|
||||||
|
run: cargo test --lib --all-features
|
||||||
|
|
||||||
|
- name: rustfmt
|
||||||
|
run: cargo fmt --all -- --check
|
||||||
|
|
||||||
|
- name: clippy
|
||||||
|
run: cargo clippy --lib --all-features --tests -- -D warnings
|
||||||
|
run:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
name: Full run
|
||||||
|
steps:
|
||||||
|
- name: full run
|
||||||
|
run: cargo run --release
|
||||||
|
Loading…
x
Reference in New Issue
Block a user