前言

最近发现自己的博客在使用vpn的情况下打开很慢,百度站点也抓取失败,于是将自己的博客借助hexo-deploy 插件很容易同步部署到了coding上。只需要在你的hexo配置文件_config.yml的deploy配上coding的coding page项目url(注意将ssh key 设置好)

  1. deploy:
  2. - type: git
  3. repository:
  4. - git@github.com:Han-Ya-Jun/Han-Ya-Jun.github.io.git
  5. - git@git.dev.tencent.com:hanyajun0123/hanyajun0123.git
  6. branch: master
  7. message: update
  8. - type: baidu_url_submitter

配置后于是在阿里云的域名解析上新增两条CNAME记录指向 hanyajun0123.coding.me,选择默认解析,原来github的解析换成国外的dns解析路线,这样国内的就指向coding,国外的指向github.io



访问的时候出现了下面的这种异常(您的链接不是私密链接)



看了下coding的证书申请情况也是一直失败



后来查了下资料发现得先暂停掉原先指向github.io的解析,这个会对与coding page进行校验。后来停掉再次申请ssl证书就成功了,本来以为完美解决了,谁知自己部署在github page的gitbook的项目访问不了,翻墙之后就可以访问了,这个很好解释,不翻墙就解析到了coding上。于是自己又琢磨了下如何基于travis ci实现gitbook在github和coding的自动化ci。如果之前没有尝试过使用travis ci来部署gitbo的可以参考下我之前写的一篇博客《如何使用travis-ci自动化构建部署GitHub Pages(gitbook)》

CI流程

获取coding访问令牌

travis添加coding token环境变量

在Travis上原来github部署ci的gitbook项目里面添加访问coding token。

修改.travis.yaml 文件

  1. after_script:
  2. - cd ./_book
  3. - git init
  4. - git config user.name "*****"
  5. - git config user.email "******"
  6. - git add .
  7. - git commit -m "Update Gitbook By TravisCI With Build $TRAVIS_BUILD_NUMBER"
  8. - git push --force --quiet "https://hanyajun0123:${CODING_TOKEN}@${CO_REF}" master:master
  9. - git tag v0.0.$TRAVIS_BUILD_NUMBER -a -m "Auto Taged By TravisCI With Build $TRAVIS_BUILD_NUMBER"
  10. - git push --quiet "https://hanyajun0123:${CODING_TOKEN}@${CO_REF}" master:master --tags
  11. # git@git.dev.tencent.com:hanyajun0123/coding_basis_review.git
  12. env:
  13. global:
  14. # Coding Pages
  15. - CO_REF: git.dev.tencent.com/hanyajun0123/coding_basis_review.git

完整.travis.yaml文件

触发ci

修改本地gitbook项目,推送到github上去,就可以粗发ci了。

  1. Creating a brand new local repo from scratch in dir /tmp/d20190517-7047-qvpbfn/work...
  2. dpl.2
  3. Preparing deploy
  4. dpl.3
  5. Deploying application
  6. Initialized empty Git repository in /tmp/d20190517-7047-qvpbfn/work/.git/
  7. Repo created successfully
  8. Switched to a new branch 'gh-pages'
  9. An orphan branch gh-pages created successfully
  10. cd -
  11. cd /tmp/d20190517-7047-qvpbfn/work
  12. Copying /home/travis/build/Han-Ya-Jun/coding_basis_review/_book contents to /tmp/d20190517-7047-qvpbfn/work (workdir: /tmp/d20190517-7047-qvpbfn/work)...
  13. Configuring git committer to be Deployment Bot (from Travis CI) <deploy@travis-ci.org> (workdir: /tmp/d20190517-7047-qvpbfn/work)
  14. Preparing to deploy gh-pages branch to gh-pages (workdir: /tmp/d20190517-7047-qvpbfn/work)
  15. commit 76413d48b1f036c4b9c9b4e3fbad583fa24aa87a
  16. Author: Deployment Bot (from Travis CI) <deploy@travis-ci.org>
  17. Date: Fri May 17 01:15:08 2019 +0800
  18. Deploy Han-Ya-Jun/coding_basis_review to github.com/Han-Ya-Jun/coding_basis_review.git:gh-pages
  19. .travis.yml | 49 ++
  20. generation | 0
  21. gitbook/fonts/fontawesome/FontAwesome.otf | Bin 0 -> 124988 bytes
  22. gitbook/fonts/fontawesome/fontawesome-webfont.eot | Bin 0 -> 76518 bytes
  23. gitbook/fonts/fontawesome/fontawesome-webfont.svg | 685 +++++++++++++++++++++
  24. gitbook/fonts/fontawesome/fontawesome-webfont.ttf | Bin 0 -> 152796 bytes
  25. gitbook/fonts/fontawesome/fontawesome-webfont.woff | Bin 0 -> 90412 bytes
  26. .../fonts/fontawesome/fontawesome-webfont.woff2 | Bin 0 -> 71896 bytes
  27. gitbook/gitbook-plugin-3-ba/plugin.js | 20 +
  28. .../gitbook-plugin-back-to-top-button/plugin.css | 55 ++
  29. ...
  30. 51 files changed, 6434 insertions(+)
  31. Doing the git push (workdir: /tmp/d20190517-7047-qvpbfn/work)...
  32. On branch gh-pages
  33. nothing to commit, working tree clean
  34. cd -
  35. App has been pushed
  36. after_script.1
  37. 0.01s$ cd ./_book
  38. after_script.2
  39. 0.01s$ git init
  40. Initialized empty Git repository in /home/travis/build/Han-Ya-Jun/coding_basis_review/_book/.git/
  41. after_script.3
  42. 0.01s$ git config user.name "hanyajun0123"
  43. after_script.4
  44. 0.01s$ git config user.email "1581532052@qq.com"
  45. after_script.5
  46. 0.05s$ git add .
  47. after_script.6
  48. 0.02s$ git commit -m "Update Gitbook By TravisCI With Build $TRAVIS_BUILD_NUMBER"
  49. [master (root-commit) 1c86337] Update Gitbook By TravisCI With Build 10
  50. 51 files changed, 6434 insertions(+)
  51. create mode 100644 .travis.yml
  52. create mode 100644 generation
  53. create mode 100644 gitbook/fonts/fontawesome/FontAwesome.otf
  54. create mode 100644 gitbook/fonts/fontawesome/fontawesome-webfont.eot
  55. create mode 100644 gitbook/fonts/fontawesome/fontawesome-webfont.svg
  56. create mode 100644 gitbook/fonts/fontawesome/fontawesome-webfont.ttf
  57. create mode 100644 gitbook/fonts/fontawesome/fontawesome-webfont.woff
  58. create mode 100644 gitbook/fonts/fontawesome/fontawesome-webfont.woff2
  59. create mode 100644 gitbook/gitbook-plugin-3-ba/plugin.js
  60. create mode 100644 gitbook/gitbook-plugin-back-to-top-button/plugin.css
  61. create mode 100644 gitbook/gitbook-plugin-back-to-top-button/plugin.js
  62. create mode 100644 gitbook/gitbook-plugin-disqus/plugin.css
  63. create mode 100644 gitbook/gitbook-plugin-disqus/plugin.js
  64. create mode 100644 gitbook/gitbook-plugin-donate/plugin.css
  65. create mode 100644 gitbook/gitbook-plugin-donate/plugin.js
  66. create mode 100644 gitbook/gitbook-plugin-editlink/plugin.js
  67. create mode 100644 gitbook/gitbook-plugin-fontsettings/fontsettings.js
  68. create mode 100644 gitbook/gitbook-plugin-fontsettings/website.css
  69. create mode 100644 gitbook/gitbook-plugin-ga/plugin.js
  70. create mode 100644 gitbook/gitbook-plugin-github-buttons/plugin.js
  71. create mode 100644 gitbook/gitbook-plugin-github-buttons/plugin.js.map
  72. create mode 100644 gitbook/gitbook-plugin-github/plugin.js
  73. create mode 100644 gitbook/gitbook-plugin-image-captions/image-captions.css
  74. create mode 100644 gitbook/gitbook-plugin-page-toc-button/plugin.css
  75. create mode 100644 gitbook/gitbook-plugin-page-toc-button/plugin.js
  76. create mode 100644 gitbook/gitbook-plugin-prism/prism-coy.css
  77. create mode 100644 gitbook/gitbook-plugin-prism/prism-dark.css
  78. create mode 100644 gitbook/gitbook-plugin-prism/prism-funky.css
  79. create mode 100644 gitbook/gitbook-plugin-prism/prism-okaidia.css
  80. create mode 100644 gitbook/gitbook-plugin-prism/prism-solarizedlight.css
  81. create mode 100644 gitbook/gitbook-plugin-prism/prism-tomorrow.css
  82. create mode 100644 gitbook/gitbook-plugin-prism/prism-twilight.css
  83. create mode 100644 gitbook/gitbook-plugin-prism/prism.css
  84. create mode 100644 gitbook/gitbook-plugin-search-plus/jquery.mark.min.js
  85. create mode 100644 gitbook/gitbook-plugin-search-plus/search.css
  86. create mode 100644 gitbook/gitbook-plugin-search-plus/search.js
  87. create mode 100644 gitbook/gitbook-plugin-sharing/buttons.js
  88. create mode 100644 gitbook/gitbook-plugin-splitter/splitter.css
  89. create mode 100644 gitbook/gitbook-plugin-splitter/splitter.js
  90. create mode 100644 gitbook/gitbook-plugin-tbfed-pagefooter/footer.css
  91. create mode 100644 gitbook/gitbook.js
  92. create mode 100644 gitbook/images/apple-touch-icon-precomposed-152.png
  93. create mode 100644 gitbook/images/favicon.ico
  94. create mode 100644 gitbook/style.css
  95. create mode 100644 gitbook/theme.js
  96. create mode 100644 index.html
  97. create mode 100644 network/TCP_IP.html
  98. create mode 100644 network/summary.html
  99. create mode 100644 package-lock.json
  100. create mode 100644 search_plus_index.json
  101. create mode 100644 sitemap.xml
  102. after_script.7
  103. 3.87s$ git push --force --quiet "https://hanyajun0123:${CODING_TOKEN}@${CO_REF}" master:master
  104. after_script.8
  105. 0.01s$ git tag v0.0.$TRAVIS_BUILD_NUMBER -a -m "Auto Taged By TravisCI With Build $TRAVIS_BUILD_NUMBER"
  106. after_script.9
  107. 1.65s$ git push --quiet "https://hanyajun0123:${CODING_TOKEN}@${CO_REF}" master:master --tags
  108. Done. Your build exited with 0.

基于Travis CI实现 Gitbook在 Github 和 Coding 的同步部署的更多相关文章

  1. 博客 | 基于Travis CI实现Hexo在Github和Coding的同步自动化部署

    文章目录 完成Hexo主题安装和配置 基于Travis CI实现同步部署 参考内容 相关链接 待补充 完成Hexo主题安装和配置 如果您还没有安装Hexo环境,请参考Hexo文档安装,也给出这样两篇博 ...

  2. 利用Travis CI 让你的github项目持续构建

    Travis CI 是目前新兴的开源持续集成构建项目,它与jenkins,GO的很明显的特别在于采用yaml格式,简洁清新独树一帜.目前大多数的github项目都已经移入到Travis CI的构建队列 ...

  3. 使用Travis CI自动部署博客到github pages和coding pages

    每次换系统或换电脑之后重新部署博客总是很苦恼?想像jekyll那样,一次性部署完成后,以后本地不用安装环境直接 git push 就能生成博客?那推荐你应该使用使用 Travis CI了. 这篇文章我 ...

  4. 【Hexo】使用Hexo+github pages+travis ci 实现自动化部署

    目录 一.说明 二.成品展示 三.前期准备 本地安装 node.js 本地安装 git github 账号 创建仓库 travis ci 账号 四.安装 Hexo 五.使用 hexo 搭建博客 六.部 ...

  5. 使用 Travis CI 实现项目的持续测试反馈

    [篇幅较长,10.15前补充完毕,如希望探索可直接移步Github仓库:https://github.com/SivilTaram/CITest] 在编程课中,我们可以使用成熟的在线评测系统来测试某个 ...

  6. [转]使用 Travis CI 部署你的 Hexo 博客

    之前使用Hexo的时候,都是在本地进行编译和部署的,平时使用的时候觉得没什么,只需要 hexo ghexo d 两步就可以把博客更新的内容推到GitHub Pages上.但是某些时候可能会遇到你的文件 ...

  7. 基于travis和git tag 实现npm自动化发版

    最近又把烂尾的开源项目alfred-femine拾起来了,这个项目旨在开发一系列前端常用的alfred workflow,提供前端开发的查询效率.时隔这么久,再次搞起,希望自己能够一直维护下去,也欢迎 ...

  8. github Travis CI 持续集成

    一个项目如何保证代码质量是开发中非常重要的环节,对于开源项目来说更是如此,因为开源项目要面对的是来自不同水平开发者提交的代码.所以围绕开源做持续集成(Continuous Integration)变得 ...

  9. github pages与travis ci运作原理

    当说到自动部署的时候,我很反感那些一上来就balabala说怎么操作的博文文章,照着别人的做法有样学样,经常会因为与自己项目实际情况不符而出现各种问题. 比如说github和travis,首先应该搞明 ...

随机推荐

  1. 关于爬虫的日常复习(18)——scrapy系列3

  2. C# 根据年月日计算周次

    //day:要判断的日期,WeekStart:1 周一为一周的开始, 2 周日为一周的开始 public static int WeekOfMonth(DateTime day, int WeekSt ...

  3. vue引用外部JS的两种种方案

    前言 肯定会遇到没有npm化的库 自己写的js 方法 在Vue中该怎么引用呢 第一种 如果库是es6写的 就可以用import 引入 比如我自己写的http 封装接口的方法 就可以这样子导入哦 第二种 ...

  4. 【Java并发基础】管程简介

    前言 在Java 1.5之前,Java语言提供的唯一并发语言就是管程,Java 1.5之后提供的SDK并发包也是以管程为基础的.除了Java之外,C/C++.C#等高级语言也都是支持管程的. 那么什么 ...

  5. xlwings excel(三)

    App相当于Excel程序,Book相当于工作簿.N个Excel程序则由apps表示,N个工作簿由books表示. 对工作簿的操作 #导入xlwings模块 import xlwings as xw ...

  6. 使用luabind绑定box2d的lua接口

    最近在使用luabind绑定box2d的lua接口,发现不少问题.写在这里与大家分享. 1. body,fixture,joint的userdata.box2d的userdata的数据类型是void* ...

  7. HTML中CSS引用——选择器的使用

    一.元素选择器     1.书写格式:标记名{/*生命块*/}     2.所有与该标记匹配的元素,都将应用声明块中的规则 二.类选择器     1.书写格式:.类名{/*声明块*/}         ...

  8. java内存模型梳理

    java内存模型 内存模型和内存结构区别 它们是两个概念. 内存模型是和jvm多线程相关的. 内存结构是指的jvm内存结构. 内存模型的作用 内存模型简称JMM JMM是决定一个线程对共享变量的写入时 ...

  9. windows丢失文件的恢复技巧

    这几天在使用STVD调试程序的时候,突然跳出来一个“共享冲突”错误,当时并没有在意,点确定后赶紧CTRL+S,然后就一直死在那里了... 结束任务,重启STVD,提示找不到main.c,到此也不以为然 ...

  10. 在Centos7上安装Oracle

    环境: 硬盘30G:2G RAM:Centos7:Oracle 11G: 1.创建组和用户 [zzd@localhost ~]$ su root #切换到root Password: [root@lo ...