diff --git a/dask_jobqueue/core.py b/dask_jobqueue/core.py index 568930ba..007a7979 100644 --- a/dask_jobqueue/core.py +++ b/dask_jobqueue/core.py @@ -391,6 +391,7 @@ class JobQueueCluster(SpecCluster): ) job_cls = None + config_name = None def __init__( self, @@ -421,9 +422,12 @@ def __init__( "or SGEJob with the job_cls= argument." ) - if config_name: + if config_name is not None: + self.config_name = config_name + + if self.config_name: if interface is None: - interface = dask.config.get("jobqueue.%s.interface" % config_name) + interface = dask.config.get("jobqueue.%s.interface" % self.config_name) scheduler = { "cls": Scheduler, # Use local scheduler for now @@ -435,8 +439,8 @@ def __init__( "security": security, }, } - if config_name: - kwargs["config_name"] = config_name + if self.config_name: + kwargs["config_name"] = self.config_name kwargs["interface"] = interface kwargs["protocol"] = protocol kwargs["security"] = security diff --git a/dask_jobqueue/tests/test_jobqueue_core.py b/dask_jobqueue/tests/test_jobqueue_core.py index c4acd785..e0f8523d 100644 --- a/dask_jobqueue/tests/test_jobqueue_core.py +++ b/dask_jobqueue/tests/test_jobqueue_core.py @@ -3,9 +3,11 @@ import socket import sys import re +import psutil import pytest +import dask from dask_jobqueue import ( JobQueueCluster, PBSCluster, @@ -206,3 +208,12 @@ def test_cluster_has_cores_and_memory(Cluster): with pytest.raises(ValueError, match=r"cores=4, memory='\d+GB'"): Cluster(cores=4) + + +@pytest.mark.asyncio +async def test_config_interface(): + net_if_addrs = psutil.net_if_addrs() + interface = list(net_if_addrs.keys())[0] + with dask.config.set({"jobqueue.pbs.interface": interface}): + cluster = PBSCluster(cores=1, memory="2GB", asynchronous=True) + assert interface in str(cluster.scheduler_spec)