在 Travis 服务器上使用 Buck 构建
Building with Buck on Travis servers
我正在尝试在 Travis CI 服务器上(通过 GitHub)使用 buck test
C++ 目标通过 Buck 构建测试,但我有两件事想不通。
- 我必须在 Travis 服务器上安装 Buck。 如何使用 OS X 服务器而不是 Ubuntu X 服务器? 我在 Travis 文档中读到它也提供 OS X 服务器。这样我就可以继续做
brew tap facebook/fb && brew install buck
我就完成了。
- Buck 要求我在存储库的
.buckconfig
文件中指定要使用的编译器。然而,这只接受编译器使用的绝对路径。 Travis CI 配置似乎只提供一个包含编译器路径的环境变量。然而,环境变量不能在 .buckconfig
中使用。 有什么方法可以安装编译器(完全支持 C++14 的编译器)并获取它在 Travis 服务器上的安装路径吗?
我突出显示了问题,以便那些对我提到的所有事情没有经验的人(Buck 和 Travis CI)更容易回答问题。
How can I use OS X servers instead of Ubuntu ones?
这应该是 os
directive 的用途。
Value has to be linux
(default) or osx
; or one of the known aliases:
ubuntu
for linux, mac
for osx or macos
for osx
(讽刺的是,buck
itself has its own tavis.yml。)
Environment variables however cannot be used in the .buckconfig
.
您可以:
- 考虑开始你的 Travis CI 作业,对
.buckconfig
执行 sed 以用环境变量中的实际路径替换固定路径。
- 或将所有
cxx_...()
规则替换为 genrule()
,您可以在其中指定所需的命令(并受益于某些环境变量替换)
我正在尝试在 Travis CI 服务器上(通过 GitHub)使用 buck test
C++ 目标通过 Buck 构建测试,但我有两件事想不通。
- 我必须在 Travis 服务器上安装 Buck。 如何使用 OS X 服务器而不是 Ubuntu X 服务器? 我在 Travis 文档中读到它也提供 OS X 服务器。这样我就可以继续做
brew tap facebook/fb && brew install buck
我就完成了。 - Buck 要求我在存储库的
.buckconfig
文件中指定要使用的编译器。然而,这只接受编译器使用的绝对路径。 Travis CI 配置似乎只提供一个包含编译器路径的环境变量。然而,环境变量不能在.buckconfig
中使用。 有什么方法可以安装编译器(完全支持 C++14 的编译器)并获取它在 Travis 服务器上的安装路径吗?
我突出显示了问题,以便那些对我提到的所有事情没有经验的人(Buck 和 Travis CI)更容易回答问题。
How can I use OS X servers instead of Ubuntu ones?
这应该是 os
directive 的用途。
Value has to be
linux
(default) orosx
; or one of the known aliases:
ubuntu
for linux,mac
for osx ormacos
for osx
(讽刺的是,buck
itself has its own tavis.yml。)
Environment variables however cannot be used in the
.buckconfig
.
您可以:
- 考虑开始你的 Travis CI 作业,对
.buckconfig
执行 sed 以用环境变量中的实际路径替换固定路径。 - 或将所有
cxx_...()
规则替换为genrule()
,您可以在其中指定所需的命令(并受益于某些环境变量替换)