From 00efc95ee7a8f344c0ed3770a5383c5690a2f877 Mon Sep 17 00:00:00 2001 From: Ophestra Date: Wed, 25 Jun 2025 19:37:45 +0900 Subject: [PATCH] workflows: port test workflow to github This is a much less useful port of the test workflow and runs much slower due to runner limitations. Still better than nothing though. Signed-off-by: Ophestra --- .github/workflows/test.yml | 48 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 .github/workflows/test.yml diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..e4226cf --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,48 @@ +name: Test + +on: + - push + +jobs: + dist: + name: Create distribution + runs-on: ubuntu-latest + permissions: + actions: write + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Install Nix + uses: nixbuild/nix-quick-install-action@v32 + with: + nix_conf: | + keep-env-derivations = true + keep-outputs = true + + - name: Restore and cache Nix store + uses: nix-community/cache-nix-action@v6 + with: + primary-key: build-${{ runner.os }}-${{ hashFiles('**/*.nix') }} + restore-prefixes-first-match: build-${{ runner.os }}- + gc-max-store-size-linux: 1G + purge: true + purge-prefixes: build-${{ runner.os }}- + purge-created: 60 + purge-primary-key: never + + - name: Build for test + id: build-test + run: >- + export HAKUREI_REV="$(git rev-parse --short HEAD)" && + sed -i.old 's/version = /version = "0.0.0-'$HAKUREI_REV'"; # version = /' package.nix && + nix build --print-out-paths --print-build-logs .#dist && + mv package.nix.old package.nix && + echo "rev=$HAKUREI_REV" >> $GITHUB_OUTPUT + + - name: Upload test build + uses: actions/upload-artifact@v4 + with: + name: "hakurei-${{ steps.build-test.outputs.rev }}" + path: result/* + retention-days: 1