Travis:定义OS特定的环境变量

时间:2015-10-14 12:49:54

标签: linux travis-ci

我在我的项目和Travis-CI中使用Go lang来构建它。

我想在每个操作系统(OSX,Linux,Windows)上构建它,所以我想使用$.each(vistorias, function (ind, obj) { var nTr = "<tr>" nTr += "<td><p>" + obj.data + "</p></td>"; nTr += "<td><p>" + obj.cliente + "</p></td>"; /* and do the rest */ $(nTr).appendTo('#TabelaVistorias'); }); GIMME_OS环境变量(from GIMME project),但问题是达尔文对我的项目来说还不够,所以我必须在mac上本地构建我的项目。

我的方法是将OSX操作系统构建为VM(travis直接从.travis.yml文件支持),并使用交叉编译(GIMME)linux64,linux386&amp; amp;窗户。

现在,每次我定义一个环境变量时,它都会为我的构建矩阵创建一个新列。我想要的环境变量将在linux构建部分中 nly

现在我的.travis.yml看起来像这样:

GIMME_ARCH

这确实创建了 8 版本(每个操作系统的每个环境变量行) 有没有办法定义仅与.travis.yml文件中的某些部分相关的环境变量(特别是OS部分)

1 个答案:

答案 0 :(得分:0)

您可以使用$TRAVIS_OS_NAME(不是osx或linux)来自己定义操作系统名称。 Docs 然后,您的“ env”部分将简化为仅两行用于弓形。

通常,无法从yml定义OS依赖变量。解决此问题的一种好方法是在您的存储库中有.travis.${TRAVIS_OS_NAME}.env个文件,并在第一个构建步骤需要它之前就将其来源。