Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commite8a3d41

Browse files
committed
feat: update orioledb extension
Expose patchset and revision attributes in postgresql to build orioledbproperly.Add NixOS VM test for orioledb extension validation.
1 parentd61b69d commite8a3d41

File tree

3 files changed

+106
-16
lines changed

3 files changed

+106
-16
lines changed

‎nix/ext/orioledb.nix‎

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ stdenv.mkDerivation rec {
1515
src=fetchFromGitHub{
1616
owner="orioledb";
1717
repo="orioledb";
18-
rev="beta12";
19-
sha256="sha256-5dyVdKD1PzW+F5OPW3TR3OKBaJxxR3OhLbzK+o9Wf+Q=";
18+
rev="f147bf21fea29965c18e4f3bb9d1e57e713376b2";
19+
sha256="sha256-W3AquOCeTYv9jLsh0VV+wW9w8mGZnpLVZDWaxmVIiX8=";
2020
};
2121
version="beta12";
2222
buildInputs=[
@@ -26,7 +26,9 @@ stdenv.mkDerivation rec {
2626
python3
2727
openssl
2828
];
29-
buildPhase="make USE_PGXS=1 ORIOLEDB_PATCHSET_VERSION=11";
29+
buildPhase=''
30+
make USE_PGXS=1 ORIOLEDB_PATCHSET_VERSION=${postgresql.patchset} all
31+
'';
3032
installPhase=''
3133
runHook preInstall
3234

‎nix/ext/tests/orioledb.nix‎

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
{self,pkgs}:
2+
let
3+
pname="orioledb";
4+
inherit(pkgs)lib;
5+
postgresqlWithExtension=
6+
postgresql:
7+
let
8+
majorVersion=lib.versions.majorpostgresql.version;
9+
pkg=pkgs.buildEnv{
10+
name="postgresql-${majorVersion}-${pname}";
11+
paths=[
12+
postgresql
13+
postgresql.lib
14+
self.packages.${pkgs.system}."psql_orioledb-17/exts/orioledb"
15+
];
16+
passthru={
17+
inherit(postgresql)versionpsqlSchema;
18+
lib=pkg;
19+
withPackages=_:pkg;
20+
};
21+
nativeBuildInputs=[pkgs.makeWrapper];
22+
pathsToLink=[
23+
"/"
24+
"/bin"
25+
"/lib"
26+
];
27+
postBuild=''
28+
wrapProgram $out/bin/postgres --set NIX_PGLIBDIR $out/lib
29+
wrapProgram $out/bin/pg_ctl --set NIX_PGLIBDIR $out/lib
30+
wrapProgram $out/bin/pg_upgrade --set NIX_PGLIBDIR $out/lib
31+
'';
32+
};
33+
in
34+
pkg;
35+
psql_orioledb=postgresqlWithExtensionself.packages.${pkgs.system}.postgresql_orioledb-17;
36+
in
37+
self.inputs.nixpkgs.lib.nixos.runTest{
38+
name=pname;
39+
hostPkgs=pkgs;
40+
nodes.server=
41+
{ ...}:
42+
{
43+
virtualisation={
44+
forwardPorts=[
45+
{
46+
from="host";
47+
host.port=13022;
48+
guest.port=22;
49+
}
50+
];
51+
};
52+
services.openssh={
53+
enable=true;
54+
};
55+
56+
services.postgresql={
57+
enable=true;
58+
package=psql_orioledb;
59+
settings={
60+
shared_preload_libraries="orioledb";
61+
default_table_access_method="orioledb";
62+
};
63+
initdbArgs=[
64+
"--allow-group-access"
65+
"--locale-provider=icu"
66+
"--encoding=UTF-8"
67+
"--icu-locale=en_US.UTF-8"
68+
];
69+
initialScript=pkgs.writeText"init-postgres-with-orioledb"''
70+
CREATE EXTENSION orioledb CASCADE;
71+
'';
72+
};
73+
};
74+
testScript=
75+
{ ...}:
76+
''
77+
start_all()
78+
79+
server.wait_for_unit("multi-user.target")
80+
server.wait_for_unit("postgresql.service")
81+
'';
82+
}

‎nix/postgresql/generic.nix‎

Lines changed: 19 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -131,18 +131,15 @@ let
131131
++lib.optionalsgssSupport[libkrb5]
132132
++lib.optionalsstdenv'.isLinux[linux-pam]
133133
++lib.optionals(!stdenv'.isDarwin)[libossp_uuid]
134-
++
135-
lib.optionals
136-
(isOrioleDB||(lib.versionAtLeastversion"17"))
137-
[
138-
perl
139-
bison
140-
flex
141-
docbook_xsl
142-
docbook_xml_dtd_45
143-
docbook_xsl_ns
144-
libxslt
145-
];
134+
++lib.optionals(isOrioleDB||(lib.versionAtLeastversion"17"))[
135+
perl
136+
bison
137+
flex
138+
docbook_xsl
139+
docbook_xml_dtd_45
140+
docbook_xsl_ns
141+
libxslt
142+
];
146143

147144
nativeBuildInputs=
148145
[
@@ -292,13 +289,16 @@ let
292289
in
293290
{
294291
psqlSchema=lib.versions.majorversion;
292+
inheritrevision;
295293

296294
withJIT=ifjitSupportthenthiselsejitToggle;
297295
withoutJIT=ifjitSupportthenjitToggleelsethis;
298296

299297
dlSuffix=ifolderThan"16"then".so"elsestdenv.hostPlatform.extensions.sharedLibrary;
300298
inheritisOrioleDB;
301299

300+
patchset=ifisOrioleDBthenifrevision!=nullthenrevisionelsebuiltins.elemAt(builtins.split"_"version)2elsenull;
301+
302302
pkgs=
303303
let
304304
scope={
@@ -411,7 +411,13 @@ let
411411
'';
412412

413413
passthru={
414-
inherit(postgresql)versionpsqlSchemaisOrioleDB;
414+
inherit(postgresql)
415+
version
416+
revision
417+
patchset
418+
psqlSchema
419+
isOrioleDB
420+
;
415421
};
416422
};
417423
in

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp