From 64bd6ecf287d6c461604eea9e2e2bab7a9a7b241 Mon Sep 17 00:00:00 2001 From: Nate Coraor Date: Thu, 12 Nov 2020 11:56:58 -0500 Subject: [PATCH] Better error handling when setting up environment statements --- pulsar/managers/util/env.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pulsar/managers/util/env.py b/pulsar/managers/util/env.py index f4267222..8b286ff5 100644 --- a/pulsar/managers/util/env.py +++ b/pulsar/managers/util/env.py @@ -1,5 +1,6 @@ RAW_VALUE_BY_DEFAULT = False +VALID_ENV_OPTIONS = ('file', 'execute', 'name/value') def env_to_statement(env): @@ -28,9 +29,11 @@ def env_to_statement(env): execute = env.get('execute', None) if execute: return execute - name = env['name'] - value = __escape(env['value'], env) - return '%s=%s; export %s' % (name, value, name) + name = env.get('name', None) + if name: + value = __escape(str(env['value']), env) + return '%s=%s; export %s' % (name, value, name) + raise RuntimeError("Invalid env definition, must be one of %s: %s" % (str(VALID_ENV_OPTIONS), str(env))) def __escape(value, env):