Travis CI提供一个在线的持续集成服务,用来构建托管在github上的代码。
许多知名的开源项目使用它来自动构建测试代码,它支持hexo的运行环境node.js。
原理很简单,Travis会在你每一次在github上提交代码后,生成一个Linux虚拟机来运行你配置好的任务,
生成和部署hexo只需要一个命令 hexo gd ,但是Travis CI需要有我们的github项目上传代码的权限,
所以我们需要使用SSH key来使Travis CI拥有权限。还有一些其他的问题也都参开hexo作者的博文解决了,
用Travis CI自动部署网站到Github。
#安装travis-ci的命令行工具
gem install travis
#登录Travis CI
travis login --auto #这里可以用token登录。
#使用travis命令行工具加密私钥
travis encrypt-file id_rsa --add
#travis CI解密配置,这部分内容需要配置在 .travis.yml 里,注意修改秘钥
- openssl aes-256-cbc -K $encrypted_26b4962af0e7_key -iv $encrypted_26b4962af0e7_iv
-in id_rsa.enc -out ~/.ssh/id_rsa -d
language: node_js
node_js:
- '4.1'
before_install:
- openssl aes-256-cbc -K $encrypted_26b4962af0e7_key -iv $encrypted_26b4962af0e7_iv
-in id_rsa.enc -out ~/.ssh/id_rsa -d
- chmod 600 ~/.ssh/id_rsa
- eval $(ssh-agent)
- ssh-add ~/.ssh/id_rsa
- cp ssh_config ~/.ssh/config
- git config --global user.name "pangjian"
- git config --global user.email "[email protected]"
install:
- npm install hexo-cli -g
- npm install
script:
- hexo -version
- hexo clean
- hexo g
- hexo deploy
* 转载请注明出处:https://firsh.me/2017/06/13/travis-ci-myblog/