def get_environ(self): """ This dictionary is added to our environment for a child process. """ environ = os.environ.copy() environ.update(self.settings['environ']) environ.update({ 'SOVEREIGN_NODE_ID': self.node.id, 'SOVEREIGN_NODE_ADDRESS': "%s:%s" % self.node.address, 'SOVEREIGN_NODE_PATH': str(self.node.path), 'SOVEREIGN_SERVICE_PATH': str(self.path), 'SOVEREIGN_SERVICE_SETTINGS': json.dumps(self.settings.flat()), }) # Place our path in the Path: path_insert(environ, 'PATH', os.path.abspath(os.curdir)) path_insert(environ, 'PATH', os.path.abspath(self.path)) environ['OLDPWD'] = environ.get('PWD', '') environ['PWD'] = os.path.abspath(self.path) return environ
def get_environ(self): environ = super(PythonService, self).get_environ() ### Put our virtual env in the environ virtualenv = self.settings['virtualenv'] if virtualenv: path = os.path.abspath(os.path.join(self.path, virtualenv)) environ['VIRTUAL_ENV'] = path self.logger.info("Using virtualenv: %s", path) path_insert(environ, 'PATH', os.path.join(path, 'bin')) path_insert(environ, 'PYTHONPATH', os.path.abspath(os.curdir)) path_insert(environ, 'PYTHONPATH', os.path.abspath(self.path)) return environ