Hexo自动构建-基于Flow.ci和Coding

字数 497阅读 364

写在前面

昨天完成了基于Github和TravisCI的自动构建,但是国内访问这两个站速度还是会差一些的,现在国内有跟Github同功能的Coding以及跟TravisCI同功能的Flow.ci,相比较而言配置过程更简单,构建和访问速度更快捷。

概述

1.创建Coding私有仓库(新建非Pages仓库或者在Pages仓库下建一个新的分支;因为是源码,包含git私钥,所以建议用私有仓库)
2.使用Coding账号授权登陆Flow.ci
3.配置Flow.ci
4.手动构建进行测试
5.本地push代码到Coding博客源码仓库,查看自动构建情况

创建Coding私有仓库

1.登录Coding;
2.点击左上角头像,出现所有项目之后,点击“+”创建新的项目;


创建新的项目

Flow.ci授权和配置

1.进入Flow.ci,点击免费注册,然后登录;
2.登入后会有两个Demo项目,右上角找到创建任务按钮;
3.选择代码仓库选择Coding;

目前支持Github、Bitbucket、Coding、Gitlab,但是为什么选择Coding而非Github?是因为Coding的私有仓库是免费创建的,而Github私有库需要$50,23333~~

4.选择Coding账号授权,并选择源代码仓库;
5.成功的话,下一个页面应该是这样子的:

创建新的工作流

6.选择Node.js默认模板:
创建Node.js模板

7.之后进入版本选择页面,我选的是最新的v6.6.0版本,点击创建
配置工作流1

这里push如果是独立的源码仓库可以选择所有分支或者正则匹配指定master分支;
如果是Pages仓库的master之外的源码分支,请选择正则匹配然后选择相应的源码分支。
这里也能配置定时任务,很方便,根据自己博客更新频率设置定是构建任务!
8.创建自定义脚本:在安装工作流后面添加自定义工作流模块,可将测试模块删除,因为没什么用,当然你也可以不删除。
配置工作流2

9.配置自定义脚本,添加如下脚本:

# 安装Hexo命令行工具
flow_cmd "npm install hexo-cli -g" --echo

# 准备并安装私钥
# 这里的.ssh是git存放密钥对的文件夹,一般在C:\Users\yourname\.ssh,将该文件夹复制到博客源文件根目录。
flow_cmd "cp .ssh/id_rsa ." --echo
flow_cmd "chmod 600 ./id_rsa" --echo
flow_cmd "eval $(ssh-agent)" --echo
flow_cmd "ssh-add ./id_rsa" --echo

# 执行Hexo生成和发布

flow_cmd "hexo clean" --echo
flow_cmd "hexo g" --echo
flow_cmd "hexo d" --echo
flow_result $?

10.至此Flow.ci配置完成,此时如果点击手动构建是不行的,因为的的Coding源码仓还没有代码!

关联本地仓库(博客源码文件夹)和Coding源码仓库;

  1. 本地进入博客源码文件夹,打开Git Bash,执行:
git init    # 初始化

git remote add origin https://git.coding.net/yourname/blog.git  # 关联远程仓库

git pull origin master  # 如果这里你是单独仓库直接Pull master分支,如果不是请指定分支

git add .

git commit -am "First Commit!"

git push origin master

如果顺利的话你的博客已经开始在Flow.ci上自动构建了!失败了回邮件到你的注册邮箱的!

原文地址>>

推荐阅读更多精彩内容