Conditional issue when use it as if: false

Hi there,

In order to temporarily disable a bunch of steps in a pipeline, I tried to add a if: false to the pipeline but this conditional does not work as intended and steps still showed. It’s only after I’ve changed that to if true == false did I see the steps got disabled.

IMHO, if: true == false is fairly repetitive and not as clear as if: false. My guess here is false is mis-interpreted as a string and evaluated to true.

Can someone please take a look? Thanks!


@xiaket oh! I think I may know what’s happening here. false may be getting translated to a literal false, where as our conditional gear expects it to be a string.

Out of interest, what happens when you use if: "false" as a string?

Also adding a note about the skip: "sometrueval" attribute to command steps. Obviously understand that there’s a potential issue with the lexer, but that would achieve the same (and seems clearer to the reader than if: false)

1 Like

Thanks mate, the issue with skip is it is not available to wait and block, and if you don’t also skip these helper steps, it would in some cases look ugly(two waits next to each other for example) and my ACD forbid me from doing that. :smiley:

Yeah, thanks Keith! So as I understand, this is a bug then? Also regarding to if: "false", I think it will cause a lot of confusion even it worked.