From 8cd5b56017619e260c84755726aaf567ef28d6c2 Mon Sep 17 00:00:00 2001 From: Sanhe Date: Mon, 16 May 2022 23:38:45 -0400 Subject: [PATCH 1/7] add DEFAULT_LAMBDA_FUNC_NAME_CONVENSION --- chalice/constants.py | 2 ++ chalice/deploy/appgraph.py | 12 +++++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/chalice/constants.py b/chalice/constants.py index 6dc2021a2..3f5d0cd9d 100644 --- a/chalice/constants.py +++ b/chalice/constants.py @@ -282,3 +282,5 @@ def index(): ], "Resource": "arn:*:execute-api:*:*:*/@connections/*" } + +DEFAULT_LAMBDA_FUNC_NAME_CONVENSION = "{app_name}-{chalice_stage}-{func_name}" diff --git a/chalice/deploy/appgraph.py b/chalice/deploy/appgraph.py index 12cebfbac..23a71358a 100644 --- a/chalice/deploy/appgraph.py +++ b/chalice/deploy/appgraph.py @@ -7,7 +7,10 @@ from chalice.config import Config # noqa from chalice import app -from chalice.constants import LAMBDA_TRUST_POLICY +from chalice.constants import ( + LAMBDA_TRUST_POLICY, + DEFAULT_LAMBDA_FUNC_NAME_CONVENSION, +) from chalice.deploy import models from chalice.utils import UI # noqa @@ -475,8 +478,11 @@ def _build_lambda_function(self, role, # type: models.IAMRole ): # type: (...) -> models.LambdaFunction - function_name = '%s-%s-%s' % ( - config.app_name, config.chalice_stage, name) + function_name = DEFAULT_LAMBDA_FUNC_NAME_CONVENSION.format( + app_name=config.app_name, + chalice_stage=config.chalice_stage, + func_name=name, + ) security_group_ids, subnet_ids = self._get_vpc_params(name, config) lambda_layers = self._get_lambda_layers(config) function = models.LambdaFunction( From a6550b331bcc915129661756356c001828e19cf8 Mon Sep 17 00:00:00 2001 From: Sanhe Date: Mon, 16 May 2022 23:40:37 -0400 Subject: [PATCH 2/7] add DEFAULT_LAMBDA_LAYER_NAME_CONVENSION --- chalice/constants.py | 1 + chalice/deploy/appgraph.py | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/chalice/constants.py b/chalice/constants.py index 3f5d0cd9d..7e516fb1e 100644 --- a/chalice/constants.py +++ b/chalice/constants.py @@ -284,3 +284,4 @@ def index(): } DEFAULT_LAMBDA_FUNC_NAME_CONVENSION = "{app_name}-{chalice_stage}-{func_name}" +DEFAULT_LAMBDA_LAYER_NAME_CONVENSION = "{app_name}-{chalice_stage}-{layer_name}" diff --git a/chalice/deploy/appgraph.py b/chalice/deploy/appgraph.py index 23a71358a..c6bf06926 100644 --- a/chalice/deploy/appgraph.py +++ b/chalice/deploy/appgraph.py @@ -10,6 +10,7 @@ from chalice.constants import ( LAMBDA_TRUST_POLICY, DEFAULT_LAMBDA_FUNC_NAME_CONVENSION, + DEFAULT_LAMBDA_LAYER_NAME_CONVENSION, ) from chalice.deploy import models from chalice.utils import UI # noqa @@ -379,8 +380,11 @@ def _get_managed_lambda_layer(self, config): if self._managed_layer is None: self._managed_layer = models.LambdaLayer( resource_name='managed-layer', - layer_name='%s-%s-%s' % ( - config.app_name, config.chalice_stage, 'managed-layer'), + layer_name=DEFAULT_LAMBDA_LAYER_NAME_CONVENSION.format( + app_name=config.app_name, + chalice_stage=config.chalice_stage, + layer_name='managed-layer', + ), runtime=config.lambda_python_version, deployment_package=models.DeploymentPackage( models.Placeholder.BUILD_STAGE) From 91c6a06122256f6853e07db390ef7e2a02a7a695 Mon Sep 17 00:00:00 2001 From: Sanhe Date: Mon, 16 May 2022 23:43:02 -0400 Subject: [PATCH 3/7] add DEFAULT_LAMBDA_NAME_PREFIX_CONVENSION --- chalice/config.py | 6 +++++- chalice/constants.py | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/chalice/config.py b/chalice/config.py index 75d800a61..fe5f00aa8 100644 --- a/chalice/config.py +++ b/chalice/config.py @@ -7,6 +7,7 @@ from chalice.app import Chalice # noqa from chalice.constants import DEFAULT_STAGE_NAME from chalice.constants import DEFAULT_HANDLER_NAME +from chalice.constants import DEFAULT_LAMBDA_NAME_PREFIX_CONVENSION StrMap = Dict[str, Any] @@ -431,7 +432,10 @@ def _load_json_file(self, deployed_file): def _upgrade_deployed_values(self, chalice_stage_name, data): # type: (str, Any) -> DeployedResources deployed = data[chalice_stage_name] - prefix = '%s-%s-' % (self.app_name, chalice_stage_name) + prefix = DEFAULT_LAMBDA_NAME_PREFIX_CONVENSION.format( + app_name=self.app_name, + chalice_stage=chalice_stage_name, + ) resources = [] # type: List[Dict[str, Any]] self._upgrade_lambda_functions(resources, deployed, prefix) self._upgrade_rest_api(resources, deployed) diff --git a/chalice/constants.py b/chalice/constants.py index 7e516fb1e..8dc30c91f 100644 --- a/chalice/constants.py +++ b/chalice/constants.py @@ -283,5 +283,6 @@ def index(): "Resource": "arn:*:execute-api:*:*:*/@connections/*" } +DEFAULT_LAMBDA_NAME_PREFIX_CONVENSION = "{app_name}-{chalice_stage}" DEFAULT_LAMBDA_FUNC_NAME_CONVENSION = "{app_name}-{chalice_stage}-{func_name}" DEFAULT_LAMBDA_LAYER_NAME_CONVENSION = "{app_name}-{chalice_stage}-{layer_name}" From 5b6d889ecd356e5e9d618d205c32a1c3ad939dd1 Mon Sep 17 00:00:00 2001 From: Sanhe Date: Mon, 16 May 2022 23:44:23 -0400 Subject: [PATCH 4/7] add DEFAULT_LAMBDA_ROLE_NAME_CONVENSION --- chalice/constants.py | 1 + chalice/deploy/appgraph.py | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/chalice/constants.py b/chalice/constants.py index 8dc30c91f..40df81a9e 100644 --- a/chalice/constants.py +++ b/chalice/constants.py @@ -286,3 +286,4 @@ def index(): DEFAULT_LAMBDA_NAME_PREFIX_CONVENSION = "{app_name}-{chalice_stage}" DEFAULT_LAMBDA_FUNC_NAME_CONVENSION = "{app_name}-{chalice_stage}-{func_name}" DEFAULT_LAMBDA_LAYER_NAME_CONVENSION = "{app_name}-{chalice_stage}-{layer_name}" +DEFAULT_LAMBDA_ROLE_NAME_CONVENSION = "{app_name}-{chalice_stage}-{func_name}" diff --git a/chalice/deploy/appgraph.py b/chalice/deploy/appgraph.py index c6bf06926..16297ee32 100644 --- a/chalice/deploy/appgraph.py +++ b/chalice/deploy/appgraph.py @@ -11,6 +11,7 @@ LAMBDA_TRUST_POLICY, DEFAULT_LAMBDA_FUNC_NAME_CONVENSION, DEFAULT_LAMBDA_LAYER_NAME_CONVENSION, + DEFAULT_LAMBDA_ROLE_NAME_CONVENSION, ) from chalice.deploy import models from chalice.utils import UI # noqa @@ -425,8 +426,11 @@ def _create_role_reference(self, config, stage_name, function_name): policy = models.IAMPolicy(document=models.Placeholder.BUILD_STAGE) if not config.autogen_policy: resource_name = '%s_role' % function_name - role_name = '%s-%s-%s' % (config.app_name, stage_name, - function_name) + role_name = DEFAULT_LAMBDA_ROLE_NAME_CONVENSION.format( + app_name=config.app_name, + chalice_stage=stage_name, + func_name=function_name, + ) if config.iam_policy_file is not None: filename = os.path.join(config.project_dir, '.chalice', From 76f70882ce73b9f3e6cc58dbdfd485107115545d Mon Sep 17 00:00:00 2001 From: Sanhe Date: Mon, 16 May 2022 23:45:54 -0400 Subject: [PATCH 5/7] add DEFAULT_LAMBDA_DEFAULT_ROLE_NAME_CONVENSION --- chalice/constants.py | 1 + chalice/deploy/appgraph.py | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/chalice/constants.py b/chalice/constants.py index 40df81a9e..68569ea24 100644 --- a/chalice/constants.py +++ b/chalice/constants.py @@ -287,3 +287,4 @@ def index(): DEFAULT_LAMBDA_FUNC_NAME_CONVENSION = "{app_name}-{chalice_stage}-{func_name}" DEFAULT_LAMBDA_LAYER_NAME_CONVENSION = "{app_name}-{chalice_stage}-{layer_name}" DEFAULT_LAMBDA_ROLE_NAME_CONVENSION = "{app_name}-{chalice_stage}-{func_name}" +DEFAULT_LAMBDA_DEFAULT_ROLE_NAME_CONVENSION = "{app_name}-{chalice_stage}" diff --git a/chalice/deploy/appgraph.py b/chalice/deploy/appgraph.py index 16297ee32..c891d8009 100644 --- a/chalice/deploy/appgraph.py +++ b/chalice/deploy/appgraph.py @@ -12,6 +12,7 @@ DEFAULT_LAMBDA_FUNC_NAME_CONVENSION, DEFAULT_LAMBDA_LAYER_NAME_CONVENSION, DEFAULT_LAMBDA_ROLE_NAME_CONVENSION, + DEFAULT_LAMBDA_DEFAULT_ROLE_NAME_CONVENSION, ) from chalice.deploy import models from chalice.utils import UI # noqa @@ -443,7 +444,10 @@ def _create_role_reference(self, config, stage_name, function_name): filename=filename, document=models.Placeholder.BUILD_STAGE) else: resource_name = 'default-role' - role_name = '%s-%s' % (config.app_name, stage_name) + role_name = DEFAULT_LAMBDA_DEFAULT_ROLE_NAME_CONVENSION.format( + app_name=config.app_name, + chalice_stage=stage_name, + ) policy = models.AutoGenIAMPolicy( document=models.Placeholder.BUILD_STAGE, traits=set([]), From bafe9d238c3a591b473b7007aab1c3f659c729e4 Mon Sep 17 00:00:00 2001 From: Sanhe Date: Mon, 16 May 2022 23:52:20 -0400 Subject: [PATCH 6/7] add DEFAULT_EVENT_RULE_NAME_CONVENSION --- chalice/constants.py | 1 + chalice/deploy/appgraph.py | 16 ++++++++++++---- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/chalice/constants.py b/chalice/constants.py index 68569ea24..7bd8efee6 100644 --- a/chalice/constants.py +++ b/chalice/constants.py @@ -288,3 +288,4 @@ def index(): DEFAULT_LAMBDA_LAYER_NAME_CONVENSION = "{app_name}-{chalice_stage}-{layer_name}" DEFAULT_LAMBDA_ROLE_NAME_CONVENSION = "{app_name}-{chalice_stage}-{func_name}" DEFAULT_LAMBDA_DEFAULT_ROLE_NAME_CONVENSION = "{app_name}-{chalice_stage}" +DEFAULT_EVENT_RULE_NAME_CONVENSION = "{app_name}-{chalice_stage}-{resource_name}" diff --git a/chalice/deploy/appgraph.py b/chalice/deploy/appgraph.py index c891d8009..4900e31cb 100644 --- a/chalice/deploy/appgraph.py +++ b/chalice/deploy/appgraph.py @@ -13,6 +13,7 @@ DEFAULT_LAMBDA_LAYER_NAME_CONVENSION, DEFAULT_LAMBDA_ROLE_NAME_CONVENSION, DEFAULT_LAMBDA_DEFAULT_ROLE_NAME_CONVENSION, + DEFAULT_EVENT_RULE_NAME_CONVENSION, ) from chalice.deploy import models from chalice.utils import UI # noqa @@ -284,8 +285,11 @@ def _create_cwe_subscription( ) resource_name = event_source.name + '-event' - rule_name = '%s-%s-%s' % (config.app_name, config.chalice_stage, - resource_name) + rule_name = DEFAULT_EVENT_RULE_NAME_CONVENSION.format( + app_name=config.app_name, + chalice_stage=config.chalice_stage, + resource_name=resource_name, + ) cwe = models.CloudWatchEvent( resource_name=resource_name, rule_name=rule_name, @@ -320,8 +324,12 @@ def _create_scheduled_model(self, expression = event_source.schedule_expression.to_string() else: expression = event_source.schedule_expression - rule_name = '%s-%s-%s' % (config.app_name, config.chalice_stage, - resource_name) + + rule_name = DEFAULT_EVENT_RULE_NAME_CONVENSION.format( + app_name=config.app_name, + chalice_stage=config.chalice_stage, + resource_name=resource_name, + ) scheduled_event = models.ScheduledEvent( resource_name=resource_name, rule_name=rule_name, From 778e09b833755a916c462c739378f0835e694925 Mon Sep 17 00:00:00 2001 From: Sanhe Date: Mon, 16 May 2022 23:53:23 -0400 Subject: [PATCH 7/7] fix typo in word convention --- chalice/config.py | 4 ++-- chalice/constants.py | 12 ++++++------ chalice/deploy/appgraph.py | 22 +++++++++++----------- 3 files changed, 19 insertions(+), 19 deletions(-) diff --git a/chalice/config.py b/chalice/config.py index fe5f00aa8..763d7b117 100644 --- a/chalice/config.py +++ b/chalice/config.py @@ -7,7 +7,7 @@ from chalice.app import Chalice # noqa from chalice.constants import DEFAULT_STAGE_NAME from chalice.constants import DEFAULT_HANDLER_NAME -from chalice.constants import DEFAULT_LAMBDA_NAME_PREFIX_CONVENSION +from chalice.constants import DEFAULT_LAMBDA_NAME_PREFIX_CONVENTION StrMap = Dict[str, Any] @@ -432,7 +432,7 @@ def _load_json_file(self, deployed_file): def _upgrade_deployed_values(self, chalice_stage_name, data): # type: (str, Any) -> DeployedResources deployed = data[chalice_stage_name] - prefix = DEFAULT_LAMBDA_NAME_PREFIX_CONVENSION.format( + prefix = DEFAULT_LAMBDA_NAME_PREFIX_CONVENTION.format( app_name=self.app_name, chalice_stage=chalice_stage_name, ) diff --git a/chalice/constants.py b/chalice/constants.py index 7bd8efee6..949c04278 100644 --- a/chalice/constants.py +++ b/chalice/constants.py @@ -283,9 +283,9 @@ def index(): "Resource": "arn:*:execute-api:*:*:*/@connections/*" } -DEFAULT_LAMBDA_NAME_PREFIX_CONVENSION = "{app_name}-{chalice_stage}" -DEFAULT_LAMBDA_FUNC_NAME_CONVENSION = "{app_name}-{chalice_stage}-{func_name}" -DEFAULT_LAMBDA_LAYER_NAME_CONVENSION = "{app_name}-{chalice_stage}-{layer_name}" -DEFAULT_LAMBDA_ROLE_NAME_CONVENSION = "{app_name}-{chalice_stage}-{func_name}" -DEFAULT_LAMBDA_DEFAULT_ROLE_NAME_CONVENSION = "{app_name}-{chalice_stage}" -DEFAULT_EVENT_RULE_NAME_CONVENSION = "{app_name}-{chalice_stage}-{resource_name}" +DEFAULT_LAMBDA_NAME_PREFIX_CONVENTION = "{app_name}-{chalice_stage}" +DEFAULT_LAMBDA_FUNC_NAME_CONVENTION = "{app_name}-{chalice_stage}-{func_name}" +DEFAULT_LAMBDA_LAYER_NAME_CONVENTION = "{app_name}-{chalice_stage}-{layer_name}" +DEFAULT_LAMBDA_ROLE_NAME_CONVENTION = "{app_name}-{chalice_stage}-{func_name}" +DEFAULT_LAMBDA_DEFAULT_ROLE_NAME_CONVENTION = "{app_name}-{chalice_stage}" +DEFAULT_EVENT_RULE_NAME_CONVENTION = "{app_name}-{chalice_stage}-{resource_name}" diff --git a/chalice/deploy/appgraph.py b/chalice/deploy/appgraph.py index 4900e31cb..7734cbb73 100644 --- a/chalice/deploy/appgraph.py +++ b/chalice/deploy/appgraph.py @@ -9,11 +9,11 @@ from chalice import app from chalice.constants import ( LAMBDA_TRUST_POLICY, - DEFAULT_LAMBDA_FUNC_NAME_CONVENSION, - DEFAULT_LAMBDA_LAYER_NAME_CONVENSION, - DEFAULT_LAMBDA_ROLE_NAME_CONVENSION, - DEFAULT_LAMBDA_DEFAULT_ROLE_NAME_CONVENSION, - DEFAULT_EVENT_RULE_NAME_CONVENSION, + DEFAULT_LAMBDA_FUNC_NAME_CONVENTION, + DEFAULT_LAMBDA_LAYER_NAME_CONVENTION, + DEFAULT_LAMBDA_ROLE_NAME_CONVENTION, + DEFAULT_LAMBDA_DEFAULT_ROLE_NAME_CONVENTION, + DEFAULT_EVENT_RULE_NAME_CONVENTION, ) from chalice.deploy import models from chalice.utils import UI # noqa @@ -285,7 +285,7 @@ def _create_cwe_subscription( ) resource_name = event_source.name + '-event' - rule_name = DEFAULT_EVENT_RULE_NAME_CONVENSION.format( + rule_name = DEFAULT_EVENT_RULE_NAME_CONVENTION.format( app_name=config.app_name, chalice_stage=config.chalice_stage, resource_name=resource_name, @@ -325,7 +325,7 @@ def _create_scheduled_model(self, else: expression = event_source.schedule_expression - rule_name = DEFAULT_EVENT_RULE_NAME_CONVENSION.format( + rule_name = DEFAULT_EVENT_RULE_NAME_CONVENTION.format( app_name=config.app_name, chalice_stage=config.chalice_stage, resource_name=resource_name, @@ -390,7 +390,7 @@ def _get_managed_lambda_layer(self, config): if self._managed_layer is None: self._managed_layer = models.LambdaLayer( resource_name='managed-layer', - layer_name=DEFAULT_LAMBDA_LAYER_NAME_CONVENSION.format( + layer_name=DEFAULT_LAMBDA_LAYER_NAME_CONVENTION.format( app_name=config.app_name, chalice_stage=config.chalice_stage, layer_name='managed-layer', @@ -435,7 +435,7 @@ def _create_role_reference(self, config, stage_name, function_name): policy = models.IAMPolicy(document=models.Placeholder.BUILD_STAGE) if not config.autogen_policy: resource_name = '%s_role' % function_name - role_name = DEFAULT_LAMBDA_ROLE_NAME_CONVENSION.format( + role_name = DEFAULT_LAMBDA_ROLE_NAME_CONVENTION.format( app_name=config.app_name, chalice_stage=stage_name, func_name=function_name, @@ -452,7 +452,7 @@ def _create_role_reference(self, config, stage_name, function_name): filename=filename, document=models.Placeholder.BUILD_STAGE) else: resource_name = 'default-role' - role_name = DEFAULT_LAMBDA_DEFAULT_ROLE_NAME_CONVENSION.format( + role_name = DEFAULT_LAMBDA_DEFAULT_ROLE_NAME_CONVENTION.format( app_name=config.app_name, chalice_stage=stage_name, ) @@ -498,7 +498,7 @@ def _build_lambda_function(self, role, # type: models.IAMRole ): # type: (...) -> models.LambdaFunction - function_name = DEFAULT_LAMBDA_FUNC_NAME_CONVENSION.format( + function_name = DEFAULT_LAMBDA_FUNC_NAME_CONVENTION.format( app_name=config.app_name, chalice_stage=config.chalice_stage, func_name=name,