Information Technology Reference
In-Depth Information
IDE
Build Script
CI Server
FIGURE 4-3
Decoupling your build script from the IDE
example, IDEs can make it easy to create build scripts, but they place
the build files and dependencies within the directory structure of the
installed IDE. To test the reusability of an IDE-generated build script,
take the build script and run it on a new machine with only the operat-
ing system installed (and the associated build tool).
Creating a separate build script is important for two reasons.
1. Each developer may be using a different IDE, and it can be diffi-
cult to account for configuration differences in each IDE.
2. A CI server must execute an automated build without human
intervention. Therefore, the same automated build script used
by developers can and should be used by the CI server.
Centralize Software Assets
To build software effectively, all software assets must be centralized.
By centralizing software assets into a version control system, you are
able to better achieve the single command build described earlier in
this chapter. Moreover, centralizing software helps prevent the “but it
works on my machine” problem, where a developer is unable to recre-
ate a defect that occurred in some other environment, such as the test-
ing area or the user's machine. We cover different techniques in
centralizing software assets in this section.
One approach to centralization of software assets is to use the ver-
sion control repository to host all files. In the topic Software Configu-
ration Management Patterns , Stephen Berczuk and Brad Appleton call
 
Search WWH ::




Custom Search