From 41d9e13cadfc9a762f4ab484ebf049d1b197cc4d Mon Sep 17 00:00:00 2001 From: jutty Date: Wed, 24 Jun 2026 02:02:37 -0300 Subject: [PATCH] CI: Simplify verify action by leveraging packaged defaults --- .forgejo/workflows/verify.yaml | 61 +++++++++++++--------------------- 1 file changed, 24 insertions(+), 37 deletions(-) diff --git a/.forgejo/workflows/verify.yaml b/.forgejo/workflows/verify.yaml index abf6c70..36bfc65 100644 --- a/.forgejo/workflows/verify.yaml +++ b/.forgejo/workflows/verify.yaml @@ -4,12 +4,10 @@ on: - '*' paths: - src/** - - static/graph* - - static/welcome.toml + - static/* - .forgejo/** - .justfile - - Cargo.toml - - Cargo.lock + - Cargo.* jobs: verify: @@ -17,57 +15,46 @@ jobs: timeout-minutes: 20 container: image: rust:slim - env: - RUSTUP_HOME: /rust/rustup - CARGO_HOME: /rust/cargo steps: - name: Install action dependencies - run: > - apt-get install --no-install-recommends --update -y - nodejs git curl xz-utils + run: | + apt-get install --no-install-recommends --update -y \ + nodejs git xz-utils nix - name: Checkout code uses: actions/checkout@v6 with: fetch-tags: true + - name: Cleanup checkout action dependencies + run: apt-get purge -y nodejs + + - name: Set up CI user + run: | + useradd -m ci + chown -R ci:ci "$FORGEJO_WORKSPACE" /nix + - name: Set up Rust toolchain run: | - mkdir -p "$RUSTUP_HOME" - mkdir -p "$CARGO_HOME" - rust_version=$( grep '^rust-version = "' Cargo.toml \ | cut -d '"' -f 2 ) - rustup default "$rust_version" - rustup toolchain install nightly - rustup component add llvm-tools - rustup component add --toolchain nightly rustfmt clippy - rustup target add x86_64-unknown-linux-musl x86_64-unknown-linux-gnu - - - name: Set up CI user - run: | - useradd -m ci - mkdir /nix - chown -R ci:ci "$RUSTUP_HOME" "$CARGO_HOME" "$PWD" /nix - printf '[safe]\ndirectory = %s\n' "$PWD" > /etc/gitconfig - - - name: Set up Nix - run: | - mkdir /etc/nix - echo experimental-features = nix-command flakes \ - >> /etc/nix/nix.conf su ci -c " - sh -c 'curl -L https://nixos.org/nix/install | - bash -s -- --no-daemon' \ + rustup default '$rust_version' + rustup toolchain install nightly + rustup component add llvm-tools + rustup component add --toolchain nightly rustfmt clippy + rustup target add \ + x86_64-unknown-linux-musl \ + x86_64-unknown-linux-gnu " - name: Assess run: | - su ci -lc " - export RUSTUP_HOME=$RUSTUP_HOME CARGO_HOME=$CARGO_HOME - nix develop path:$FORGEJO_WORKSPACE -c \ - just -f $FORGEJO_WORKSPACE/.justfile verify + ENV_PATH=$PATH su ci -c " + nix --experimental-features 'nix-command flakes' \ + develop path:$FORGEJO_WORKSPACE \ + -c just -f $FORGEJO_WORKSPACE/.justfile verify "