@@ -3,13 +3,21 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
33 return ( mod && mod . __esModule ) ? mod : { "default" : mod } ;
44} ;
55Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
6+ const ora_1 = __importDefault ( require ( "ora" ) ) ;
67const commander_1 = __importDefault ( require ( "commander" ) ) ;
78const inquirer_1 = __importDefault ( require ( "inquirer" ) ) ;
89const chalk_1 = __importDefault ( require ( "chalk" ) ) ;
910const error_1 = require ( "../error" ) ;
1011const function_1 = require ( "../function" ) ;
1112const utils_1 = require ( "../utils" ) ;
1213const logger_1 = require ( "../logger" ) ;
14+ const StatusMap = {
15+ Active : '部署完成' ,
16+ Creating : '创建中' ,
17+ CreateFailed : '创建失败' ,
18+ Updating : '更新中' ,
19+ UpdateFailed : '更新失败'
20+ } ;
1321async function getConfigFunctions ( ) {
1422 const config = await utils_1 . resolveTcbrcConfig ( ) ;
1523 if ( ! config . functions ||
@@ -60,22 +68,26 @@ commander_1.default
6068 functions,
6169 root : process . cwd ( ) ,
6270 envId : assignEnvId ,
63- force
71+ force,
72+ log : true
6473 } ) ;
6574 }
6675 const newFunction = functions . find ( item => item . name === name ) ;
6776 if ( ! newFunction || ! newFunction . name ) {
6877 throw new error_1 . TcbError ( `函数 ${ name } 配置不存在` ) ;
6978 }
79+ const createSpinner = ora_1 . default ( '函数部署中...' ) . start ( ) ;
7080 try {
7181 await function_1 . createFunction ( {
7282 func : newFunction ,
7383 root : process . cwd ( ) ,
7484 envId : assignEnvId ,
7585 force
7686 } ) ;
87+ createSpinner . succeed ( `[${ newFunction . name } ] 函数部署成功!` ) ;
7788 }
7889 catch ( e ) {
90+ createSpinner . stop ( ) ;
7991 if ( e . code === 'ResourceInUse.FunctionName' ) {
8092 const { force } = await inquirer_1 . default . prompt ( {
8193 type : 'confirm' ,
@@ -84,12 +96,20 @@ commander_1.default
8496 default : false
8597 } ) ;
8698 if ( force ) {
87- function_1 . createFunction ( {
88- func : newFunction ,
89- root : process . cwd ( ) ,
90- envId : assignEnvId ,
91- force : true
92- } ) ;
99+ createSpinner . start ( ) ;
100+ try {
101+ await function_1 . createFunction ( {
102+ func : newFunction ,
103+ root : process . cwd ( ) ,
104+ envId : assignEnvId ,
105+ force : true
106+ } ) ;
107+ createSpinner . succeed ( `[${ newFunction . name } ] 函数部署成功!` ) ;
108+ }
109+ catch ( e ) {
110+ createSpinner . stop ( ) ;
111+ throw e ;
112+ }
93113 return ;
94114 }
95115 }
@@ -105,15 +125,23 @@ commander_1.default
105125 if ( ! name ) {
106126 throw new error_1 . TcbError ( '请指定函数名称!' ) ;
107127 }
108- const newFunction = functions . find ( item => item . name === name ) ;
109- if ( ! newFunction || ! newFunction . name ) {
128+ const func = functions . find ( item => item . name === name ) ;
129+ if ( ! func || ! func . name ) {
110130 throw new error_1 . TcbError ( `函数 ${ name } 配置不存在` ) ;
111131 }
112- await function_1 . updateFunctionCode ( {
113- func : newFunction ,
114- root : process . cwd ( ) ,
115- envId : assignEnvId
116- } ) ;
132+ const spinner = ora_1 . default ( `[${ func . name } ] 函数代码更新中...` ) . start ( ) ;
133+ try {
134+ await function_1 . updateFunctionCode ( {
135+ func,
136+ root : process . cwd ( ) ,
137+ envId : assignEnvId
138+ } ) ;
139+ spinner . succeed ( `[${ func . name } ] 函数代码更新成功!` ) ;
140+ }
141+ catch ( e ) {
142+ spinner . stop ( ) ;
143+ throw e ;
144+ }
117145} ) ;
118146commander_1 . default
119147 . command ( 'functions:list [envId]' )
@@ -136,11 +164,22 @@ commander_1.default
136164 offset : Number ( offset ) ,
137165 envId : assignEnvId
138166 } ) ;
139- const head = [ 'Name' , 'Runtime' , 'AddTime' , 'Description' ] ;
140- const tableData = data . map ( item => {
141- const { FunctionName, Runtime, AddTime, Description } = item ;
142- return [ FunctionName , Runtime , AddTime , Description ] ;
143- } ) ;
167+ const head = [
168+ 'Id' ,
169+ 'Name' ,
170+ 'Runtime' ,
171+ 'AddTime' ,
172+ 'ModTime' ,
173+ 'Status'
174+ ] ;
175+ const tableData = data . map ( item => [
176+ item . FunctionId ,
177+ item . FunctionName ,
178+ item . Runtime ,
179+ item . AddTime ,
180+ item . ModTime ,
181+ StatusMap [ item . Status ]
182+ ] ) ;
144183 utils_1 . printCliTable ( head , tableData ) ;
145184} ) ;
146185commander_1 . default
@@ -181,15 +220,15 @@ commander_1.default
181220 functionName : name ,
182221 envId : assignEnvId
183222 } ) ;
223+ logger_1 . successLog ( `删除函数 [${ name } ] 成功!` ) ;
184224} ) ;
185225function logDetail ( info , name ) {
186226 const ResMap = {
187227 Status : '状态' ,
188- CodeSize : '代码大小' ,
228+ CodeSize : '代码大小(B) ' ,
189229 Description : '描述' ,
190230 Environment : '环境变量(key=value)' ,
191231 FunctionName : '函数名称' ,
192- FunctionVersion : '函数版本' ,
193232 Handler : '执行方法' ,
194233 MemorySize : '内存配置(MB)' ,
195234 ModTime : '修改时间' ,
@@ -198,10 +237,13 @@ function logDetail(info, name) {
198237 Timeout : '超时时间(S)' ,
199238 VpcConfig : '网络配置' ,
200239 Triggers : '触发器' ,
201- CodeInfo : '函数代码'
240+ CodeInfo : '函数代码(Java 函数以及入口大于 1 M 的函数不会显示) '
202241 } ;
203242 const funcInfo = Object . keys ( ResMap )
204243 . map ( key => {
244+ if ( key === 'Status' ) {
245+ return `${ ResMap [ key ] } :${ StatusMap [ info [ key ] ] } \n` ;
246+ }
205247 if ( key === 'Environment' ) {
206248 const data = info [ key ] . Variables . map ( item => `${ item . Key } =${ item . Value } ` ) . join ( '; ' ) ;
207249 return `${ ResMap [ key ] } :${ data } \n` ;
@@ -349,9 +391,9 @@ commander_1.default
349391 if ( isBathUpdate ) {
350392 await function_1 . batchUpdateFunctionConfig ( {
351393 functions,
352- envId : assignEnvId
394+ envId : assignEnvId ,
395+ log : true
353396 } ) ;
354- logger_1 . successLog ( '更新云函数配置成功!' ) ;
355397 return ;
356398 }
357399 const functionItem = functions . find ( item => item . name === name ) ;
@@ -363,7 +405,7 @@ commander_1.default
363405 config : functionItem . config ,
364406 envId : assignEnvId
365407 } ) ;
366- logger_1 . successLog ( ' 更新云函数配置成功!' ) ;
408+ logger_1 . successLog ( `[ ${ name } ] 更新云函数配置成功!` ) ;
367409} ) ;
368410commander_1 . default
369411 . command ( 'functions:trigger:create [functionName] [envId]' )
@@ -499,18 +541,21 @@ commander_1.default
499541 if ( isBatchInvoke ) {
500542 return await function_1 . batchInvokeFunctions ( {
501543 functions,
502- envId : assignEnvId
544+ envId : assignEnvId ,
545+ log : true
503546 } ) ;
504547 }
505548 const func = functions . find ( item => item . name === name ) ;
506549 if ( ! func ) {
507550 throw new error_1 . TcbError ( '未找到相关函数配置,请检查函数名是否正确' ) ;
508551 }
509- await function_1 . invokeFunction ( {
552+ const result = await function_1 . invokeFunction ( {
510553 functionName : name ,
511554 envId : assignEnvId ,
512555 params : params || func . params
513556 } ) ;
557+ logger_1 . successLog ( `[${ name } ] 调用成功\n响应结果:\n` ) ;
558+ console . log ( result ) ;
514559} ) ;
515560commander_1 . default
516561 . command ( 'functions:copy <functionName> <newFunctionName> [envId] [targentEnvId]' )
0 commit comments