def test_cached_by_service_region(self, patched_env, patched_resource, patched_client): """ Test the cached_by_service_region function """ from chalicelib import cache cache.cached_by_service_region(SERVICE, REGION)
def speke_server_ddb_items(region): """ Find the SPEKE key servers based on MediaPackage endpoint configurations """ items = [] # create an expression to find speke server urls jsonpath_expr = parse('$..SpekeKeyProvider.Url') # get MediaPackage origin endpoints mediapackage_ep_cached = cache.cached_by_service_region( "mediapackage-origin-endpoint", region) for endpoint in mediapackage_ep_cached: # decode the endpoint configuration endpoint_data = json.loads(endpoint["data"]) for server_url in [ match.value for match in jsonpath_expr.find(endpoint_data) ]: parsed = urlparse(server_url) sha = hashlib.sha1() sha.update(server_url.encode('utf-8')) url_digest = sha.hexdigest() arn = "arn:oss:speke:::{}".format(url_digest) config = { "arn": arn, "endpoint": server_url, "scheme": parsed.scheme } service = "speke-keyserver" # print(config) items.append(node_to_ddb_item(arn, service, "global", config)) return items
def speke_server_ddb_items(region): """ Find the SPEKE key servers based on MediaPackage endpoint configurations """ items = [] # create an expression to find speke server urls jsonpath_expr = parse('$..SpekeKeyProvider.Url') # get MediaPackage origin endpoints mediapackage_ep_cached = cache.cached_by_service_region("mediapackage-origin-endpoint", region) for endpoint in mediapackage_ep_cached: # decode the endpoint configuration endpoint_data = json.loads(endpoint["data"]) for server_url in [match.value for match in jsonpath_expr.find(endpoint_data)]: parsed = urlparse(server_url) sha = hashlib.sha1() sha.update(server_url.encode('utf-8')) url_digest = sha.hexdigest() arn = "arn:oss:speke:::{}".format(url_digest) config = {"arn": arn, "endpoint": server_url, "scheme": parsed.scheme} service = "speke-keyserver" # print(config) items.append(node_to_ddb_item(arn, service, "global", config)) return items
def cached_by_service_region(service, region): """ API entry point to retrieve items from the cache under the service and region name. """ return cache.cached_by_service_region(service, region)
def cached_by_service_region(service, region): """ API entry point to retrieve items from the cache under the service and region name. """ return cache.cached_by_service_region(service, region)