From f3cc6cc15f08ecda8c9efb36d860fa63f8a43daf Mon Sep 17 00:00:00 2001
From: Stanislav Bohm <spirali@kreatrix.org>
Date: Wed, 8 Apr 2020 10:51:11 +0200
Subject: [PATCH] Flag for OpenMPI bug on Salomon

---
 deploy/deploy_pbs.py | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/deploy/deploy_pbs.py b/deploy/deploy_pbs.py
index 8634cfb..96934e5 100644
--- a/deploy/deploy_pbs.py
+++ b/deploy/deploy_pbs.py
@@ -20,11 +20,15 @@ def is_inside_pbs():
     return "PBS_NODEFILE" in os.environ
 
 
-def get_pbs_nodes():
-    assert is_inside_pbs()
+def get_pbs_nodes(use_short_names):
+    if not is_inside_pbs():
+        raise Exception("Not in PBS job")
 
     with open(os.environ["PBS_NODEFILE"]) as f:
-        return [line.strip() for line in f]
+        nodes = [line.strip() for line in f]
+    if use_short_names:
+        nodes = [line.split(".")[0] for line in nodes]
+    return nodes
 
 
 def start_datasrv(cluster, node, workdir, env, init_cmd):
@@ -55,8 +59,9 @@ def start_server(cluster, workers, workdir, env, init_cmd):
 @click.command()
 @click.argument("workdir")
 @click.option("--init-cmd", default="")
-def up(workdir, init_cmd):
-    nodes = get_pbs_nodes()
+@click.option("--short-names", default=False, is_flag=True)
+def up(workdir, init_cmd, short_names):
+    nodes = get_pbs_nodes(short_names)
 
     workdir = pathlib.Path(workdir).absolute()
     prepare_directory(workdir)
-- 
GitLab