国内持续集成工具flow.ci上线,尝试将其用于Coding.net仓库代码的构建与测试。
认识 flow.ci
flow.ci 采用工作流机制,功能与 Travis CI 差不多,被称为国内的 Travis CI。
融入 Workflow 机制的持续集成,让代码在 Build, Test, Deploy 间轻盈灵动
关于 flow.ci 的更多介绍,可以访问其官方博客。
配置步骤
关于使用 flow.ci 自动部署 Hexo 的方法,网上目前只在 Juglans’ Blog 中出现过。而作者提供的方法要把 id_rsa 文件放在博客源码中,如果使用 public 库,此法并不推荐。因为个人网站是双线托管,只拥有 GitHub public,于是要尝试新方法。
注册 flow.ci
必要步骤,有兴趣可以去 flow.ci 官网申请内测以获取邀请码。

创建项目
在 flow.ci 拉取仓库源码,创建相应的项目进行自动部署,flow.ci de工作流机制让操作变得简单。
具体的按照下面的顺序操作即可:
创建项目 -> 选择代码源 -> 选择用户 -> 选择仓库 -> 创建工作流 -> 选择脚本模板。

设置触发器
设置自动部署触发器,因为我是把源代码放在放在分支 hexo 中,博客静态文件放在分支 master 中,所以我选设置为 push hexo 时触发。

配置工作流
配置工作流,这里我们把 测试 部分删掉,然后加上 自定义脚本。

脚本参考代码如下
1 | # 安装Hexo命令行工具 |
配置 Token
我们创建项目后,flow.ci 会自动在 Coding.net 中添加部署公钥,但是这个公钥只有只读权限,用于拉取(git clone)仓库代码,并没有推送权限。

所以现在我们把它删除,重新添加这个公钥,并勾选推送功能,这样这个公钥就拥有了推送回 Coding.net 的权限了,提高了安全性。

测试
配置完后可以手动创建来测试一下是否成功,如不成功可以查看构建日志来查找不成功的原因。

总结
本文所提供自动部署 Hexo 方法解决了代码库安全性问题。如此便可专注于写好文章,构建部署就全交给 flow.ci 完成。