FC-API组件是一款基于Serverless Devs的阿里云函数计算API操作工具,通过该工具,开发者可以直接通过命令行进行函数计算相关API的使用:
- 查询某些列表,例如服务列表,函数列表,触发器列表,域名列表.....
- 查询详情,查询服务详情,函数详情,版本详情......
- 删除某些资源
- 发布某些资源,例如版本,别名等......
由于该组件是直接针对API进行操作,所以该组件相对来说所提供的是极其原子的能力,在对该组件使用的过程中,完全可以参考接口所对应的API文档。
该组件的应用场景相对来说比较明确:
- 自动化流程:该组件是纯粹的命令行工具,无需依赖Yaml即可使用,所以在使用的过程中,可以通过参数的传递实现某些功能,而且这些功能相对来说都是原子性的,更容易做权限控制和自动化流程,例如更新函数代码、更新函数配置、更新服务、创建触发器、更新别名等操作都是可以通过单个指令直接实现;
- 函数管理:该组件是基于阿里云函数计算API的命令行工具,具备已经的函数管理能力,包括查看服务列表,查看函数列表以及查看触发器列表,同时也支持这些能力的更新、删除等操作;
该组件,可以直接在安装Serverless Devs开发者工具之后,通过cli
方式进行唤醒,例如在命令行中执行s cli fc-api -h
即可获得相关的帮助文档。
为了便于自动化,或者在使用过程中更加简单,轻松,该组件支持多密钥配置以及默认值配置。
以获取cn-hangzhou
区服务列表为例,我们可以通过s cli fc-api listServices --region cn-hangzhou -a <你的密钥别名>
进行获取,此时开发者可以通过指定不同账号的别名,获取不同账号下cn-hangzhou
区的服务列表。
除了密钥部分,该组件提供了set
方法,可以通过s cli fc-api set
进行部分参数的默认值设定,例如:s cli fc-api set access demo
即将默认密钥别名设置为demo
,通过s cli fc-api set region cn-beijing
即将默认地区别名设置为cn-beijing
,此时当我们再查询demo
账号下cn-beijing
地区的函数列表时,可以是s cli fc-api listServices
除了access
和region
之外,系统还支持serviceName
和functionName
的设定。当然使用者也可以通过参数的形式进行默认值的设定,例如:s cli fc-api set --region cn-beijing
等同于s cli fc-api set region cn-beijing
,当然也可以通过参数传递方法设定多个默认参数,例如:s cli fc-api set --region cn-beijing --serviceName defaultService --functionName defaultFunction
如果账号中已经配置了
default
密钥信息,那么在使用的时候,如果没有设置默认密钥信息和指定密钥信息,系统将会使用default
作为默认密钥进行相关操作。
目前,该工具已经支持包括创建函数、创建服务、创建触发器等在内的三十余个接口:
- createAlias : 创建别名
- createAliasWithNewVersion : 创建别名通过最新版本
- createCustomDomain : 创建自定义域名
- createFunction : 创建函数
- createService : 创建服务
- createTrigger : 创建触发器
- deleteAlias : 删除别名
- deleteCustomDomain : 删除自定义域名
- deleteFunction : 删除函数
- deleteFunctionAsyncConfig : 删除函数异步配置
- deleteService : 删除服务
- deleteTrigger : 删除触发器
- deleteVersion : 删除版本
- getAlias : 获取 alias 信息
- getCustomDomain : 获取自定义域名信息
- getFunction : 获取函数配置信息
- getFunctionAsyncConfig : 获取函数异步调用配置信
- getFunctionCode : 获取函数 Code 信息
- getProvisionConfig : 获取预留配置信息
- getService : 获取服务配置信息
- getTrigger : 获取触发器配置信息
- invokeFunction : 调用执行函数
- listAliases : 查询别名列表
- listCustomDomains : 查询自定义域名列表
- listFunctions : 查询函数列表
- listProvisionConfigs : 查询预留配置列表
- listServices : 查询服务列表
- listTriggers : 查询触发器列表
- listVersions : 查询版本列表
- publishVersion : 创建版本
- putProvisionConfig : 预留配置
- updateAlias : 更新别名
- updateAliasWithNewVersion : 更新别名通过最新版本
- updateCustomDomain : 更新自定义域名
- updateFunction : 更新函数
- updateService : 更新服务配置
- updateTrigger : 更新触发器
- appendRoutes : 追加路径配置