def _get_policy(self, request, full_url, headers): path = request.path if hasattr(request, 'path') else path_url(request.url) function_name = path.split('/')[-2] if self.lambda_backend.get_function(function_name): lambda_function = self.lambda_backend.get_function(function_name) return 200, {}, json.dumps(dict(Policy="{\"Statement\":[" + lambda_function.policy + "]}")) else: return 404, {}, "{}"
def _get_policy(self, request, full_url, headers): path = request.path if hasattr(request, "path") else path_url(request.url) function_name = path.split("/")[-2] if self.lambda_backend.get_function(function_name): out = self.lambda_backend.get_policy_wire_format(function_name) return 200, {}, out else: return 404, {}, "{}"
def _get_policy(self, request, full_url, headers): path = request.path if hasattr(request, 'path') else path_url(request.url) function_name = path.split('/')[-2] if self.lambda_backend.get_function(function_name): lambda_function = self.lambda_backend.get_function(function_name) return 200, {}, json.dumps(dict(Policy="{\"Statement\":[" + lambda_function.policy + "]}")) else: return 404, {}, "{}"
def _add_policy(self, request): path = request.path if hasattr(request, "path") else path_url( request.url) function_name = unquote(path.split("/")[-2]) qualifier = self.querystring.get("Qualifier", [None])[0] statement = self.body self.lambda_backend.add_permission(function_name, qualifier, statement) return 200, {}, json.dumps({"Statement": statement})
def resource_callback(self, request): path = path_url(request.url) path_after_stage_name = "/".join(path.split("/")[2:]) if not path_after_stage_name: path_after_stage_name = "/" resource = self.get_resource_for_path(path_after_stage_name) status_code, response = resource.get_response(request) return status_code, {}, response
def _add_policy(self, request, full_url, headers): path = request.path if hasattr(request, 'path') else path_url(request.url) function_name = path.split('/')[-2] if self.lambda_backend.get_function(function_name): policy = request.body.decode('utf8') self.lambda_backend.add_policy(function_name, policy) return 200, {}, json.dumps(dict(Statement=policy)) else: return 404, {}, "{}"
def _add_policy(self, request, full_url, headers): path = request.path if hasattr(request, 'path') else path_url(request.url) function_name = path.split('/')[-2] if self.lambda_backend.get_function(function_name): policy = request.body.decode('utf8') self.lambda_backend.add_policy(function_name, policy) return 200, {}, json.dumps(dict(Statement=policy)) else: return 404, {}, "{}"
def _add_policy(self, request, full_url, headers): path = request.path if hasattr(request, "path") else path_url(request.url) function_name = path.split("/")[-2] if self.lambda_backend.get_function(function_name): statement = self.body self.lambda_backend.add_policy_statement(function_name, statement) return 200, {}, json.dumps({"Statement": statement}) else: return 404, {}, "{}"
def resource_callback(self, request): path = path_url(request.url) path_after_stage_name = '/'.join(path.split("/")[2:]) if not path_after_stage_name: path_after_stage_name = '/' resource = self.get_resource_for_path(path_after_stage_name) status_code, response = resource.get_response(request) return status_code, {}, response
def _del_policy(self, request, full_url, headers, querystring): path = request.path if hasattr(request, "path") else path_url(request.url) function_name = path.split("/")[-3] statement_id = path.split("/")[-1].split("?")[0] revision = querystring.get("RevisionId", "") if self.lambda_backend.get_function(function_name): self.lambda_backend.remove_permission(function_name, statement_id, revision) return 204, {}, "{}" else: return 404, {}, "{}"
def event_source_mapping(self, request, full_url, headers): self.setup_class(request, full_url, headers) path = request.path if hasattr(request, "path") else path_url(request.url) uuid = path.split("/")[-1] if request.method == "GET": return self._get_event_source_mapping(uuid) elif request.method == "PUT": return self._update_event_source_mapping(uuid) elif request.method == "DELETE": return self._delete_event_source_mapping(uuid) else: raise ValueError("Cannot handle request")
def versions(self, request, full_url, headers): self.setup_class(request, full_url, headers) if request.method == 'GET': # This is ListVersionByFunction path = request.path if hasattr(request, 'path') else path_url(request.url) function_name = path.split('/')[-2] return self._list_versions_by_function(function_name) elif request.method == 'POST': return self._publish_function(request, full_url, headers) else: raise ValueError("Cannot handle request")
def versions(self, request, full_url, headers): self.setup_class(request, full_url, headers) if request.method == 'GET': # This is ListVersionByFunction path = request.path if hasattr(request, 'path') else path_url(request.url) function_name = path.split('/')[-2] return self._list_versions_by_function(function_name) elif request.method == 'POST': return self._publish_function(request, full_url, headers) else: raise ValueError("Cannot handle request")
def _get_policy(self, request, full_url, headers): path = request.path if hasattr(request, "path") else path_url( request.url) function_name = path.split("/")[-2] if self.lambda_backend.get_function(function_name): lambda_function = self.lambda_backend.get_function(function_name) return ( 200, {}, json.dumps( dict(Policy='{"Statement":[' + lambda_function.policy + "]}")), ) else: return 404, {}, "{}"
def _get_policy(self, request): path = request.path if hasattr(request, "path") else path_url( request.url) function_name = unquote(path.split("/")[-2]) out = self.lambda_backend.get_policy(function_name) return 200, {}, out