自建简易 CI/CD 工具
背景:每次 push 代码时都需要登录服务器拉取代码,手动执行重启等命令
使用 Rust 创建 cli 工具:
- 读取服务端启动配置 // 在需要的时候做相应的操作,如部署
- 创建 WebServer,响应 Github WebHooK // 需要长随机字符串
- 更新 repo // 没有就新建
- 解析项目中配置,执行对应的脚本
Rust 难点:
- actix-web 怎么异步处理请求?// 事件循环
- actix-web 的 handler 为啥可以有多个参数? // 使用 Trait 和 范型
- 为什么需要 ‘static 生命周期?怎么解决?//
- 全局对象?// static 定义
- 借用引用以及所有权
TODO:
- 上传 CDN