From f09ff8030619f497a257faaa0ce9ec64d6b4da10 Mon Sep 17 00:00:00 2001 From: Jan David Mol <mol@astron.nl> Date: Thu, 11 Aug 2016 09:28:58 +0000 Subject: [PATCH] Task #8475: Use LOFAR_TAG as default docker tag if none specified in softwareVersion key --- MAC/Services/src/PipelineControl.py | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/MAC/Services/src/PipelineControl.py b/MAC/Services/src/PipelineControl.py index a5ca637d157..efef3e65f8d 100755 --- a/MAC/Services/src/PipelineControl.py +++ b/MAC/Services/src/PipelineControl.py @@ -190,10 +190,22 @@ class Parset(dict): def defaultDockerImage(): return runCommand("docker-template", "lofar-pipeline:${LOFAR_TAG}") + @staticmethod + def defaultDockerTag(): + return runCommand("docker-template", "${LOFAR_TAG}") + def dockerImage(self): # Return the version set in the parset, and fall back to our own version. - return (self[PARSET_PREFIX + "Observation.ObservationControl.PythonControl.softwareVersion"] or - self.defaultDockerImage()) + image = self[PARSET_PREFIX + "Observation.ObservationControl.PythonControl.softwareVersion"] + + if not image: + return self.defaultDockerImage() + + if ":" in image: + return image + + # Insert our tag by default + return "%s:%s" % (image, self.defaultDockerTag()) def otdbId(self): return int(self[PARSET_PREFIX + "Observation.otdbID"]) -- GitLab