CircleCI 2.0持续集成Jekyll

谈到持续集成,最经常使用的工具无非就是三个:一个是TravisCI,一个是CircleCI,一个是Jenkins。前两个是网站,能够很是便利地与Github相集成,但都有数量限制,最后一个是开源软件,能够下载安装成供本身使用的工具,想作几个作几个。html

所谓持续集成,听起来彷佛很时尚,但其本质无非就是三件事:从代码库git中拉取代码、编译、部署。若是你想尝试Jenkins,能够经过Docker安装,而后集成到你本身的git仓库上git

今天咱们不谈Jenkins,今天要谈的是CircleCI。在这几个工具当中,CircleCI的界面应该说是最漂亮的:github

clipboard.png

CircleCIGithub集成比较容易,直接选择本身的代码库拉取便可。而Github Pages因为使用了Jekyll,因此有必要看一下Jekyll如何与CircleCI集成,但Jekyll官网上关于与CircleCI集成的文章仍是基于旧版本的CircleCI 1.0的,而CircleCI 2.0已经与1.0有了很大差别。因此下面咱们来说一下如何把JekyllCircleCI 2.0集成在一块儿。docker

1.0不一样的是,你不须要在项目的根目录下创建circle.yml了,而是要在项目根目录下建立一个名为.circle的文件夹,而后在里面放一个名为config.yml的文件,文件内容以下:segmentfault

version: 2
jobs:
   build-job:
     docker:
       - image: circleci/ruby:latest
     steps:
       - checkout
       - run: bundle install
       - run: bundle exec jekyll build
       - run: bundle exec htmlproofer ./_site --allow-hash-href --check-html --disable-external
       - run: echo "Build finished!"
workflows:
  version: 2
  build-deploy:
    jobs:
      - build-job

在这里,咱们采用了工做流的方式来作,可是只作了编译部分,而没有作须要rsync的部署部分,由于项目自己已经在Github Pages服务器上了,不须要额外部署。若是你须要部署到其余服务器的话,还须要在其余服务器上开辟rsync服务,而后在CircleCI里执行rsync命令,那是另一个话题了。ruby

关于CircleCIJekyll集成的真实案例,能够参考个人博客模版服务器

相关文章
相关标签/搜索