前言

如果不想看文档, 建议直接看视频(大约15分钟):

readme 中有图片的话, 建议使用这个图床: https://tps.alibaba-inc.com/, 如果有权限的话

1. 初始化一个 Serverless Devs 的应用到本地

参考:

2. 在本地这个初始化的应用完成具体的开发

1. 主要修改 publish.yaml, 可以参考下 https://github.com/devsapp/start-word2pdf/blob/main/publish.yaml , 修改成自己需要的

2. 控制台应用中心部署您应用需要的权限如下图定义:

image.png image.png 比如这个 word2pdf 只是涉及到函数的创建,所以 publish.yaml Service 要求的权限是 AliyunFCFullAccess, 那个应用中心会引导用户完成 AliyunFCServerlessDevsRole 的授权, 从而应用中心能使用这个 role 完成对您应用的 s deploy

3. publish.yaml 参数的定义和 s.yaml 是对应的, 这两个是一起配合的, 让用户填写, 最后生成具体的 s.yaml

image.png image.png

比如你应用发布以后, 使用 s init 你的应用, 就会出现如下图交互式填写参数(控制台应用中心同理): image.png

4. 输入 s cli registry login, 完成个人 github 账户授权登录

5. 输入 s cli registry publish, 完成应用的发布

6. 测试应用

如果处于开发期间, 可以将将 publish.yaml 中的 version 改成 dev, dev 版本是可以重复发布的, 发布成功后, 可以使用 cli 模式测试: s init xxx@dev, 其中 xxx 是你应用的名字

等您测试 OK 后, 将 version 改成正式的 release 版本, 发布, 然后再测试下 cli 模式和应用中心部署模式

  • CLI 模式:s init 的模式, s init xxx, xxx 是你应用的名字
  • 控制台应用中心: https://fcnext.console.aliyun.com/applications/create?template=xxx, xxx 是你应用的名字(最好先清空 AliyunFCServerlessDevsRole 的 policy, 测试您在publish.yaml 中定义的 Service/Auth 的权限是正确的, 能保证应用中心使用这个 role 完成这个应用的 s deploy)

部署成功后, 再看看具体效果是不是符合您的预期

  • 如果模版详情在函数计算控制台应用中心显示异常, http://www.devsapp.cn/details.html?name=alireadme 请使用这个 alireadme 来编写校验, 保证在控制台显示符合要求

  • 如果应用有问题,fix 后, 直接修改 publish.yaml 中的 version 升一下, 重新 publish 即可, s init 和 控制台应用中心默认会使用最大最新的版本

7. 上线到控制台应用中心的 Tab

填写这个表单就好: https://survey.aliyun.com/apps/zhiliao/YdBrsSK0f

参考

在 GitHub 上编辑本页面 更新时间: Fri, Mar 22, 2024