使用Travis服务器上的Buck构建

Cur*_*ous 4 c++ github travis-ci c++14 buck

我正在尝试使用Travis CI服务器上的C++目标(通过GitHub)与Buck构建测试buck test,但有两件事我无法弄清楚.

  1. 我必须在Travis服务器上安装Buck.我如何使用OS X服务器而不是Ubuntu服务器?我在Travis文档中读到它也提供了OS X服务器.这样我就可以继续做brew tap facebook/fb && brew install buck,我会完成.
  2. Buck要求我指定要.buckconfig在存储库中的文件中使用的编译器.但是,这只接受编译器使用的绝对路径.Travis CI配置似乎只提供包含编译器路径的环境变量.但环境变量不能用于.buckconfig.有没有办法可以安装一个编译器(一个完全支持C++ 14的编译器)并获得它在Travis服务器上的安装路径?

我强调的问题,以便它是没有与所有我提到的(巴克和Travis CI)仍回答这个问题的事情体验谁的人更容易.

Von*_*onC 5

我如何使用OS X服务器而不是Ubuntu服务器?

这应该是os指令的目的.

值必须是linux(默认)或osx; 或者一个已知的别名:
ubuntu用于linux,mac用于osx或macos用于osx

(具有讽刺意味的是,buck它本身就有自己的tavis.yml.)

但环境变量不能用于.buckconfig.

你可以:

  • 考虑启动Travis CI作业,并使用sed完成以.buckconfig从环境变量中替换实际的固定路径.
  • 或者用cxx_...()一个genrule()你可以指定你想要的命令的替换所有规则(并从某些环境变量替换中受益)