From a92835264100583903dc408abe43d461ff7d4dca Mon Sep 17 00:00:00 2001 From: Sergey Gulin Date: Wed, 27 Mar 2024 12:22:02 +0300 Subject: [OPS-1384] Introduce NixOS VM tests Problem: Currently, the only way to test deploy-rs deployments is to actually do a deployment to an existing NixOS instance (either in VM, or a real machine) manually. This is a bit inconvenient and one can forget to test changes when developing/reviewing deploy-rs changes. Solution: Add NixOS VM tests. --- .github/workflows/check.yml | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) (limited to '.github') diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 567f961..79e9442 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -2,10 +2,26 @@ name: Nix flake check on: pull_request jobs: + get-matrix: + runs-on: [self-hosted, nix] + outputs: + check-matrix: ${{ steps.set-check-matrix.outputs.matrix }} + steps: + - uses: actions/checkout@v4 + + - id: set-check-matrix + run: echo "matrix=$(nix eval --json .#check-matrix.x86_64-linux)" >> $GITHUB_OUTPUT + check: - runs-on: self-hosted + needs: get-matrix + name: check ${{ matrix.check }} + runs-on: [self-hosted, nix] + strategy: + fail-fast: false + # this matrix consists of the names of all checks defined in flake.nix + matrix: ${{fromJson(needs.get-matrix.outputs.check-matrix)}} steps: - uses: actions/checkout@v4 - - name: check flake - run: nix flake check -L + - name: check + run: nix build -L .#checks.x86_64-linux.${{ matrix.check }} -- cgit v1.2.3