2.home-manager/.github/workflows/test.yml
Austin Horstman dd2612ca5e ci: home-manager switch test aginst codebase
Right now, we grab the latest home-manager pushed to remote. We need to
test against the code we are pushing out.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
(cherry picked from commit 05b8c95064)
2025-06-24 13:54:33 -05:00

42 lines
1.5 KiB
YAML

name: Test
on:
pull_request:
schedule:
- cron: "30 2 * * *"
jobs:
tests:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: cachix/install-nix-action@v31
with:
# TODO: Adjust uninstall to not need channel
nix_path: nixpkgs=channel:nixos-25.05
extra_nix_config: |
experimental-features = nix-command flakes
- run: |
if grep -R --exclude stdlib-extended.nix literalExample modules ; then
echo "Error: literalExample should be replaced by literalExpression" > /dev/stderr
exit 1
fi
- run: nix build --show-trace .#docs-jsonModuleMaintainers
- run: ./format --ci
- name: Test init --switch with locked inputs
run: |
# Copy lock file to home directory for consistent testing
mkdir -p ~/.config/home-manager
cp flake.lock ~/.config/home-manager/
nix run .#home-manager -- init --switch --override-input home-manager .
- run: yes | nix run . -- uninstall
- name: Run tests
run: nix build -j auto --show-trace --option allow-import-from-derivation false --reference-lock-file flake.lock "./tests#test-all-no-big"
env:
GC_INITIAL_HEAP_SIZE: 4294967296
- name: Run tests (with IFD)
run: nix build -j auto --show-trace --reference-lock-file flake.lock "./tests#test-all-no-big"
env:
GC_INITIAL_HEAP_SIZE: 4294967296