1515import warnings
1616
1717import click
18- from veadk . version import VERSION
18+
1919from veadk .config import getenv
20- from veadk .integrations .ve_code_pipeline .ve_code_pipeline import VeCodePipeline
21- from veadk .integrations .ve_faas .ve_faas import VeFaaS
22- from veadk .integrations .ve_cr .ve_cr import VeCR
2320from veadk .consts import (
2421 DEFAULT_CR_INSTANCE_NAME ,
2522 DEFAULT_CR_NAMESPACE_NAME ,
2623 DEFAULT_CR_REPO_NAME ,
2724)
25+ from veadk .integrations .ve_code_pipeline .ve_code_pipeline import VeCodePipeline
26+ from veadk .integrations .ve_cr .ve_cr import VeCR
27+ from veadk .integrations .ve_faas .ve_faas import VeFaaS
28+ from veadk .utils .logger import get_logger
29+ from veadk .version import VERSION
30+
31+ logger = get_logger (__name__ )
32+
2833
2934warnings .filterwarnings (
3035 "ignore" , category = UserWarning , module = "pydantic._internal._fields"
@@ -65,9 +70,9 @@ def _create_cr(volcengine_settings: dict[str, str], cr_settings: dict[str, str])
6570
6671@click .command ()
6772@click .option (
68- "--base-image-tag " ,
69- required = True ,
70- help = f"Base VeADK image tag can be 'preview', 'latest', or a VeADK version (e.g., { VERSION } )" ,
73+ "--veadk-version " ,
74+ default = VERSION ,
75+ help = f"Base VeADK image tag can be 'preview', 'latest', or a specific VeADK version (e.g., { VERSION } )" ,
7176)
7277@click .option (
7378 "--github-url" ,
@@ -76,104 +81,98 @@ def _create_cr(volcengine_settings: dict[str, str], cr_settings: dict[str, str])
7681)
7782@click .option (
7883 "--github-branch" ,
79- default = "main" ,
80- help = "The github branch of your project, default is main " ,
84+ required = True ,
85+ help = "The github branch of your project" ,
8186)
8287@click .option (
8388 "--github-token" ,
8489 required = True ,
8590 help = "The github token to manage your project" ,
8691)
8792@click .option (
88- "--access-key" ,
89- default = getenv ( "VOLCENGINE_ACCESS_KEY" ) ,
93+ "--volcengine- access-key" ,
94+ default = None ,
9095 help = "Volcengine access key, if not set, will use the value of environment variable VOLCENGINE_ACCESS_KEY" ,
9196)
9297@click .option (
93- "--secret-key" ,
94- default = getenv ( "VOLCENGINE_SECRET_KEY" ) ,
98+ "--volcengine- secret-key" ,
99+ default = None ,
95100 help = "Volcengine secret key, if not set, will use the value of environment variable VOLCENGINE_SECRET_KEY" ,
96101)
97102@click .option (
98103 "--region" ,
99104 default = "cn-beijing" ,
100- help = "Volcengine region, default is cn-beijing" ,
105+ help = "Region for Volcengine VeFaaS, CR, and Pipeline. Default is cn-beijing" ,
101106)
102107@click .option (
103108 "--cr-instance-name" ,
104109 default = DEFAULT_CR_INSTANCE_NAME ,
105- help = "Container Registry instance name, default is veadk-user-instance" ,
110+ help = "Volcengine Container Registry instance name, default is veadk-user-instance" ,
106111)
107112@click .option (
108113 "--cr-namespace-name" ,
109114 default = DEFAULT_CR_NAMESPACE_NAME ,
110- help = "Container Registry namespace name, default is veadk-user-namespace" ,
115+ help = "Volcengine Container Registry namespace name, default is veadk-user-namespace" ,
111116)
112117@click .option (
113118 "--cr-repo-name" ,
114119 default = DEFAULT_CR_REPO_NAME ,
115- help = "Container Registry repo name, default is veadk-user-repo" ,
116- )
117- @click .option (
118- "--cr-region" ,
119- default = "cn-beijing" ,
120- help = "Container Registry region, default is cn-beijing" ,
120+ help = "Volcengine Container Registry repo name, default is veadk-user-repo" ,
121121)
122122@click .option (
123- "--function-id" ,
123+ "--vefaas- function-id" ,
124124 default = None ,
125125 help = "Volcengine FaaS function ID, if not set, a new function will be created automatically" ,
126126)
127127def pipeline (
128- base_image_tag : str ,
128+ veadk_version : str ,
129129 github_url : str ,
130130 github_branch : str ,
131131 github_token : str ,
132- access_key : str ,
133- secret_key : str ,
132+ volcengine_access_key : str ,
133+ volcengine_secret_key : str ,
134134 region : str ,
135135 cr_instance_name : str ,
136136 cr_namespace_name : str ,
137137 cr_repo_name : str ,
138- cr_region : str ,
139- function_id : str ,
138+ vefaas_function_id : str ,
140139) -> None :
141140 """Integrate a veadk project to volcengine pipeline for CI/CD"""
142141
143142 click .echo (
144143 "Welcome use VeADK to integrate your project to volcengine pipeline for CI/CD."
145144 )
146145
146+ if not volcengine_access_key :
147+ volcengine_access_key = getenv ("VOLCENGINE_ACCESS_KEY" )
148+ if not volcengine_secret_key :
149+ volcengine_secret_key = getenv ("VOLCENGINE_SECRET_KEY" )
150+
147151 volcengine_settings = {
148- "volcengine_access_key" : access_key ,
149- "volcengine_secret_key" : secret_key ,
152+ "volcengine_access_key" : volcengine_access_key ,
153+ "volcengine_secret_key" : volcengine_secret_key ,
150154 "volcengine_region" : region ,
151155 }
152156
153157 cr_settings = {
154- "cr_domain" : f"{ cr_instance_name } -{ cr_region } .cr.volces.com" ,
158+ "cr_domain" : f"{ cr_instance_name } -{ region } .cr.volces.com" ,
155159 "cr_instance_name" : cr_instance_name ,
156160 "cr_namespace_name" : cr_namespace_name ,
157161 "cr_repo_name" : cr_repo_name ,
158- "cr_region" : cr_region ,
162+ "cr_region" : region ,
159163 }
160164
161- _create_cr (volcengine_settings , cr_settings )
162-
163- click .echo ("Using the following CR configuration:" )
164- click .echo (f"Container Registry domain: { cr_settings ['cr_domain' ]} " )
165- click .echo (f"Container Registry namespace name: { cr_settings ['cr_namespace_name' ]} " )
166- click .echo (f"Container Registry region: { cr_settings ['cr_region' ]} " )
167- click .echo (f"Container Registry instance name: { cr_settings ['cr_instance_name' ]} " )
168- click .echo (f"Container Registry repo name: { cr_settings ['cr_repo_name' ]} " )
169-
170- if not function_id :
165+ if not vefaas_function_id :
171166 click .echo (
172- "No Function ID specified. The system will create one automatically. Please specify a function name:"
167+ "No Function ID specified. VeADK will create one automatically. Please specify a function name:"
173168 )
174169 function_name = click .prompt (
175- "Function name" , default = "veadk-function" , show_default = False
170+ "Function name" , default = "veadk-image- function" , show_default = False
176171 )
172+
173+ _create_cr (volcengine_settings , cr_settings )
174+
175+ if not vefaas_function_id :
177176 vefaas_client = VeFaaS (
178177 access_key = volcengine_settings ["volcengine_access_key" ],
179178 secret_key = volcengine_settings ["volcengine_secret_key" ],
@@ -184,15 +183,29 @@ def pipeline(
184183 image = "veadk-cn-beijing.cr.volces.com/veadk/simple-fastapi:0.1" ,
185184 registry_name = cr_settings ["cr_instance_name" ],
186185 )
187- click . echo (f"Created function { function_name } with ID: { function_id } " )
186+ logger . debug (f"Created function { function_name } with ID: { function_id } " )
188187
189188 client = VeCodePipeline (
190189 volcengine_access_key = volcengine_settings ["volcengine_access_key" ],
191190 volcengine_secret_key = volcengine_settings ["volcengine_secret_key" ],
192191 region = volcengine_settings ["volcengine_region" ],
193192 )
193+
194+ click .echo ("=====================================================" )
195+ click .echo ("Using the following configuration to create pipeline:" )
196+ click .echo (f"Use VeADK version: { veadk_version } " )
197+ click .echo (f"Github url: { github_url } " )
198+ click .echo (f"Github branch: { github_branch } " )
199+ click .echo (f"VeFaaS function name: { function_name } " )
200+ click .echo (f"VeFaaS function ID: { function_id } " )
201+ click .echo (f"Container Registry domain: { cr_settings ['cr_domain' ]} " )
202+ click .echo (f"Container Registry namespace name: { cr_settings ['cr_namespace_name' ]} " )
203+ click .echo (f"Container Registry region: { region } " )
204+ click .echo (f"Container Registry instance name: { cr_settings ['cr_instance_name' ]} " )
205+ click .echo (f"Container Registry repo name: { cr_settings ['cr_repo_name' ]} " )
206+
194207 client .deploy (
195- base_image_tag = base_image_tag ,
208+ base_image_tag = veadk_version ,
196209 github_url = github_url ,
197210 github_branch = github_branch ,
198211 github_token = github_token ,
0 commit comments