about summary refs log tree commit diff
path: root/nixos/tests
diff options
context:
space:
mode:
authorWolfgang Walther <walther@technowledgy.de>2024-04-20 17:09:08 +0200
committerWolfgang Walther <walther@technowledgy.de>2024-04-20 20:10:13 +0200
commit945a3bbb8b52f953ef03b2679f3b65ed5ec9044c (patch)
treee4e77e2a19887f41c7f9c3a4c3f401e70710cf45 /nixos/tests
parent0d56eca281775901803a9af8790c1a026a445f85 (diff)
postgresqlPackages.promscale_extension: remove deprecated and broken package
postgresql14Packages.promscale_extension breaks with:

  Error:
    0: `pgx-0.6.1` shouldn't be used with `cargo-pgx-0.7.4`,
    please use `pgx = "~0.7.4"` in your `Cargo.toml`.

However, pinning cargo-pgx to 0_6_1 via the following

  buildPgxExtension.override { cargo-pgx = cargo-pgx_0_6_1; }

does not work either, because the build then fails with:

  thread 'main' panicked at /build/promscale_extension-0.8.0-vendor.tar.gz/proc-macro2/src/fallback.rs:756:9:
  "__mbstate_t_union_(unnamed_at_/nix/store/ij144ma6vs8acil8r9hgr8xkb1dp9azg-glibc-2_39-5-dev/include/bits/types/__mbstate_t_h_16_3)" is not a valid Ident

This seems to be related to [1], which indicates that this is a
problem with newer LLVM / clang toolchains.

At the same time th upstream package is deprecated / archived since
the 2nd of April 2024 [2]. Additionally this package is unfree and
thus very unlikely to be forked. Since we can't expect this to be
fixed, the only sensible thing to do is to remove the package.

[1]: https://github.com/rust-lang/rust-bindgen/issues/2312
[2]: https://github.com/timescale/promscale/issues/1836
Diffstat (limited to 'nixos/tests')
-rw-r--r--nixos/tests/all-tests.nix1
-rw-r--r--nixos/tests/promscale.nix60
2 files changed, 0 insertions, 61 deletions
diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix
index 23c5a94ed12ca..e06ca2b40bb23 100644
--- a/nixos/tests/all-tests.nix
+++ b/nixos/tests/all-tests.nix
@@ -939,7 +939,6 @@ in {
   tiddlywiki = handleTest ./tiddlywiki.nix {};
   tigervnc = handleTest ./tigervnc.nix {};
   timescaledb = handleTest ./timescaledb.nix {};
-  promscale = handleTest ./promscale.nix {};
   timezone = handleTest ./timezone.nix {};
   tinc = handleTest ./tinc {};
   tinydns = handleTest ./tinydns.nix {};
diff --git a/nixos/tests/promscale.nix b/nixos/tests/promscale.nix
deleted file mode 100644
index da18628f2482c..0000000000000
--- a/nixos/tests/promscale.nix
+++ /dev/null
@@ -1,60 +0,0 @@
-# mostly copied from ./timescaledb.nix which was copied from ./postgresql.nix
-# as it seemed unapproriate to test additional extensions for postgresql there.
-
-{ system ? builtins.currentSystem
-, config ? { }
-, pkgs ? import ../.. { inherit system config; }
-}:
-
-with import ../lib/testing-python.nix { inherit system pkgs; };
-with pkgs.lib;
-
-let
-  postgresql-versions = import ../../pkgs/servers/sql/postgresql pkgs;
-  test-sql = pkgs.writeText "postgresql-test" ''
-    CREATE USER promscale SUPERUSER PASSWORD 'promscale';
-    CREATE DATABASE promscale OWNER promscale;
-  '';
-
-  make-postgresql-test = postgresql-name: postgresql-package: makeTest {
-    name = postgresql-name;
-    meta = with pkgs.lib.maintainers; {
-      maintainers = [ anpin ];
-    };
-
-    nodes.machine = { config, pkgs, ... }:
-      {
-        services.postgresql = {
-          enable = true;
-          package = postgresql-package;
-          extraPlugins = ps: with ps; [
-            timescaledb
-            promscale_extension
-          ];
-          settings = { shared_preload_libraries = "timescaledb, promscale"; };
-        };
-        environment.systemPackages = with pkgs; [ promscale ];
-      };
-
-    testScript = ''
-      machine.start()
-      machine.wait_for_unit("postgresql")
-      with subtest("Postgresql with extensions timescaledb and promscale is available just after unit start"):
-          print(machine.succeed("sudo -u postgres psql -f ${test-sql}"))
-          machine.succeed("sudo -u postgres psql promscale -c 'SHOW shared_preload_libraries;' | grep promscale")
-          machine.succeed(
-            "promscale --db.name promscale --db.password promscale --db.user promscale --db.ssl-mode allow --startup.install-extensions --startup.only"
-          )
-      machine.succeed("sudo -u postgres psql promscale -c 'SELECT ps_trace.get_trace_retention_period();' | grep '(1 row)'")
-      machine.shutdown()
-    '';
-  };
-  #version 15 is not supported yet
-  applicablePostgresqlVersions = filterAttrs (_: value: versionAtLeast value.version "12" && !(versionAtLeast value.version "15")) postgresql-versions;
-in
-mapAttrs'
-  (name: package: {
-    inherit name;
-    value = make-postgresql-test name package;
-  })
-  applicablePostgresqlVersions