aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/ci.yml38
-rw-r--r--flake.nix6
2 files changed, 44 insertions, 0 deletions
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" {