@serverless-devs/s 2.0.95-beta.1 → 2.0.95

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -42,7 +42,7 @@ function print() { __p += __j.call(arguments, '') }
42
42
  `)),console.log((0,Eu.bgRed)("ERROR:")+`
43
43
  `+s+`
44
44
  `),f!=="disable"&&console.log(rn.gray("Please copy traceId: "+this.traceId+" and join Dingding group: 33947367 for consultation.")),console.log(rn.gray("You can run 's clean --cache' to prune Serverless devs.")),console.log(rn.gray(`And run again with the '--debug' option or 's -h' to get more logs.
45
- `))}return i.prototype.report=function(r){return Gy(this,void 0,void 0,function(){return Wy(this,function(s){return Xy({type:"jsError",content:r.message+"||"+r.stack,traceId:this.traceId}),[2]})})},i}();te.HandleError=tw});var Hc=T((wx,nw)=>{nw.exports={name:"@serverless-devs/s",version:"2.0.95-beta.1",description:"Serverless devs tool, serverless developer tool, supports Alibaba cloud, AWS, azure, baidu cloud, Huawei cloud, Google cloud and Tencent cloud.",homepage:"https://www.serverless-devs.com",keywords:["serverless","alibaba","tencent","azure","baidu","huawei","google","function","faas","serverless-devs"],publishConfig:{access:"public",registry:"https://registry.npmjs.org"},license:"MIT",repository:{type:"git",url:"https://github.com/Serverless-Devs/Serverless-Devs"},bugs:{url:"https://github.com/Serverless-Devs/Serverless-Devs/issues"},scripts:{prewatch:"rm -rf lib/* && cp -r ./src/daemon ./lib",watch:"tsc -w",test:"npx jest",prebuild:"rm -rf lib",build:"tsc && cp -r ./src/daemon ./lib",postbuild:"./shell/postbuild.sh","test:cov":"jest --coverage",lint:"npm run typecheck && f2elint scan -i src",fix:"f2elint fix",typecheck:"npx tsc -p tsconfig.json --noEmit",update:"rm -rf yarn.lock && rm -rf package-lock.json && rm -rf node_modules && yarn",beta:"npm publish --tag=beta"},main:"./lib/index.js",bin:{s:"bin/s"},devDependencies:{"@types/jest":"^27.0.1","@types/lodash":"^4.14.168","@types/node":"^14.0.23","@typescript-eslint/eslint-plugin":"^4.14.1","@typescript-eslint/parser":"^4.14.1","babel-eslint":"^10.1.0",boxen:"^5.0.0",commander:"^6.0.0",dotenv:"^10.0.0",esbuild:"^0.13.6",eslint:"^7.7.0","eslint-config-prettier":"^7.2.0","eslint-plugin-import":"^2.20.1","eslint-plugin-prettier":"^3.1.2",husky:"^4.2.3",inquirer:"^8.2.0","inquirer-autocomplete-prompt":"^1.3.0",jest:"^27.1.0","latest-version":"^5.1.0","lint-staged":"^10.0.8",lodash:"^4.17.20","os-locale":"5.0.0",prettier:"^2.2.1",semver:"^7.3.5","semver-diff":"^3.1.1","ts-jest":"^27.0.1","ts-node":"^9.1.1","tty-table":"^4.1.5",typescript:"^4.1.3"},"lint-staged":{"**/*.{js,jsx,ts}":"f2elint exec eslint"},jest:{coverageDirectory:"coverage",testEnvironment:"node",coverageProvider:"v8",preset:"ts-jest",testMatch:["**/test/**/*test.[jt]s"],setupFilesAfterEnv:["./jest.setup.ts"]},dependencies:{"@serverless-devs/core":"^0.1.15-beta.2"}}});var Ii=T(W=>{"use strict";var rw=W&&W.__createBinding||(Object.create?function(i,r,s,o){o===void 0&&(o=s),Object.defineProperty(i,o,{enumerable:!0,get:function(){return r[s]}})}:function(i,r,s,o){o===void 0&&(o=s),i[o]=r[s]}),iw=W&&W.__setModuleDefault||(Object.create?function(i,r){Object.defineProperty(i,"default",{enumerable:!0,value:r})}:function(i,r){i.default=r}),sw=W&&W.__importStar||function(i){if(i&&i.__esModule)return i;var r={};if(i!=null)for(var s in i)s!=="default"&&Object.prototype.hasOwnProperty.call(i,s)&&rw(r,i,s);return iw(r,i),r},Gc=W&&W.__awaiter||function(i,r,s,o){function l(f){return f instanceof s?f:new s(function(_){_(f)})}return new(s||(s=Promise))(function(f,_){function E(S){try{g(o.next(S))}catch(C){_(C)}}function w(S){try{g(o.throw(S))}catch(C){_(C)}}function g(S){S.done?f(S.value):l(S.value).then(E,w)}g((o=o.apply(i,r||[])).next())})},Wc=W&&W.__generator||function(i,r){var s={label:0,sent:function(){if(f[0]&1)throw f[1];return f[1]},trys:[],ops:[]},o,l,f,_;return _={next:E(0),throw:E(1),return:E(2)},typeof Symbol=="function"&&(_[Symbol.iterator]=function(){return this}),_;function E(g){return function(S){return w([g,S])}}function w(g){if(o)throw new TypeError("Generator is already executing.");for(;s;)try{if(o=1,l&&(f=g[0]&2?l.return:g[0]?l.throw||((f=l.return)&&f.call(l),0):l.next)&&!(f=f.call(l,g[1])).done)return f;switch(l=0,f&&(g=[g[0]&2,f.value]),g[0]){case 0:case 1:f=g;break;case 4:return s.label++,{value:g[1],done:!1};case 5:s.label++,l=g[1],g=[0];continue;case 7:g=s.ops.pop(),s.trys.pop();continue;default:if(f=s.trys,!(f=f.length>0&&f[f.length-1])&&(g[0]===6||g[0]===2)){s=0;continue}if(g[0]===3&&(!f||g[1]>f[0]&&g[1]<f[3])){s.label=g[1];break}if(g[0]===6&&s.label<f[1]){s.label=f[1],f=g;break}if(f&&s.label<f[2]){s.label=f[2],s.ops.push(g);break}f[2]&&s.ops.pop(),s.trys.pop();continue}g=r.call(i,s)}catch(S){g=[6,S],l=0}finally{o=f=0}if(g[0]&5)throw g[1];return{value:g[0]?g[1]:void 0,done:!0}}},Ci=W&&W.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(W,"__esModule",{value:!0});W.emoji=W.mark=W.replaceTemplate=W.getTemplatekey=W.replaceFun=W.getLang=W.printn=W.checkTemplateFile=W.checkAndReturnTemplateFile=W.yamlLoad=W.getFolderSize=W.getVersion=W.bgRed=W.red=void 0;var ge=Ci(require("path")),Fe=Ci(require("fs")),xu=Ci(pl()),uw=Ci(require("os")),ow=Mc(),bi=sw(At()),Au=bi.default.colors,aw=bi.default.jsyaml,Ti=Hc();W.red=Au.hex("#fd5750");W.bgRed=Au.hex("#000").bgHex("#fd5750");function lw(){return(0,bi.getCoreVersion)()?Ti.name+": "+Ti.version+", @serverless-devs/core: "+(0,bi.getCoreVersion)()+", "+process.platform+"-"+process.arch+", node-"+process.version:Ti.name+": "+Ti.version+", "+process.platform+"-"+process.arch+", node-"+process.version}W.getVersion=lw;function fw(i){return Gc(this,void 0,void 0,function(){function r(l){return Gc(this,void 0,void 0,function(){var f,_;return Wc(this,function(E){switch(E.label){case 0:return f=Fe.default.lstatSync(l),typeof f!="object"?[2]:(s.set(f.ino,f.size),f.isDirectory()?(_=Fe.default.readdirSync(l),typeof _!="object"?[2]:[4,Promise.all(_.map(function(w){return r(ge.default.join(l,w))}))]):[3,2]);case 1:E.sent(),E.label=2;case 2:return[2]}})})}var s,o;return Wc(this,function(l){switch(l.label){case 0:return s=new Map,[4,r(i)];case 1:return l.sent(),o=Array.from(s.values()).reduce(function(f,_){return f+_},0),[2,o]}})})}W.getFolderSize=fw;function Uc(i){var r=Fe.default.readFileSync(i,"utf8");try{return aw.load(r)}catch{if(["-h","--help"].includes(process.argv[2]))return;var s=ge.default.basename(i);new ow.HumanError({errorMessage:s+" format is incorrect",tips:"Please check the configuration of "+s+", Serverless Devs' Yaml specification document can refer to\uFF1A"+Au.underline("https://github.com/Serverless-Devs/Serverless-Devs/blob/master/docs/zh/yaml.md")}),process.exit(1)}}W.yamlLoad=Uc;function mr(i,r){r===void 0&&(r=!1);var s=Fe.default.readFileSync(i,"utf8"),o=r?JSON.parse(s):Uc(i);if(!o)return!1;for(var l in o)if(o[l].Component&&o[l].Provider&&o[l].Properties)return!0;return o.hasOwnProperty("edition")}function Bc(){if(process.env.serverless_devs_temp_template)return process.env.serverless_devs_temp_template;var i=process.cwd(),r=process.argv.includes("-t")?"-t":process.argv.includes("--template")?"--template":null,s=r?process.argv.indexOf(r):-1;if(s!==-1){var o=s+1,l=process.argv[o];if(l&&(l.endsWith(".yaml")||l.endsWith(".yml")||l.endsWith(".json"))){var f=!!l.endsWith(".json");if(Fe.default.existsSync(ge.default.join(i,l))&&mr(ge.default.join(i,l),f)){process.argv.splice(s,2);var _=JSON.parse(process.env.serverless_devs_temp_argv);return _.splice(_.indexOf(r),2),process.env.serverless_devs_temp_argv=JSON.stringify(_),process.env.serverless_devs_temp_template=ge.default.join(i,l),ge.default.join(i,l)}else if(Fe.default.existsSync(l)&&mr(l,f)){process.argv.splice(s,2);var _=JSON.parse(process.env.serverless_devs_temp_argv);return _.splice(_.indexOf(r),2),process.env.serverless_devs_temp_argv=JSON.stringify(_),process.env.serverless_devs_temp_template=l,l}}}return Fe.default.existsSync(ge.default.join(i,"s.yaml"))&&mr(ge.default.join(i,"s.yaml"))?(process.env.serverless_devs_temp_template=ge.default.join(i,"s.yaml"),ge.default.join(i,"s.yaml")):Fe.default.existsSync(ge.default.join(i,"s.yml"))&&mr(ge.default.join(i,"s.yml"))?(process.env.serverless_devs_temp_template=ge.default.join(i,"s.yml"),ge.default.join(i,"s.yml")):Fe.default.existsSync(ge.default.join(i,"s.json"))&&mr(ge.default.join(i,"s.json"),!0)?(process.env.serverless_devs_temp_template=ge.default.join(i,"s.json"),ge.default.join(i,"s.json")):null}W.checkAndReturnTemplateFile=Bc;function Xc(i){return Fe.default.existsSync(i)?i:null}W.checkTemplateFile=Xc;function jc(i,r){r===void 0&&(r=" ");for(var s="",o=0;o<i;o++)s=s+r;return s}W.printn=jc;function zc(){return"en"}W.getLang=zc;function Ou(i,r){var s=/\{\{(.*?)\}\}/g,o=i.match(s);if(o)for(var l=0;l<o.length;l++){var f=o[l].replace(/{{|}}/g,""),_=xu.default.trim(f.split("|")[0]);r[_]&&(i=i.replace(o[l],r[_]))}return i}W.replaceFun=Ou;function Vc(i){var r=/\{\{(.*?)\}\}/g,s=i.match(r);return s?s.filter(function(o){return o}).map(function(o){var l=o.replace(/{{|}}/g,""),f=l.split("|");return{name:xu.default.trim(f[0]),desc:xu.default.trim(f[1])}}):[]}W.getTemplatekey=Vc;function Yc(i,r){i.forEach(function(s){if(Fe.default.existsSync(s)){var o=Fe.default.readFileSync(s,"utf-8"),l=Ou(o,r);Fe.default.writeFileSync(s,l,"utf-8")}})}W.replaceTemplate=Yc;function Kc(i){if(!i)return i;var r=i.slice(-4);return"***********"+r}W.mark=Kc;function cw(i){return uw.default.platform()==="win32"?"":i}W.emoji=cw;W.default={checkAndReturnTemplateFile:Bc,checkTemplateFile:Xc,printn:jc,mark:Kc,getLang:zc,replaceTemplate:Yc,replaceFun:Ou,getTemplatekey:Vc}});"use strict";var Zc=exports&&exports.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(exports,"__esModule",{value:!0});var hw=Zc(hl()),Li=Ii(),pw=Zc(At()),gw=pw.default.colors,dw=`Configure venders account, including Alibaba Cloud, Baidu Cloud, Huawei Cloud, Tencent Cloud, etc.
45
+ `))}return i.prototype.report=function(r){return Gy(this,void 0,void 0,function(){return Wy(this,function(s){return Xy({type:"jsError",content:r.message+"||"+r.stack,traceId:this.traceId}),[2]})})},i}();te.HandleError=tw});var Hc=T((wx,nw)=>{nw.exports={name:"@serverless-devs/s",version:"2.0.95",description:"Serverless devs tool, serverless developer tool, supports Alibaba cloud, AWS, azure, baidu cloud, Huawei cloud, Google cloud and Tencent cloud.",homepage:"https://www.serverless-devs.com",keywords:["serverless","alibaba","tencent","azure","baidu","huawei","google","function","faas","serverless-devs"],publishConfig:{access:"public",registry:"https://registry.npmjs.org"},license:"MIT",repository:{type:"git",url:"https://github.com/Serverless-Devs/Serverless-Devs"},bugs:{url:"https://github.com/Serverless-Devs/Serverless-Devs/issues"},scripts:{prewatch:"rm -rf lib/* && cp -r ./src/daemon ./lib",watch:"tsc -w",test:"npx jest",prebuild:"rm -rf lib/*",build:"tsc && cp -r ./src/daemon ./lib",postbuild:"./shell/postbuild.sh","test:cov":"jest --coverage",lint:"npm run typecheck && f2elint scan -i src",fix:"f2elint fix",typecheck:"npx tsc -p tsconfig.json --noEmit",update:"rm -rf yarn.lock && rm -rf package-lock.json && rm -rf node_modules && yarn",beta:"npm publish --tag=beta"},main:"./lib/index.js",bin:{s:"bin/s"},devDependencies:{"@types/jest":"^27.0.1","@types/lodash":"^4.14.168","@types/node":"^14.0.23","@typescript-eslint/eslint-plugin":"^4.14.1","@typescript-eslint/parser":"^4.14.1","babel-eslint":"^10.1.0",boxen:"^5.0.0",commander:"^6.0.0",dotenv:"^10.0.0",esbuild:"^0.13.6",eslint:"^7.7.0","eslint-config-prettier":"^7.2.0","eslint-plugin-import":"^2.20.1","eslint-plugin-prettier":"^3.1.2",husky:"^4.2.3",inquirer:"^8.2.0","inquirer-autocomplete-prompt":"^1.3.0",jest:"^27.1.0","latest-version":"^5.1.0","lint-staged":"^10.0.8",lodash:"^4.17.20","os-locale":"5.0.0",prettier:"^2.2.1",semver:"^7.3.5","semver-diff":"^3.1.1","ts-jest":"^27.0.1","ts-node":"^9.1.1","tty-table":"^4.1.5",typescript:"^4.1.3"},"lint-staged":{"**/*.{js,jsx,ts}":"f2elint exec eslint"},jest:{coverageDirectory:"coverage",testEnvironment:"node",coverageProvider:"v8",preset:"ts-jest",testMatch:["**/test/**/*test.[jt]s"],setupFilesAfterEnv:["./jest.setup.ts"]},dependencies:{"@serverless-devs/core":"latest"}}});var Ii=T(W=>{"use strict";var rw=W&&W.__createBinding||(Object.create?function(i,r,s,o){o===void 0&&(o=s),Object.defineProperty(i,o,{enumerable:!0,get:function(){return r[s]}})}:function(i,r,s,o){o===void 0&&(o=s),i[o]=r[s]}),iw=W&&W.__setModuleDefault||(Object.create?function(i,r){Object.defineProperty(i,"default",{enumerable:!0,value:r})}:function(i,r){i.default=r}),sw=W&&W.__importStar||function(i){if(i&&i.__esModule)return i;var r={};if(i!=null)for(var s in i)s!=="default"&&Object.prototype.hasOwnProperty.call(i,s)&&rw(r,i,s);return iw(r,i),r},Gc=W&&W.__awaiter||function(i,r,s,o){function l(f){return f instanceof s?f:new s(function(_){_(f)})}return new(s||(s=Promise))(function(f,_){function E(S){try{g(o.next(S))}catch(C){_(C)}}function w(S){try{g(o.throw(S))}catch(C){_(C)}}function g(S){S.done?f(S.value):l(S.value).then(E,w)}g((o=o.apply(i,r||[])).next())})},Wc=W&&W.__generator||function(i,r){var s={label:0,sent:function(){if(f[0]&1)throw f[1];return f[1]},trys:[],ops:[]},o,l,f,_;return _={next:E(0),throw:E(1),return:E(2)},typeof Symbol=="function"&&(_[Symbol.iterator]=function(){return this}),_;function E(g){return function(S){return w([g,S])}}function w(g){if(o)throw new TypeError("Generator is already executing.");for(;s;)try{if(o=1,l&&(f=g[0]&2?l.return:g[0]?l.throw||((f=l.return)&&f.call(l),0):l.next)&&!(f=f.call(l,g[1])).done)return f;switch(l=0,f&&(g=[g[0]&2,f.value]),g[0]){case 0:case 1:f=g;break;case 4:return s.label++,{value:g[1],done:!1};case 5:s.label++,l=g[1],g=[0];continue;case 7:g=s.ops.pop(),s.trys.pop();continue;default:if(f=s.trys,!(f=f.length>0&&f[f.length-1])&&(g[0]===6||g[0]===2)){s=0;continue}if(g[0]===3&&(!f||g[1]>f[0]&&g[1]<f[3])){s.label=g[1];break}if(g[0]===6&&s.label<f[1]){s.label=f[1],f=g;break}if(f&&s.label<f[2]){s.label=f[2],s.ops.push(g);break}f[2]&&s.ops.pop(),s.trys.pop();continue}g=r.call(i,s)}catch(S){g=[6,S],l=0}finally{o=f=0}if(g[0]&5)throw g[1];return{value:g[0]?g[1]:void 0,done:!0}}},Ci=W&&W.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(W,"__esModule",{value:!0});W.emoji=W.mark=W.replaceTemplate=W.getTemplatekey=W.replaceFun=W.getLang=W.printn=W.checkTemplateFile=W.checkAndReturnTemplateFile=W.yamlLoad=W.getFolderSize=W.getVersion=W.bgRed=W.red=void 0;var ge=Ci(require("path")),Fe=Ci(require("fs")),xu=Ci(pl()),uw=Ci(require("os")),ow=Mc(),bi=sw(At()),Au=bi.default.colors,aw=bi.default.jsyaml,Ti=Hc();W.red=Au.hex("#fd5750");W.bgRed=Au.hex("#000").bgHex("#fd5750");function lw(){return(0,bi.getCoreVersion)()?Ti.name+": "+Ti.version+", @serverless-devs/core: "+(0,bi.getCoreVersion)()+", "+process.platform+"-"+process.arch+", node-"+process.version:Ti.name+": "+Ti.version+", "+process.platform+"-"+process.arch+", node-"+process.version}W.getVersion=lw;function fw(i){return Gc(this,void 0,void 0,function(){function r(l){return Gc(this,void 0,void 0,function(){var f,_;return Wc(this,function(E){switch(E.label){case 0:return f=Fe.default.lstatSync(l),typeof f!="object"?[2]:(s.set(f.ino,f.size),f.isDirectory()?(_=Fe.default.readdirSync(l),typeof _!="object"?[2]:[4,Promise.all(_.map(function(w){return r(ge.default.join(l,w))}))]):[3,2]);case 1:E.sent(),E.label=2;case 2:return[2]}})})}var s,o;return Wc(this,function(l){switch(l.label){case 0:return s=new Map,[4,r(i)];case 1:return l.sent(),o=Array.from(s.values()).reduce(function(f,_){return f+_},0),[2,o]}})})}W.getFolderSize=fw;function Uc(i){var r=Fe.default.readFileSync(i,"utf8");try{return aw.load(r)}catch{if(["-h","--help"].includes(process.argv[2]))return;var s=ge.default.basename(i);new ow.HumanError({errorMessage:s+" format is incorrect",tips:"Please check the configuration of "+s+", Serverless Devs' Yaml specification document can refer to\uFF1A"+Au.underline("https://github.com/Serverless-Devs/Serverless-Devs/blob/master/docs/zh/yaml.md")}),process.exit(1)}}W.yamlLoad=Uc;function mr(i,r){r===void 0&&(r=!1);var s=Fe.default.readFileSync(i,"utf8"),o=r?JSON.parse(s):Uc(i);if(!o)return!1;for(var l in o)if(o[l].Component&&o[l].Provider&&o[l].Properties)return!0;return o.hasOwnProperty("edition")}function Bc(){if(process.env.serverless_devs_temp_template)return process.env.serverless_devs_temp_template;var i=process.cwd(),r=process.argv.includes("-t")?"-t":process.argv.includes("--template")?"--template":null,s=r?process.argv.indexOf(r):-1;if(s!==-1){var o=s+1,l=process.argv[o];if(l&&(l.endsWith(".yaml")||l.endsWith(".yml")||l.endsWith(".json"))){var f=!!l.endsWith(".json");if(Fe.default.existsSync(ge.default.join(i,l))&&mr(ge.default.join(i,l),f)){process.argv.splice(s,2);var _=JSON.parse(process.env.serverless_devs_temp_argv);return _.splice(_.indexOf(r),2),process.env.serverless_devs_temp_argv=JSON.stringify(_),process.env.serverless_devs_temp_template=ge.default.join(i,l),ge.default.join(i,l)}else if(Fe.default.existsSync(l)&&mr(l,f)){process.argv.splice(s,2);var _=JSON.parse(process.env.serverless_devs_temp_argv);return _.splice(_.indexOf(r),2),process.env.serverless_devs_temp_argv=JSON.stringify(_),process.env.serverless_devs_temp_template=l,l}}}return Fe.default.existsSync(ge.default.join(i,"s.yaml"))&&mr(ge.default.join(i,"s.yaml"))?(process.env.serverless_devs_temp_template=ge.default.join(i,"s.yaml"),ge.default.join(i,"s.yaml")):Fe.default.existsSync(ge.default.join(i,"s.yml"))&&mr(ge.default.join(i,"s.yml"))?(process.env.serverless_devs_temp_template=ge.default.join(i,"s.yml"),ge.default.join(i,"s.yml")):Fe.default.existsSync(ge.default.join(i,"s.json"))&&mr(ge.default.join(i,"s.json"),!0)?(process.env.serverless_devs_temp_template=ge.default.join(i,"s.json"),ge.default.join(i,"s.json")):null}W.checkAndReturnTemplateFile=Bc;function Xc(i){return Fe.default.existsSync(i)?i:null}W.checkTemplateFile=Xc;function jc(i,r){r===void 0&&(r=" ");for(var s="",o=0;o<i;o++)s=s+r;return s}W.printn=jc;function zc(){return"en"}W.getLang=zc;function Ou(i,r){var s=/\{\{(.*?)\}\}/g,o=i.match(s);if(o)for(var l=0;l<o.length;l++){var f=o[l].replace(/{{|}}/g,""),_=xu.default.trim(f.split("|")[0]);r[_]&&(i=i.replace(o[l],r[_]))}return i}W.replaceFun=Ou;function Vc(i){var r=/\{\{(.*?)\}\}/g,s=i.match(r);return s?s.filter(function(o){return o}).map(function(o){var l=o.replace(/{{|}}/g,""),f=l.split("|");return{name:xu.default.trim(f[0]),desc:xu.default.trim(f[1])}}):[]}W.getTemplatekey=Vc;function Yc(i,r){i.forEach(function(s){if(Fe.default.existsSync(s)){var o=Fe.default.readFileSync(s,"utf-8"),l=Ou(o,r);Fe.default.writeFileSync(s,l,"utf-8")}})}W.replaceTemplate=Yc;function Kc(i){if(!i)return i;var r=i.slice(-4);return"***********"+r}W.mark=Kc;function cw(i){return uw.default.platform()==="win32"?"":i}W.emoji=cw;W.default={checkAndReturnTemplateFile:Bc,checkTemplateFile:Xc,printn:jc,mark:Kc,getLang:zc,replaceTemplate:Yc,replaceFun:Ou,getTemplatekey:Vc}});"use strict";var Zc=exports&&exports.__importDefault||function(i){return i&&i.__esModule?i:{default:i}};Object.defineProperty(exports,"__esModule",{value:!0});var hw=Zc(hl()),Li=Ii(),pw=Zc(At()),gw=pw.default.colors,dw=`Configure venders account, including Alibaba Cloud, Baidu Cloud, Huawei Cloud, Tencent Cloud, etc.
46
46
 
47
47
  `+(0,Li.emoji)("\u{1F4D6}")+" Document: "+gw.underline("https://github.com/Serverless-Devs/Serverless-Devs/tree/master/docs/zh/command/config.md");hw.default.name("s config").usage("[commands] [options]").helpOption("-h, --help","Display help for command").command("add",(0,Li.emoji)("\u2795")+" Add an account").command("get",(0,Li.emoji)("\u2714\uFE0F")+" Get accounts").command("delete",(0,Li.emoji)("\u2716\uFE0F")+" Delete an account").description(dw).addHelpCommand(!1).parse(process.argv);
48
48
  /**
@@ -7,5 +7,6 @@ export declare class CommandManager {
7
7
  protected deployParams: any;
8
8
  constructor(templateFile: string, method: string, customerCommandName?: string, params?: any);
9
9
  assemblyProjectConfig(parse: Parse, projectName: string, parsedObj: any): Promise<ComponentConfig>;
10
+ warnEnvironmentVariables(realVariables: any): Promise<void>;
10
11
  init(): Promise<void>;
11
12
  }
@@ -48,6 +48,7 @@ var common_1 = require("../../utils/common");
48
48
  var core_1 = __importDefault(require("../../utils/core"));
49
49
  var colors = core_1.default.colors;
50
50
  var error_1 = require("../../error");
51
+ var lodash_1 = require("lodash");
51
52
  var CommandManager = /** @class */ (function () {
52
53
  function CommandManager(templateFile, method, customerCommandName, params) {
53
54
  this.templateFile = templateFile;
@@ -74,28 +75,54 @@ var CommandManager = /** @class */ (function () {
74
75
  });
75
76
  });
76
77
  };
78
+ CommandManager.prototype.warnEnvironmentVariables = function (realVariables) {
79
+ return __awaiter(this, void 0, void 0, function () {
80
+ var services, envObj, key, environmentVariables, keys, key;
81
+ return __generator(this, function (_a) {
82
+ services = realVariables === null || realVariables === void 0 ? void 0 : realVariables.services;
83
+ if ((0, lodash_1.isEmpty)(services))
84
+ return [2 /*return*/];
85
+ envObj = {};
86
+ for (key in services) {
87
+ environmentVariables = (0, lodash_1.get)(services, [key, 'props', 'function', 'environmentVariables'], {});
88
+ envObj = Object.assign({}, envObj, environmentVariables);
89
+ }
90
+ keys = [];
91
+ for (key in envObj) {
92
+ if ((0, lodash_1.isNil)(envObj[key])) {
93
+ keys.push(key);
94
+ }
95
+ }
96
+ keys.length > 0 && utils_1.logger.warning("The value of environment variable [" + keys.join(', ') + "] is undefined.");
97
+ return [2 /*return*/];
98
+ });
99
+ });
100
+ };
77
101
  CommandManager.prototype.init = function () {
78
102
  return __awaiter(this, void 0, void 0, function () {
79
103
  var templateFile, outPutData, parse, parsedObj, realVariables, analysis, executeOrderList, tempCustomerCommandName, projectConfig, componentExecute, tempResult, params, componentList, tempResult, item, outResult, error_2;
80
104
  return __generator(this, function (_a) {
81
105
  switch (_a.label) {
82
106
  case 0:
83
- _a.trys.push([0, 9, , 11]);
107
+ _a.trys.push([0, 10, , 12]);
84
108
  utils_1.logger.info('Start ...');
85
109
  templateFile = (0, common_1.checkTemplateFile)(this.templateFile);
86
- if (!templateFile) return [3 /*break*/, 7];
110
+ if (!templateFile) return [3 /*break*/, 8];
87
111
  outPutData = {};
88
112
  parse = new specification_1.Parse(templateFile);
89
113
  parsedObj = parse.getOriginalParsedObj();
90
114
  return [4 /*yield*/, parse.getRealVariables(parsedObj)];
91
115
  case 1:
92
116
  realVariables = _a.sent();
117
+ return [4 /*yield*/, this.warnEnvironmentVariables(realVariables)];
118
+ case 2:
119
+ _a.sent();
93
120
  analysis = new specification_1.Analysis(realVariables, parse.dependenciesMap);
94
121
  executeOrderList = analysis.getProjectOrder();
95
- if (!(this.customerCommandName || executeOrderList.length === 1)) return [3 /*break*/, 4];
122
+ if (!(this.customerCommandName || executeOrderList.length === 1)) return [3 /*break*/, 5];
96
123
  tempCustomerCommandName = executeOrderList[0];
97
124
  return [4 /*yield*/, this.assemblyProjectConfig(parse, this.customerCommandName || tempCustomerCommandName, parsedObj)];
98
- case 2:
125
+ case 3:
99
126
  projectConfig = _a.sent();
100
127
  if (process.env['serverless_devs_temp_access']) {
101
128
  projectConfig.Access = process.env['serverless_devs_temp_access'];
@@ -108,47 +135,47 @@ var CommandManager = /** @class */ (function () {
108
135
  customerCommandName: this.customerCommandName,
109
136
  });
110
137
  return [4 /*yield*/, componentExecute.init()];
111
- case 3:
138
+ case 4:
112
139
  tempResult = _a.sent();
113
140
  if (tempResult) {
114
141
  outPutData[projectConfig.ProjectName] = tempResult;
115
142
  }
116
- return [3 /*break*/, 6];
117
- case 4:
143
+ return [3 /*break*/, 7];
144
+ case 5:
118
145
  params = this.deployParams || '';
119
146
  utils_1.logger.info("It is detected that your project has the following projects < " + executeOrderList.join(',') + " > to be execute");
120
147
  componentList = (0, component_1.generateSynchronizeComponentExeList)({ list: executeOrderList, parse: parse, parsedObj: parsedObj, method: this.method, params: params }, this.assemblyProjectConfig.bind(this));
121
148
  return [4 /*yield*/, (0, component_1.synchronizeExecuteComponentList)(componentList)];
122
- case 5:
149
+ case 6:
123
150
  tempResult = _a.sent();
124
151
  for (item in tempResult) {
125
152
  if (executeOrderList.includes(item) && tempResult[item]) {
126
153
  outPutData[item] = tempResult[item];
127
154
  }
128
155
  }
129
- _a.label = 6;
130
- case 6:
156
+ _a.label = 7;
157
+ case 7:
131
158
  outResult = JSON.parse(JSON.stringify(outPutData));
132
159
  Object.keys(outPutData).length === 0
133
160
  ? utils_1.logger.success("End of method: " + this.method)
134
161
  : utils_1.logger.output(outResult);
135
- return [3 /*break*/, 8];
136
- case 7:
162
+ return [3 /*break*/, 9];
163
+ case 8:
137
164
  utils_1.logger.error("Failed to execute:\n\n " + (0, common_1.emoji)('❌') + " Message: Cannot find s.yaml / s.yml / template.yaml / template.yml file, please check the directory " + this.templateFile + "\n " + (0, common_1.emoji)('🧭') + " If you want to use Serverless Devs, you should have a s.yaml or use [s cli] command.\n " + (0, common_1.emoji)('1️⃣') + " Yaml document: " + colors.underline('https://github.com/Serverless-Devs/docs/blob/master/zh/yaml.md') + "\n " + (0, common_1.emoji)('2️⃣') + " Cli document: [s cli -h]\n " + (0, common_1.emoji)('😈') + " If you have questions, please tell us: " + colors.underline('https://github.com/Serverless-Devs/Serverless-Devs/issues') + "\n");
138
165
  process.exit(1);
139
- _a.label = 8;
140
- case 8: return [3 /*break*/, 11];
141
- case 9:
166
+ _a.label = 9;
167
+ case 9: return [3 /*break*/, 12];
168
+ case 10:
142
169
  error_2 = _a.sent();
143
170
  return [4 /*yield*/, new error_1.HandleError({
144
171
  error: error_2,
145
172
  prefix: 'Failed to execute:',
146
173
  }).report(error_2)];
147
- case 10:
174
+ case 11:
148
175
  _a.sent();
149
176
  process.exit(1);
150
- return [3 /*break*/, 11];
151
- case 11: return [2 /*return*/];
177
+ return [3 /*break*/, 12];
178
+ case 12: return [2 /*return*/];
152
179
  }
153
180
  });
154
181
  });
@@ -156,4 +183,4 @@ var CommandManager = /** @class */ (function () {
156
183
  return CommandManager;
157
184
  }());
158
185
  exports.CommandManager = CommandManager;
159
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1tYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvcmUvY29tbWFuZC9jb21tYW5kLW1hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEscURBQXNEO0FBQ3RELHVEQUErRDtBQUMvRCxxQ0FBcUM7QUFDckMsMENBS3NCO0FBQ3RCLDZDQUE4RDtBQUM5RCwwREFBb0M7QUFDNUIsSUFBQSxNQUFNLEdBQUssY0FBSSxPQUFULENBQVU7QUFDeEIscUNBQTBDO0FBRTFDO0lBR0Usd0JBQ1ksWUFBb0IsRUFDcEIsTUFBYyxFQUNkLG1CQUE0QixFQUN0QyxNQUFZO1FBSEYsaUJBQVksR0FBWixZQUFZLENBQVE7UUFDcEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBUztRQUd0QyxJQUFJLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQztJQUM3QixDQUFDO0lBRUssOENBQXFCLEdBQTNCLFVBQTRCLEtBQVksRUFBRSxXQUFtQixFQUFFLFNBQWM7Ozs7OzRCQUNyRCxxQkFBTSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLEVBQUE7O3dCQUF2RCxhQUFhLEdBQUcsU0FBdUM7d0JBQ3ZELGFBQWEsR0FBUSxJQUFBLDBCQUFnQixFQUFDLGFBQWEsRUFBRSxXQUFXLENBQUMsQ0FBQzt3QkFDeEUsYUFBYSxDQUFDLE9BQU8sR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsWUFBWTt3QkFDeEQsYUFBYSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7d0JBQ3hDLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTs0QkFDckIsYUFBYSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO3lCQUMxQzt3QkFDRCxzQkFBTyxhQUFhLEVBQUM7Ozs7S0FDdEI7SUFFSyw2QkFBSSxHQUFWOzs7Ozs7O3dCQUVJLGNBQU0sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7d0JBQ25CLFlBQVksR0FBRyxJQUFBLDBCQUFpQixFQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQzs2QkFDdEQsWUFBWSxFQUFaLHdCQUFZO3dCQUNSLFVBQVUsR0FBUSxFQUFFLENBQUM7d0JBQ3JCLEtBQUssR0FBRyxJQUFJLHFCQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7d0JBQ2hDLFNBQVMsR0FBRyxLQUFLLENBQUMsb0JBQW9CLEVBQUUsQ0FBQzt3QkFDekIscUJBQU0sS0FBSyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxFQUFBOzt3QkFBdkQsYUFBYSxHQUFHLFNBQXVDO3dCQUN2RCxRQUFRLEdBQUcsSUFBSSx3QkFBUSxDQUFDLGFBQWEsRUFBRSxLQUFLLENBQUMsZUFBZSxDQUFDLENBQUM7d0JBQzlELGdCQUFnQixHQUFHLFFBQVEsQ0FBQyxlQUFlLEVBQUUsQ0FBQzs2QkFDaEQsQ0FBQSxJQUFJLENBQUMsbUJBQW1CLElBQUksZ0JBQWdCLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQSxFQUF6RCx3QkFBeUQ7d0JBQ3JELHVCQUF1QixHQUFHLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxDQUFDO3dCQUM5QixxQkFBTSxJQUFJLENBQUMscUJBQXFCLENBQ3BELEtBQUssRUFDTCxJQUFJLENBQUMsbUJBQW1CLElBQUksdUJBQXVCLEVBQ25ELFNBQVMsQ0FDVixFQUFBOzt3QkFKSyxhQUFhLEdBQUcsU0FJckI7d0JBQ0QsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLDZCQUE2QixDQUFDLEVBQUU7NEJBQzlDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDOzRCQUNsRSxhQUFhLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsNkJBQTZCLENBQUMsQ0FBQzt5QkFDbkU7d0JBQ0ssZ0JBQWdCLEdBQUcsSUFBSSw0QkFBZ0IsQ0FBQzs0QkFDNUMsZUFBZSxFQUFFLGFBQWE7NEJBQzlCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTs0QkFDbkIsT0FBTyxFQUFFLFNBQVMsQ0FBQyxPQUFPOzRCQUMxQixtQkFBbUIsRUFBRSxJQUFJLENBQUMsbUJBQW1CO3lCQUM5QyxDQUFDLENBQUM7d0JBQ2dCLHFCQUFNLGdCQUFnQixDQUFDLElBQUksRUFBRSxFQUFBOzt3QkFBMUMsVUFBVSxHQUFHLFNBQTZCO3dCQUNoRCxJQUFJLFVBQVUsRUFBRTs0QkFDZCxVQUFVLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxHQUFHLFVBQVUsQ0FBQzt5QkFDcEQ7Ozt3QkFFSyxNQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksSUFBSSxFQUFFLENBQUM7d0JBQ3ZDLGNBQU0sQ0FBQyxJQUFJLENBQ1QsbUVBQWlFLGdCQUFnQixDQUFDLElBQUksQ0FDcEYsR0FBRyxDQUNKLHFCQUFrQixDQUNwQixDQUFDO3dCQUVJLGFBQWEsR0FBRyxJQUFBLCtDQUFtQyxFQUN2RCxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxLQUFLLE9BQUEsRUFBRSxTQUFTLFdBQUEsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLFFBQUEsRUFBRSxFQUN6RSxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUN0QyxDQUFDO3dCQUNpQixxQkFBTSxJQUFBLDJDQUErQixFQUFDLGFBQWEsQ0FBQyxFQUFBOzt3QkFBakUsVUFBVSxHQUFHLFNBQW9EO3dCQUN2RSxLQUFXLElBQUksSUFBSSxVQUFVLEVBQUU7NEJBQzdCLElBQUksZ0JBQWdCLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRTtnQ0FDdkQsVUFBVSxDQUFDLElBQUksQ0FBQyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQzs2QkFDckM7eUJBQ0Y7Ozt3QkFFRyxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7d0JBQ3pELE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUM7NEJBQ2xDLENBQUMsQ0FBQyxjQUFNLENBQUMsT0FBTyxDQUFDLG9CQUFrQixJQUFJLENBQUMsTUFBUSxDQUFDOzRCQUNqRCxDQUFDLENBQUMsY0FBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQzs7O3dCQUU3QixjQUFNLENBQUMsS0FBSyxDQUFDLDZCQUNqQixJQUFBLGNBQUssRUFBQyxHQUFHLENBQUMsNkdBQ0osSUFBSSxDQUFDLFlBQVksWUFFdkIsSUFBQSxjQUFLLEVBQUMsSUFBSSxDQUFDLHFHQUNQLElBQUEsY0FBSyxFQUFDLEtBQUssQ0FBQyx3QkFBbUIsTUFBTSxDQUFDLFNBQVMsQ0FDN0MsZ0VBQWdFLENBQ2pFLGdCQUNELElBQUEsY0FBSyxFQUFDLEtBQUssQ0FBQyxxQ0FDaEIsSUFBQSxjQUFLLEVBQUMsSUFBSSxDQUFDLGdEQUEyQyxNQUFNLENBQUMsU0FBUyxDQUNoRSwyREFBMkQsQ0FDNUQsT0FBSSxDQUFDLENBQUM7d0JBQ1AsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzs7Ozs7d0JBR2xCLHFCQUFNLElBQUksbUJBQVcsQ0FBQztnQ0FDcEIsS0FBSyxTQUFBO2dDQUNMLE1BQU0sRUFBRSxvQkFBb0I7NkJBQzdCLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBSyxDQUFDLEVBQUE7O3dCQUhoQixTQUdnQixDQUFDO3dCQUNqQixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDOzs7Ozs7S0FFbkI7SUFDSCxxQkFBQztBQUFELENBQUMsQUFyR0QsSUFxR0M7QUFyR1ksd0NBQWMifQ==
186
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1tYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvcmUvY29tbWFuZC9jb21tYW5kLW1hbmFnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEscURBQXNEO0FBQ3RELHVEQUErRDtBQUMvRCxxQ0FBcUM7QUFDckMsMENBS3NCO0FBQ3RCLDZDQUE4RDtBQUM5RCwwREFBb0M7QUFDNUIsSUFBQSxNQUFNLEdBQUssY0FBSSxPQUFULENBQVU7QUFDeEIscUNBQTBDO0FBQzFDLGlDQUE2QztBQUU3QztJQUdFLHdCQUNZLFlBQW9CLEVBQ3BCLE1BQWMsRUFDZCxtQkFBNEIsRUFDdEMsTUFBWTtRQUhGLGlCQUFZLEdBQVosWUFBWSxDQUFRO1FBQ3BCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQVM7UUFHdEMsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUM7SUFDN0IsQ0FBQztJQUVLLDhDQUFxQixHQUEzQixVQUE0QixLQUFZLEVBQUUsV0FBbUIsRUFBRSxTQUFjOzs7Ozs0QkFDckQscUJBQU0sS0FBSyxDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxFQUFBOzt3QkFBdkQsYUFBYSxHQUFHLFNBQXVDO3dCQUN2RCxhQUFhLEdBQVEsSUFBQSwwQkFBZ0IsRUFBQyxhQUFhLEVBQUUsV0FBVyxDQUFDLENBQUM7d0JBQ3hFLGFBQWEsQ0FBQyxPQUFPLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLFlBQVk7d0JBQ3hELGFBQWEsQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO3dCQUN4QyxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7NEJBQ3JCLGFBQWEsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQzt5QkFDMUM7d0JBQ0Qsc0JBQU8sYUFBYSxFQUFDOzs7O0tB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