云开发 Tencent CloudBase Github Action 可以将 Github 项目自动部署到云开发环境,基于 CloudBase Framework,支持静态网站、云函数、云托管、小程序等项目
云开发 Tencent CloudBase Github Action 借力于 CloudBase Framework,可以将 Github 项目自动部署到云开发环境
如果你目前使用的是 Tencent CloudBase Github Action V1 版本,请参考 V1 README,推荐使用 V2 版本以获取更多功能
支持列表:
完整列表请查看插件介绍
提示:标注 ? 的参数属于敏感信息,需要放在项目的
secret
存储中,用法可以参考最后的实例
secretId
?Required 云开发的访问密钥 secretId.
在腾讯云访问管理页面获取
secretKey
?Required 云开发的访问密钥 secretKey.
在腾讯云访问管理页面获取
envId
?Required 云开发的环境 id envId.
可以在云开发的控制台获取
请确保项目根目录存在 cloudbaserc.json
文件并配置好 CloudBase Framework,参考教程
如需配置部署地域,请参考配置字段
如果你的项目正在使用 CloudBase Framework,那么此 Action 就是 0 配置的
然后请根据你的需求引入相关插件,支持自动检测生成插件配置或手动填写插件配置
以下示例将演示:如何快速部署云函数到 CloudBase(同时设定部署的私密环境变量)
编写如下的 Github Action 文件 .github/workflows/main.yml
on: [push]
jobs:
deploy:
runs-on: ubuntu-latest
name: Tencent Cloudbase Github Action Example
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Deploy to Tencent CloudBase
uses: TencentCloudBase/[email protected]
with:
secretId: ${{secrets.secretId}}
secretKey: ${{secrets.secretKey}}
envId: ${{secrets.envId}}
假设我们在部署时需要设置私密型的环境变量(比如小程序 appid
或访问数据库的 accessToken
),请在以上代码中新增以下内容:
name: Tencent Cloudbase Github Action Example
+env:
+ accessToken: ${{ secrets.accessToken }}
其中 env
下的 accessToken
键值对是我们部署时设置的环境变量,它的功能与本地的 .env
文件相同
在项目中配置 cloudbaserc.json
文件并引入我们刚刚配置的环境变量:
{
"envId": "{{env.ENV_ID}}",
"version": "2.0",
"framework": {
"name": "gh-actions-test",
"plugins": {
"func": {
"use": "@cloudbase/framework-plugin-function",
"inputs": {
"functions": [
{
"name": "example",
"memorySize": 128,
"timeout": 5,
"runtime": "Nodejs10.15",
"handler": "index.main",
"envVariables": {
"accessToken": "{{env.accessToken}}"
}
}
]
}
}
}
}
}
在项目 Settings/Secrets 里设置 secretId
, secretKey
, envId
, accessToken
信息
配置完成后,提交代码到 Github 时,就会自动部署项目中的 example
函数到云开发中,即时函数的环境变量也会设置成功
Thanks goes to these wonderful people (emoji key):
beet ? |
Zhaoxuan "Tony" Wu ? |
This project follows the all-contributors specification. Contributions of any kind welcome!