【尝鲜】全新SCFCLI帮你快速部署自己的云函数

2019-08-08 15:46:12 浏览数 (1)

SCFCLI想必很多小伙伴都知道了,也都用过了,作为一个可以提高开发者效率的工具,CLI还是很有价值的。本次给大家介绍一下,新版SCFCLI增加的有趣的功能和优化:

介绍

1:Deploy功能优化

1: 部署可以选择默认COS

只需要在设置的时候,设置using-cos就可以,当然也可以scf configure set --using-cos y来直接设置:

选择之后可以在接下来的部署中,默认上传代码到你的cos,提高部署速度:

就算设置了cos,在某次Deploy时,不想使用cos,也可以选择不通过cos部署,增加--without-cos:

想自定义COS也可以:--cos-bucket:

(由于没有这个cos,所以上传失败)

在我们日常使用过程中,可能会存在部署同样一段代码的情况,假如说,我部署了A代码,又部署了B代码,之后,我想重新部署A代码,传统方法,是可以再次上传A代码,如果Package比较大的情况下,就比较难受了,而新版本的cli经过测试,部署130M的Package首次部署使用25s,第二次部署了同样的文件,用了2s。

附带COS的相关计费链接:

免费额度:https://cloud.tencent.com/document/product/436/6240

计费概述:https://cloud.tencent.com/document/product/436/16871

计费方法:https://cloud.tencent.com/document/product/436/36522

https://cloud.tencent.com/document/product/436/36523

产品定价:https://cloud.tencent.com/document/product/436/6239

2:部署历史版本

我们部署了代码,很可能出现问题,需要恢复历史版本,而新版本的scfcli可以部署历史版本,在大家使用了using-cos之后,可以通过deploy的参数--history来部署历史版本:

此时选择一个历史版本,就可以直接实现文档回滚:

3:打包功能优化

上一版的SCFCLI在打包的时候会把用户目录下的全部文件打包,新版本的SCFCLI在这里也做了重点优化,可以直接指定ZIP,指定某文件,并且打包的时候会默认的去除掉.git等隐藏目录,并且在deploy之后,会默认删除之前的打包信息,Yaml文件可以这样:

2: 新增Delete功能

原先的SCFCLI不支持Delete功能,现在大家可以轻松自在在scfcli上面使用:

只需要输入scf delete --help就可以看到使用方法和参数描述哦!

3:新增List功能

我想要查看云函数有哪些内容?我部署了那些函数,怎么办?原先是需要去控制台挨个区域看,挨个namespace看,现在不需要了,只需要通过List指令,就可以实现:

同样可以通过scf的--help来查看所有用法:scf list --help

4: 帮助文档的优化

上面的很多说明,都是让大家使用--help来查看帮助,那么--help在该版本中有哪些大的优化呢?全局的帮助文档优化,在任何指令下都可以--help查看帮助:

在指令页面可以进行例子查看:

每个主要的指令,都会有指令的描述以及使用例子,同时规范了参数描述。

5:API网关部分

现有SCFCLI在使用API网关的时候每次都需要新建,如果不想新建,就需要注释配置文件或者使用--skip-event,这样让很多用户头疼,新版本的SCFCLI在API网关部分增加了ServiceId字段:

有了这个字段,大家可以在使用的时候直接选择绑定已有的网关,如果新建了网关之后,系统会进行提示:

把对应的网关ID天蝎上就可以避免下次创建。这样一个简单的字段增加,给小伙伴们带来了两个优秀的体验:

1: 可以绑定现有的API网关,不需要新建

2: 可以保证现有网关形态,不会每次新建

6:输出信息优化

有心的小伙伴应该已经看到了,这次更新版本,最大变化就是整个UI的变化:

在我们使用云函数的时候,不同颜色会有不同的表达:

同时,在Deploy之后,大家不用打开网页看云函数信息,而是可以通过控制台直接看到:

实验

Hello world

第一个实验以Hello World为例:

通过帮助查看init创建指令:

scf init --help

根据例子创建Python语言的hello world:

scf init --runtime python3.6

按照提示:cd hello_world 进行项目编辑

修改代码和配置网关:

网关这里要用,我不想新建网关,而是想要用已经有的一个API网关:

填写好serviceeId:

然后保存退出,Deploy:

部署之后,输出函数信息:

打开API网关中subDomain:

部署成功!

查看函数列表

只需要输入

scf list

删除函数

只需要输入要删除的函数相关信息

scf delete --name hello_world --region ap-shanghai --namespace default

更多功能,等待各位小伙伴自行挖掘哦!

0 人点赞