channel.send({'warning': "command returned non-zero exit status: %s" % returncode})
-def extend_path(conn, arguments):
+def extend_env(conn, arguments):
"""
get the remote environment's env so we can explicitly add the path without
wiping out everything
path = env.get('PATH', '')
env['PATH'] = path + '/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin'
arguments['env'] = env
+ if arguments.get('extend_env'):
+ for key, value in arguments['extend_env'].items():
+ arguments['env'][key] = value
return arguments
if not kw.get('env'):
# get the remote environment's env so we can explicitly add
# the path without wiping out everything
- kw = extend_path(conn, kw)
+ kw = extend_env(conn, kw)
timeout = timeout or conn.global_timeout
conn.logger.info('Running command: %s' % ' '.join(admin_command(conn.sudo, command)))