-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathConnection.py
More file actions
31 lines (23 loc) · 816 Bytes
/
Connection.py
File metadata and controls
31 lines (23 loc) · 816 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
from keystoneauth1.identity.v3 import Token
from keystoneauth1 import session
from openstack import connection
from openstack_resources import AUTH_URL, PROJECT_DOMAIN_ID
def connect(token, project_id):
"""Function that validates token.
When called, it tries to get valid token by calling conn.authorize().
:args:
token: scoped openstack token
project_id: openstack project id
:raises:
HttpException
:returns:
openstack.connection object
"""
user = Token(auth_url=AUTH_URL,
token=token,
project_domain_id=PROJECT_DOMAIN_ID,
project_id=project_id)
sess = session.Session(auth=user)
conn = connection.Connection(session=sess)
conn.authorize()
return conn