概述
配置函数计算 FC
首先介绍在阿里云函数计算一侧需要进行的配置
创建函数
首先在阿里云创建好函数,具体步骤请参考阿里云文档,这里不再赘述
我这里的服务名称是 wildservice
,函数名称是 surge-config
配置 Serverless Devs
阿里云函数计算推荐使用 Serverless Devs 工具在命令行下进行函数管理,在代码的根目录下创建一个 s.yaml
文件:
edition: 1.0.0 name: surge-config access: default services: fc-deploy: component: fc props: region: cn-hangzhou # 函数所在的 region service: name: wildservice # 服务名称 function: name: surge-config # 函数名称 codeUri: ./
这里需要依照你的实际情况修改服务名称、函数名称和所在 region
s.yaml
的参数还有很多,这里只配置了完成自动部署所需的基本几项,完整的配置可以参考文档
配置 Github Actions
下面进入 Github 一侧所需要的配置
Github Actions 的使用方法建议参考文档,这里仅介绍核心步骤
配置密钥
在 Github 仓库的 Setting
页面,找到 Security - Secrets and variables - Actions
选项,
将阿里云账号的 AccessKey 信息配置进来
这里需要创建 3 个 secrets:
- ACCOUNT_ID:云账号 ID,通常在阿里云控制台点击右上角头像可以看到
- ACCESS_KEY_ID:云账号的 AccessKeyId,通常在阿里云 RAM 访问控制页面可以看到
- ACCESS_KEY_SECRET:云账号的 AccessKeySecret,也在上述页面可以看到
配置 Github Actions 工作流
工作流通过 YAML 文件来进行配置,具体参考文档
我们在代码根目录下创建 .github/workflows/aliyun-fc-deploy.yaml
文件:
name: Aliyun FC deploy on: push: branches: - master jobs: deploy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - uses: actions/setup-node@v3 with: node-version: 16 - run: npm install - run: npm install -g @serverless-devs/s # 上一步配置的密钥就用在这里 - run: s config add --AccountID ${{ secrets.ACCOUNT_ID }} --AccessKeyID ${{ secrets.ACCESS_KEY_ID }} --AccessKeySecret ${{ secrets.ACCESS_KEY_SECRET }} -a default - run: s deploy function --type code --use-local
大功告成
至此,每当我们将代码提交到 Github 仓库的 master
分支时,就会触发 Actions 将代码自动部署到函数计算
此时刷新 Github 仓库的 Actions
页面可以看到每次工作流的运行记录
点击标题进去还能看到详细日志
到阿里云控制台的函数计算页面上,也能看到部署的代码已经更新了