From 294b35a81569819047d4af173000b4ff7bc5d6a6 Mon Sep 17 00:00:00 2001 From: Marcos Magueta Date: Fri, 5 Jun 2026 23:49:57 -0300 Subject: github workflow --- .github/workflows/ci.yml | 38 ++++++++++++++++++++++++++++++++++++++ flake.nix | 6 ++++++ 2 files changed, 44 insertions(+) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..f4c4d9b --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,38 @@ +name: CI + +on: + push: + branches: [master] + pull_request: + +concurrency: + group: ci-${{ github.ref }} + cancel-in-progress: true + +env: + NIX_CONFIG: "experimental-features = nix-command flakes" + +jobs: + build: + name: Build + runs-on: [self-hosted, nixos] + steps: + - uses: actions/checkout@v4 + - name: Build + run: nix build .#default -L + + format: + name: Check formatting + runs-on: [self-hosted, nixos] + steps: + - uses: actions/checkout@v4 + - name: Check formatting + run: nix build .#checks.x86_64-linux.dune-fmt -L + + test: + name: Run tests + runs-on: [self-hosted, nixos] + steps: + - uses: actions/checkout@v4 + - name: Run tests + run: nix build .#checks.x86_64-linux.relational_engine -L diff --git a/flake.nix b/flake.nix index 286dee9..98c7044 100644 --- a/flake.nix +++ b/flake.nix @@ -40,6 +40,7 @@ (nix-filter.lib.inDirectory "bplustree") (nix-filter.lib.inDirectory "bin") (nix-filter.lib.inDirectory "lib") + (nix-filter.lib.inDirectory "prl_api") (nix-filter.lib.inDirectory "shared") (nix-filter.lib.inDirectory "test") ]; @@ -97,6 +98,11 @@ buildPhase = patchDuneCommand oldAttrs.buildPhase; checkPhase = patchDuneCommand oldAttrs.checkPhase; installPhase = "touch $out"; + preCheck = '' + export CAML_LD_LIBRARY_PATH="${rnt}/lib''${CAML_LD_LIBRARY_PATH:+:$CAML_LD_LIBRARY_PATH}" + export LD_LIBRARY_PATH="${rnt}/lib''${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" + export DYLD_LIBRARY_PATH="${rnt}/lib''${DYLD_LIBRARY_PATH:+:$DYLD_LIBRARY_PATH}" + ''; }); dune-fmt = legacyPackages.runCommand "check-dune-fmt" { -- cgit v1.2.3