summaryrefslogtreecommitdiff
path: root/openstackclient/identity/client.py
blob: 2d823d2bc96137b962dcbc0181f4cf528c46b23a (plain)
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
import logging

from keystoneclient.v2_0 import client as identity_client

LOG = logging.getLogger(__name__)


def make_client(instance):
    """Returns an identity service client.
    """
    if instance._url:
        LOG.debug('instantiating identity client: token flow')
        client = identity_client.Client(
            endpoint=instance._url,
            token=instance._token,
        )
    else:
        LOG.debug('instantiating identity client: password flow')
        client = identity_client.Client(
            username=instance._username,
            password=instance._password,
            tenant_name=instance._tenant_name,
            tenant_id=instance._tenant_id,
            auth_url=instance._auth_url,
            region_name=instance._region_name,
        )
    return client