Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save JorgeFrancoIbanez/bf57a46e714fcc19264870bb8c9bcc18 to your computer and use it in GitHub Desktop.
Save JorgeFrancoIbanez/bf57a46e714fcc19264870bb8c9bcc18 to your computer and use it in GitHub Desktop.
Openstack retrieve datastore version of a single datastore and print it
from keystoneauth1.identity import v3
from keystoneauth1 import session
from troveclient.v1 import client as Trove
resources = {}
class Auth:
def __init__(self):
username = "username"
password = "password"
auth_url = "http://URL:PORT/v3"
project_domain_id = "Default"
project_name = "user project name"
user_domain_id = "user domain name"
auth = v3.Password(auth_url=auth_url,
username=username,
password=password,
project_name=project_name,
user_domain_name=user_domain_id,
project_domain_name=project_domain_id)
self.sess = session.Session(auth=auth)
def get_session(self):
return self.sess
class Trovecli:
def __init__(self, session):
self.client_trove = Trove.Client(session=session)
def get_trovelist(self):
dataStore_client = self.client_trove
datastores = dataStore_client.datastores.list()
print datastores
flavors = dataStore_client.flavors.list()
print flavors
def get_verion_flavor_list(self):
dataStore_client = self.client_trove
datastore_version = dataStore_client.datastores.get("mysql")
datastore_version_flavors = dataStore_client.flavors.list_datastore_version_associated_flavors("mysql", "5.7")
print datastore_version.name
print datastore_version.id
for flavor in datastore_version_flavors:
print flavor
if __name__ == '__main__':
auth = Auth()
sess = auth.get_session()
trove = Trovecli(sess)
trove.get_trovelist()
trove.get_verion_flavor_list()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment