summaryrefslogtreecommitdiff
path: root/gnu/packages/patches/ganeti-preserve-PYTHONPATH.patch
diff options
context:
space:
mode:
authorMarius Bakke <marius@gnu.org>2020-07-03 00:28:57 +0200
committerMarius Bakke <marius@gnu.org>2020-07-16 21:51:43 +0200
commit72a91d74cec01bfcfcef2b62c5b327fab82950b6 (patch)
treed93d3d99a5b2fe2f06765286e72cc89e17195b98 /gnu/packages/patches/ganeti-preserve-PYTHONPATH.patch
parent851cc11cd1c28178110ea7db5d528b342e9bc5be (diff)
gnu: Add ganeti.
* gnu/packages/virtualization.scm (system->qemu-target, ganeti): New variables. * gnu/packages/patches/ganeti-deterministic-manual.patch, gnu/packages/patches/ganeti-disable-version-symlinks.patch, gnu/packages/patches/ganeti-drbd-compat.patch, gnu/packages/patches/ganeti-haskell-pythondir.patch, gnu/packages/patches/ganeti-os-disk-size.patch, gnu/packages/patches/ganeti-preserve-PYTHONPATH.patch, gnu/packages/patches/ganeti-shepherd-master-failover.patch, gnu/packages/patches/ganeti-shepherd-support.patch: New files. * gnu/local.mk (dist_patch_DATA): Adjust accordingly.
Diffstat (limited to 'gnu/packages/patches/ganeti-preserve-PYTHONPATH.patch')
-rw-r--r--gnu/packages/patches/ganeti-preserve-PYTHONPATH.patch21
1 files changed, 21 insertions, 0 deletions
diff --git a/gnu/packages/patches/ganeti-preserve-PYTHONPATH.patch b/gnu/packages/patches/ganeti-preserve-PYTHONPATH.patch
new file mode 100644
index 0000000000..1358e30633
--- /dev/null
+++ b/gnu/packages/patches/ganeti-preserve-PYTHONPATH.patch
@@ -0,0 +1,21 @@
+Do not override PYTHONPATH when calling Python code from the Haskell
+daemons. This is necessary because the Python library dependencies are
+only available through PYTHONPATH.
+
+diff --git a/src/Ganeti/Query/Exec.hs b/src/Ganeti/Query/Exec.hs
+--- a/src/Ganeti/Query/Exec.hs
++++ b/src/Ganeti/Query/Exec.hs
+@@ -99,12 +99,10 @@ spawnJobProcess jid = withErrorLogAt CRITICAL (show jid) $
+ do
+ use_debug <- isDebugMode
+ env_ <- (M.toList . M.insert "GNT_DEBUG" (if use_debug then "1" else "0")
+- . M.insert "PYTHONPATH" AC.pythondir
+ . M.fromList)
+ `liftM` getEnvironment
+ execPy <- P.jqueueExecutorPy
+ logDebug $ "Executing " ++ AC.pythonPath ++ " " ++ execPy
+- ++ " with PYTHONPATH=" ++ AC.pythondir
+
+ (master, child) <- pipeClient connectConfig
+ let (rh, wh) = clientToHandle child
+