当前在本地调试Travis构建的工作流是什么



曾经可以下载Vagrant box来调试Travis构建(例如GitHub项目)。显然,这已经不可能了,那么人们目前是如何调试复杂的Travis在本地构建链的呢?

检查构建的一种方法(不是调试,抱歉)是在失败时将构建日志发送到另一台服务器。

这里有一个例子:

after_failure
  - sudo tar -czf /tmp/build-${TRAVIS_BUILD_NUMBER}-logs.tgz your-application-logs/
  - scp /tmp/build-${TRAVIS_BUILD_NUMBER}-logs.tgz travis@your-server.com:~/logs

你可以通过电子邮件发送它们,将它们存储在存储服务器上或其他什么。

如果您在调试模式下运行测试,并在tarball中包含我们自己的日志,那么这些日志将对您非常有用。

不幸的是,目前没有一个好的解决方案可以在本地测试travis-ci构建。我能推荐的最接近的东西是Ubuntu 12.04流浪者vm,并从这里为它提供Travis厨师食谱。这将解决大多数用例,因为大多数时候测试失败不是来自travis软件(尽管运气不好,因为大多数travis软件都依赖于travis的其他部分,因此设置起来相当困难),而是来自底层操作系统(Ubuntu)和ruby和ruby gems等软件。

我曾尝试在这里为JVM构建制作一个docker文件,这对我来说很好。它基于travis发布的容器,并利用travis CLI和travis Build项目能够在docker容器中运行.travis.yml文件。

一个已构建的JVM映像位于docker hub上。

最新更新