@@ -101,20 +101,40 @@ def _lambda(self):
101
101
return aws .lambda_
102
102
103
103
def list_lambdas (self ) -> list [Lambda ]:
104
+ """
105
+ Return a list of all the AWS Lambda functions in the AWS account. Only
106
+ the latest version of each AWS Lambda function will be included in the
107
+ list.
108
+ """
104
109
return [
105
110
Lambda .from_response (function )
106
111
for response in self ._lambda .get_paginator ('list_functions' ).paginate ()
107
112
for function in response ['Functions' ]
108
113
]
109
114
110
- def manage_lambdas (self , enabled : bool ):
115
+ def list_deployment_lambdas (self ) -> list [Lambda ]:
116
+ """
117
+ Return a list of all AWS Lambda functions in the current deployment. All
118
+ versions (including '$LATEST') of each AWS Lambda function will be
119
+ included in the list.
120
+ """
111
121
paginator = self ._lambda .get_paginator ('list_functions' )
112
- lambda_prefixes = [config .qualified_resource_name (lambda_infix ) for lambda_infix in config .lambda_names ()]
122
+ lambda_prefixes = [
123
+ config .qualified_resource_name (lambda_infix )
124
+ for lambda_infix in config .lambda_names ()
125
+ ]
113
126
assert all (lambda_prefixes )
114
- for lambda_page in paginator .paginate (FunctionVersion = 'ALL' , MaxItems = 500 ):
115
- for lambda_name in [metadata ['FunctionName' ] for metadata in lambda_page ['Functions' ]]:
116
- if any (lambda_name .startswith (prefix ) for prefix in lambda_prefixes ):
117
- self .manage_lambda (lambda_name , enabled )
127
+ return [
128
+ Lambda .from_response (function )
129
+ for response in paginator .paginate (FunctionVersion = 'ALL' , MaxItems = 500 )
130
+ for function in response ['Functions' ]
131
+ if any (function ['FunctionName' ].startswith (prefix )
132
+ for prefix in lambda_prefixes )
133
+ ]
134
+
135
+ def manage_lambdas (self , enabled : bool ):
136
+ for lambda_ in self .list_deployment_lambdas ():
137
+ self .manage_lambda (lambda_ .name , enabled )
118
138
119
139
def manage_lambda (self , lambda_name : str , enable : bool ):
120
140
lambda_settings = self ._lambda .get_function (FunctionName = lambda_name )
0 commit comments