diff --git a/nipype/pipeline/plugins/ipython.py b/nipype/pipeline/plugins/ipython.py index 2ad7ccf1b6..58eba4381d 100644 --- a/nipype/pipeline/plugins/ipython.py +++ b/nipype/pipeline/plugins/ipython.py @@ -49,6 +49,11 @@ def __init__(self, plugin_args=None): if IPython_not_loaded: raise ImportError('ipyparallel could not be imported') super(IPythonPlugin, self).__init__(plugin_args=plugin_args) + valid_args = ('url_file', 'profile', 'cluster_id', 'context', 'debug', + 'timeout', 'config', 'username', 'sshserver', 'sshkey', + 'password', 'paramiko') + self.client_args = {arg: plugin_args[arg] + for arg in valid_args if arg in plugin_args} self.iparallel = None self.taskclient = None self.taskmap = {} @@ -67,7 +72,7 @@ def run(self, graph, config, updatehash=False): raise ImportError("Ipython kernel not found. Parallel execution " "will be unavailable") try: - self.taskclient = self.iparallel.Client() + self.taskclient = self.iparallel.Client(**self.client_args) except Exception as e: if isinstance(e, TimeoutError): raise Exception("No IPython clients found.")