Source code for ibmcloud_python_sdk.vpc.geo

from ibmcloud_python_sdk.config import params
from ibmcloud_python_sdk.auth import get_headers as headers
from ibmcloud_python_sdk.utils.common import query_wrapper as qw


[docs]class Geo(): def __init__(self): self.cfg = params()
[docs] def get_regions(self): """Retrieve region list :return: List of regions :rtype: list """ try: # Connect to api endpoint for regions path = ("/v1/regions?version={}&generation={}".format( self.cfg["version"], self.cfg["generation"])) # Return data return qw("iaas", "GET", path, headers())["data"] except Exception as error: print("Error fetching regions. {}".format(error)) raise
[docs] def get_region(self, region): """Retrieve specific region :param region: Region name :type region: str :return: Region information :rtype: dict """ try: # Connect to api endpoint for regions path = ("/v1/regions/{}?version={}&generation={}".format( region, self.cfg["version"], self.cfg["generation"])) # Return data return qw("iaas", "GET", path, headers())["data"] except Exception as error: print("Error fetching region {}. {}".format(region, error)) raise
[docs] def get_region_zones(self, region): """Retrieve zone list for a specific region :param region: Region name :type region: str :return: List of zones for a specific region :rtype: list """ try: # Connect to api endpoint for regions path = ("/v1/regions/{}/zones?version={}&generation={}".format( region, self.cfg["version"], self.cfg["generation"])) # Return data return qw("iaas", "GET", path, headers())["data"] except Exception as error: print("Error fetching zones for region {}. {}".format( region, error)) raise
[docs] def get_region_zone(self, region, zone): """Retrieve specific zone for a specific region :param region: Region name :type region: str :param zone: Zone name :type zone: str :return: Zone information :rtype: dict """ try: # Connect to api endpoint for regions path = ("/v1/regions/{}/zones/{}?version={}&generation={}".format( region, zone, self.cfg["version"], self.cfg["generation"])) # Return data return qw("iaas", "GET", path, headers())["data"] except Exception as error: print("Error fetching zone {} for region {}. {}".format( zone, region, error)) raise