我需要一种方法来确定调用该函数的人是否是Travis-CI。如果是Travis-CI,我不想在这里开始会话。
现在,我让我的测试脚本创建了一个名为test.txt
的文件,然后查找它。
protected function __construct() {
if ( (!session_id()) && (!file_exists('test.txt' ))) session_start();
}
但是,必须有更好的方法。看来,如果没有文件检查,如果实际上进行了会话,则不会创建新会话。但这种情况并非如此。如果是这种情况,下面的前一个链接应该已经过去了。
答案 0 :(得分:51)
通常,您可以通过检查环境变量来检测您是否在Travis-CI上。您可以选中CI=true
或更具体的TRAVIS=true
。在PHP中,您可以使用getenv()
function来获取环境变量的值。
请参阅complete list of the environment。您可以设置更多env variables in your .travis.yml。
答案 1 :(得分:0)
对于Java,我正在检查用户:
/**
* check if we are in the Travis-CI environment
* @return true if Travis user was detected
*/
public boolean isTravis() {
String user = System.getProperty("user.name");
return user.equals("travis");
}
答案 2 :(得分:0)
如果您使用的是JavaScript,则有一个名为is-ci的出色模块,该模块在NPM中可用,并且已获得MIT许可。
注意:它为true
提供了任何持续集成环境,而不仅仅是TravisCI。