Skip to content

Commit 35826e0

Browse files
committed
ref(scheduler/__init__.py): use Session as a singleton
1 parent bdff06a commit 35826e0

1 file changed

Lines changed: 13 additions & 6 deletions

File tree

rootfs/scheduler/__init__.py

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -81,23 +81,30 @@ def unhealthy(status_code):
8181
return False
8282

8383

84-
class KubeHTTPClient(object):
85-
apiversion = "v1"
84+
session = None
8685

87-
def __init__(self):
88-
self.url = settings.SCHEDULER_URL
8986

87+
def get_session():
88+
global session
89+
if session is None:
9090
with open('/var/run/secrets/kubernetes.io/serviceaccount/token') as token_file:
9191
token = token_file.read()
92-
9392
session = requests.Session()
9493
session.headers = {
9594
'Authorization': 'Bearer ' + token,
9695
'Content-Type': 'application/json',
9796
'User-Agent': user_agent('Deis Controller', deis_version)
9897
}
9998
session.verify = '/var/run/secrets/kubernetes.io/serviceaccount/ca.crt'
100-
self.session = session
99+
return session
100+
101+
102+
class KubeHTTPClient(object):
103+
apiversion = "v1"
104+
105+
def __init__(self):
106+
self.url = settings.SCHEDULER_URL
107+
self.session = get_session()
101108

102109
def deploy(self, namespace, name, image, command, **kwargs): # noqa
103110
logger.info('deploy {}, img {}, cmd "{}"'.format(name, image, command))

0 commit comments

Comments
 (0)