name: zfs integration on: workflow_dispatch: pull_request: branches: [main] paths: - ".github/workflows/zfs-integration.yml" - "flake.nix" - "flake.lock" - "overlays/default.nix" - "common/global/snapshot_manager.nix" - "common/optional/zfs_manager.nix" - "python/signal_alert.py" - "python/tools/snapshot_manager.py" - "python/tools/zfs_manager.py" - "python/zfs/**" - "systems/jeeves/datasets.nix" - "systems/jeeves/scripts/zfs.sh" - "systems/jeeves/zfs.nix" - "tests/zfs_integration.py" - "tests/zfs-integration.nix" push: branches: [main] paths: - ".github/workflows/zfs-integration.yml" - "flake.nix" - "flake.lock" - "overlays/default.nix" - "common/global/snapshot_manager.nix" - "common/optional/zfs_manager.nix" - "python/signal_alert.py" - "python/tools/snapshot_manager.py" - "python/tools/zfs_manager.py" - "python/zfs/**" - "systems/jeeves/datasets.nix" - "systems/jeeves/scripts/zfs.sh" - "systems/jeeves/zfs.nix" - "tests/zfs_integration.py" - "tests/zfs-integration.nix" jobs: zfs-integration: runs-on: self-hosted timeout-minutes: 30 steps: - uses: actions/checkout@v4 - name: Build and run ZFS integration VM run: >- nix build --accept-flake-config --print-build-logs .#packages.x86_64-linux.zfs-integration