美文网首页
通过Travis CI对Hexo博客进行持续集成

通过Travis CI对Hexo博客进行持续集成

作者: 面包_y | 来源:发表于2019-05-28 10:53 被阅读0次

    title: 通过Travis CI对Hexo博客进行持续集成
    date: 2018-05-21 14:16:40
    tags:

    • hexo
      categories:
    • Tips

      本篇文章是我自己搭建了一个Travis.ci环境以自动发布hexo博客的一个实践。

    Hexo 简介

      Hexo 是一个Node.js上搭建静态博客的工具,其最吸引我的特点就是可以通过Markdown来写博客。本博客就是采用Hexo搭建的。我在搭建博客的时候参考了以下资料

      根据以上说明可以通过Github Pages搭建一个自己的博客。但是由于是静态页面,每次更新都要从一个Node.js环境上运行Hexo。有没有办法可以简化这个过程呢?

    Travis CI简介

      引用廖雪峰的官方网站对Travis CI的介绍。

    Travis CI是在线托管的CI服务,用Travis来进行持续集成,不需要自己搭服务器,在网页上点几下就好,用起来更方便。最重要的是,它对开源项目是免费的。

      其中CI代表持续集成(Continuous Integration),这是一种自动编译和发布代码的技术。而Travis CI在线提供了这种服务,并且可以与Github无缝衔接。接下来就简单介绍一下我是如何配置Travis CI的。

    简单配置

    1 通过Githun账号登录Travis CI

      打开Travis CI,选择Sign In With Github即可。

    2 配置Personal Token

    • 在Github上Setting中找到Personal access tokens设置
    • Generate new token,生成一个新的Token并记录好。(这个只会出现一次!!)
    • 将上一步生成的Token 加入Traivis CI。在Traivis CI的右上方选More options>Setting>Environment Variables。Name为GH_TOKEN,Value则是刚才的Token,最后点"Add"。
    1.jpg

    3 配置文件

      在项目中加入.travis.yml,我的配置如下。注意我的Hexo博客文件在BackupBranch分支中,public目录下的内容被发布到master分支。

    # 指定语言环境
    language: node_js
    # 指定需要sudo权限
    sudo: required
    # 指定node_js版本
    node_js: 
     - 7.9.0
    # 指定缓存模块,可选。缓存可加快编译速度。
    cache:
      directories:
        - node_modules
    
    # 指定博客的仓库地址
    env:
     global:
       - GH_REF: github.com/wyyuan/wyyuan.github.io.git
    
    # 指定博客分支
    branches:
      only:
        - BackupBranch 
    
    before_install:
      - npm install -g hexo-cli
    
    # Start: Build Lifecycle
    install:
      - npm install
      - npm install hexo-deployer-git --save
    
    # 执行清缓存,生成网页操作
    script:
      - hexo clean
      - hexo generate
    
    # 设置git提交名,邮箱;替换真实token到_config.yml文件,最后depoy部署
    after_script:
      - cd ./public
      - git init
      - git config user.name "WuyangYuan"
      - git config user.email "yuanwuyang@foxmail.com"
      - git add .
      - git commit -m "Update docs"
      - git push --force --quiet "https://${GH_TOKEN}@${GH_REF}" master:master
    
    # End: Build LifeCycle
    

    4 测试

    • 修改仓库后提交,结果如下图所示,成功!
    2.jpg

    相关文章

      网友评论

          本文标题:通过Travis CI对Hexo博客进行持续集成

          本文链接:https://www.haomeiwen.com/subject/byertctx.html