使用travis-ci自动部署github上的项目

travis-ci是什么?

一个使用yaml格式配置用于持续集成完成自动化测试部署的开源项目
官网:https://travis-ci.org/vue

使用travis-ci集成vue.js项目

首先,您须要一个github帐号 and 一个vue.js项目~ 没有的话试试这个啊metoolsnode

1. 登陆Github并拥有一个项目

登陆github 而后Star,Fork metools
固然能够先去看看这个项目是啥..http://tools.yimo.link/git

2. 前往travis-ci官网

使用Github帐号登陆
图片github

3. 登陆成功回到用户中心

默认会同步一部分仓库,若是太多的话须要点击Sync account进行同步
图片npm

4. 开启对 metools 项目的集成并进入设置页面

图片
以下图所示,根据须要配置构建信息
添加github的Token到环境变量中,用户名,邮箱也可添加进去,这样配置文件中就可使用了
生成Token见步骤5.注意:配置私密的环境变量时必定要加密,由于会显示在日志中且可以被他人看到
图片
根据步骤6的配置,还须要添加一些环境变量使起更方便(地址别填错了)
图片
图中配置依次为:测试

  1. GH_REF:仓库地址
  2. GH_TOKEN:生成的令牌
  3. P_BRANCH:推送的pages分支 //这里填的时候必定要注意,通常来说就是 gh-pages 。别手抖写个master。血淋淋的教训~
  4. U_EMAIL:邮箱
  5. U_NAME:名称

5. Github生成访问令牌 (即添加受权)

访问令牌的做用就是受权仓库操做权限 https://github.com/settings/tokens
Github>settings>Personal access tokens> Generate new token > Generate token> Copy Token
图片ui

6. .travis.yml 文件的简单配置

.travis.yml文件的做用就是在代码提交的时候travis-ci会根据该配置文件执行配置的任务
在项目根目录中建立(或修改).travis.yml 文件,其中${环境变量}为环境变量在travis中配置便可加密

language: node_js
# nodejs版本
node_js: 
    - '6'

# Travis-CI Caching
cache:
  directories:
    - node_modules


# S: Build Lifecycle
install:
  - npm install

before_script:

# 无其余依赖项因此执行npm run build 构建就好了
script:
  - npm run build

after_script:
  - cd ./dist
  - git init
  - git config user.name "${U_NAME}"
  - git config user.email "${U_EMAIL}"
  - git add .
  - git commit -m "Update tools"
  - git push --force --quiet "https://${GH_TOKEN}@${GH_REF}" master:${P_BRANCH}
# E: Build LifeCycle

#指定分支,只有指定的分支提交时才会运行脚本
branches:
  only:
    - master
env:
 global:
   # 我将其添加到了travis-ci的环境变量中
   #- GH_REF: github.com/yimogit/metools.git

7. 自动构建项目

修改完成,并推送到github后,就能够在travis-ci.org中看到项目开始构建了(之后每次推送代码到仓库后都将会自动构建项目)
图片
构建完成日志
图片3d

构建完成。在设置中能够看到默认已经将gh-pages分支部署到pages,访问https://用户名.github.io/metools/便可预览效果。
图片日志

若构建失败,能够经过travis-ci中项目面板右上角的 Restart build 从新构建
图片

相关文章
相关标签/搜索