• 欢迎访问web前端中文站,JavaScript,CSS3,HTML5,web前端demo
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏web前端中文站吧

持续集成(Travis CI)运行流程详解

JAVA web前端中文站 2年前 (2017-12-24) 2135次浏览 已收录 0个评论

在前面已经介绍了持续集成(TRAVIS CI)简介详解 TRAVIS CI 的.TRAVIS.YML 配置文件,大家对Travis 的了解已经有了一定的基础了。接下来我们学习持续集成(Travis CI)运行流程。其实Travis 的运行流程很简单,任何项目都会经过两个阶段(命令)。

更多精彩内容请看 web 前端中文站
http://www.lisa33xiaoq.net 可按 Ctrl + D 进行收藏

  • install 命令:安装依赖
  • script 命令:运行脚本

install 命令

install 命令用来指定安装脚本。

 install: ./install-dependencies.sh

如果有多个脚本,可以写成下面的形式。

 install:   - command1   - command2

上面代码中,如果command1失败了,整个构建就会停下来,不再往下进行。

如果不需要安装,即跳过安装阶段,就直接设为true

 install: true

script 命令

script字段用来指定构建或测试脚本。

 script: bundle exec thor build

如果有多个脚本,可以写成下面的形式。

 script:   - command1   - command2

注意,script 与 install 不一样,如果 command1 失败,command2 会继续执行。但是,整个构建阶段的状态是失败。

如果 command2 只有在 command1 成功后才能执行,就要写成下面这样。

 script: command1 && command2

Node 项目实例

Node 项目的环境需要写成下面这样。

 language: node_js node_js:   - "8"

上面代码中,node_js 字段用来指定 Node 版本。

Node 项目的 install 和 script 阶段都有默认脚本,可以省略。

  • install 默认值:npm install
  • script 默认值:npm test

更多设置请看官方文档。

Travis 部署

script阶段结束以后,还可以设置通知步骤(notification)和部署步骤(deployment),它们不是必须的。

部署的脚本可以在script阶段执行,也可以使用 Travis 为几十种常见服务提供的快捷部署功能。比如,要部署到?Github Pages,可以写成下面这样。

 deploy:   provider: pages   skip_cleanup: true   github_token: $GITHUB_TOKEN # Set in travis-ci.org dashboard   on:     branch: master

其他部署方式,请看官方文档。

Travis 钩子方法

Travis 为上面这些阶段提供了 7 个钩子。

  • before_install:install 阶段之前执行
  • before_script:script 阶段之前执行
  • after_failure:script 阶段失败时执行
  • after_success:script 阶段成功时执行
  • before_deploy:deploy 步骤之前执行
  • after_deploy:deploy 步骤之后执行
  • after_script:script 阶段之后执行

完整的生命周期,从开始到结束是下面的流程。

  1. before_install
  2. install
  3. before_script
  4. script
  5. aftersuccess or afterfailure
  6. [OPTIONAL] before_deploy
  7. [OPTIONAL] deploy
  8. [OPTIONAL] after_deploy
  9. after_script

下面是一个 before_install 钩子的例子。

 before_install:   - sudo apt-get -qq update   - sudo apt-get install -y libxml2-dev

上面代码表示before_install阶段要做两件事,第一件事是要更新依赖,第二件事是安装libxml2-dev。用到的几个参数的含义如下:-qq表示减少中间步骤的输出,-y表示如果需要用户输入,总是输入yes

Travis 运行状态

最后,Travis 每次运行,可能会返回四种状态。

  • passed:运行成功,所有步骤的退出码都是 0
  • canceled:用户取消执行
  • errored:before_install、install、before_script 有非零退出码,运行会立即停止
  • failed :script 有非零状态码 ,会继续运行

参考资料

  • Auto-deploying built products to gh-pages with Travis
  • SSH deploys with Travis CI

【注:本文源自网络文章资源,由站长整理发布】


web 前端中文站 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:持续集成(Travis CI)运行流程详解
喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址