From e57aa67239197799b7bec2675f6db5ce6d15e94b Mon Sep 17 00:00:00 2001 From: Matus Faro Date: Mon, 6 Nov 2023 18:54:23 -0500 Subject: [PATCH] Lambda: Allow Qualifier on get policy call (#6995) --- moto/awslambda/models.py | 4 ++-- moto/awslambda/responses.py | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/moto/awslambda/models.py b/moto/awslambda/models.py index 2e7e71580..b1060d578 100644 --- a/moto/awslambda/models.py +++ b/moto/awslambda/models.py @@ -2098,8 +2098,8 @@ class LambdaBackend(BaseBackend): fn = self.get_function(function_name) return fn.get_code_signing_config() - def get_policy(self, function_name: str) -> str: - fn = self.get_function(function_name) + def get_policy(self, function_name: str, qualifier: Optional[str] = None) -> str: + fn = self._lambdas.get_function_by_name_or_arn(function_name, qualifier) if not fn: raise UnknownFunctionException(function_name) return fn.policy.wire_format() # type: ignore[union-attr] diff --git a/moto/awslambda/responses.py b/moto/awslambda/responses.py index 3b851e6b5..fa95d72e0 100644 --- a/moto/awslambda/responses.py +++ b/moto/awslambda/responses.py @@ -227,7 +227,8 @@ class LambdaResponse(BaseResponse): def _get_policy(self, request: Any) -> TYPE_RESPONSE: path = request.path if hasattr(request, "path") else path_url(request.url) function_name = unquote(path.split("/")[-2]) - out = self.backend.get_policy(function_name) + qualifier = self.querystring.get("Qualifier", [None])[0] + out = self.backend.get_policy(function_name, qualifier) return 200, {}, out def _del_policy(self, request: Any, querystring: Dict[str, Any]) -> TYPE_RESPONSE: