根据我对TeamCity如何工作的观察,我注意到在完成所有步骤之后评估构建失败条件.这非常烦人,因为如果遇到任何构建失败条件,我就无法执行一个步骤.
我不是指常见的构建失败条件,例如"至少一个测试失败".我指的是手动添加的故障情况,例如公制更改.
当我检查构建日志时,我清楚地看到所有步骤都已执行,并且最后它只评估构建失败条件,并记录相应的错误(如果有的话).但是在这个过程中为时已晚,因为条件步骤(必须基于"如果构建状态成功则仅执行"失败)已经执行.
问题:我怎样才能做到这一点?
从上面可以看出,我已经尝试了一个条件步骤并添加了构建失败条件,但无法实现所需的结果.
为清晰起见添加:
基本上,我有一个部署应用程序的步骤.但是,我的期望是,如果满足构建失败条件,我不应该部署.我所拥有的构建失败条件的示例是度量标准更改.显然,这可以表示为构建失败条件,并且我可以在构建状态不成功的情况下使构建步骤失败.然而,似乎不是构建步骤将如何表现,所以我很困惑(我认为这是构建步骤中条件的目的).我错过了什么?
我只是注意到,当我想传递字符串时"this"
,在JavaScript函数中无法正确获取类型.
这是一个例子:
var str = 'string value';
if (typeof (str) == 'string') {
alert('string outside');
}
var fn = function(s) {
if (typeof (str) == 'string') {
alert('string param');
}
if (typeof (this) == 'string') {
alert('string this');
}
else {
alert(typeof(this));
}
};
fn.call(str, str);
Run Code Online (Sandbox Code Playgroud)
我看到3个信息:"string outside"
,"string param"
,和"object"
.
我的目标是编写一个"if"
声明"this"
为字符串的语句.有点像if (typeof(this) == 'string')
.这个不起作用,请指出我将在函数内部工作的正确语句.