I am working on defining a general-purpose build template for all our projects -- which I have placed at the \"root project\" level (thanks to this new feature of TeamCity 8
I've had need for conditional build steps on numerous occasions but alas, the feature does not exist at the moment. http://youtrack.jetbrains.com/issue/TW-17939
There's no reason you can't have a template used by many build configurations and then simply disable the build step in the build configs/projects that do not need to create the installer. Disabling the step in an individual build config does not affect the parent template it is based on.
Not as tidy as having a runtime/dynamic method built in to TC but I use it on occasion. I've done iwo has suggested as well.