On-Demand Builds
On-demand builds are a software development practice where builds (compilation, packaging, and testing of code) are triggered only when explicitly requested, such as by a developer or a specific event, rather than running automatically on every code change. This approach contrasts with continuous integration (CI) systems that build on every commit, aiming to reduce resource usage and build times by avoiding unnecessary builds. It is commonly used in environments where builds are resource-intensive or when developers need more control over when to validate changes.
Developers should use on-demand builds in scenarios where builds are computationally expensive, such as with large codebases, complex dependencies, or extensive test suites, to save time and infrastructure costs. It is also beneficial in development workflows that prioritize manual validation, such as in feature branches or during exploratory coding, where frequent automatic builds might be wasteful. This methodology helps balance efficiency with the need for reliable builds, especially in teams with varying commit frequencies.