6767 help = "Expected Volcengine Identity client name" ,
6868)
6969@click .option ("--path" , default = "." , help = "Local project path" )
70+ @click .option ("--iam-role" , default = None , help = "iam role for the vefaas function" )
7071def deploy (
7172 volcengine_access_key : str ,
7273 volcengine_secret_key : str ,
@@ -80,6 +81,7 @@ def deploy(
8081 user_pool_name : str ,
8182 client_name : str ,
8283 path : str ,
84+ iam_role : str ,
8385) -> None :
8486 """Deploy a user project to Volcengine FaaS application.
8587
@@ -131,13 +133,20 @@ def deploy(
131133 from veadk .config import getenv
132134 from veadk .utils .logger import get_logger
133135 from veadk .utils .misc import formatted_timestamp , load_module_from_file
136+ import os
137+ from veadk .config import veadk_environments
134138
135139 logger = get_logger (__name__ )
136140
137141 if not volcengine_access_key :
138142 volcengine_access_key = getenv ("VOLCENGINE_ACCESS_KEY" )
139143 if not volcengine_secret_key :
140144 volcengine_secret_key = getenv ("VOLCENGINE_SECRET_KEY" )
145+ if not iam_role :
146+ iam_role = getenv ("IAM_ROLE" , None , allow_false_values = True )
147+ else :
148+ os .environ ["IAM_ROLE" ] = iam_role
149+ veadk_environments ["IAM_ROLE" ] = iam_role
141150
142151 user_proj_abs_path = Path (path ).resolve ()
143152 template_dir_path = Path (vefaas .__file__ ).parent / "template"
0 commit comments