Chapter 22. Taming software builds (and other complicated processes) with psake
Jim Christopher
Managing the build for a software project has a lot in common with a child trying to tell a lie. The build and the lie both start as deceptively simple things, but over time missing details are added that demand more scrutiny. As the build (or the lie) expands to sustain itself, the likelihood of a catastrophic failure increases significantly. For both the build master and the child, the consequences of such a failure can be severe.
I learned long ago the fundamental nature of any lie, but only recently have I drawn the same conclusion about build systems: there’s no such thing as a perfect one. The build needs to grow along with the project, swallowing up manual processes and digesting them into an ever-expanding battery of reports and artifacts. Adequate build systems encourage this type of growth; the better ones do it without getting in the way. This chapter introduces you to one of these better build systems: the psake PowerShell module.
Note
psake is pronounced like sake (the Japanese rice wine). It doesn’t rhyme with make as you might expect.