I have a TeamCity 7 Build Configuration which is pretty much only an invocation of a `.ps1` script using various TeamCity Parameters.

I was hoping that might be a simple matter of setting:

* **Script**

> 
> File
> 
> 
>
* **Script File**

> 
> %system.teamcity.build.workingDir%/Script.ps1
> 
> 
>
* **Script execution mode**

> 
> Execute .ps1 script with "-File" argument
> 
> 
>
* **Script arguments**

> 
> %system.teamcity.build.workingDir% -OptionB %BuildConfigArgument% %BuildConfigArg2%
> 
> 
>

And then I would expect:

* if I mess up my arguments and the script won't start, the Build fails
* if my Script.ps1 script throws, the Build fails
* If the script `exit`s with a non-`0` Error Level I want the Build to Fail (maybe this is not idiomatic PS error management - should a .ps1 only report success by the absence of exceptions?)

---

The question: It just doesn't work. How is it supposed to work? Is there something I'm doing drastically wrong that I can fix by choosing different options?