Summary
Build automation is the process of automating the creation of a software build and the associated processes including: compiling computer source code into binary code, packaging binary code, and running automated tests. Historically, build automation was accomplished through s. Today, there are two general categories of tools: Build-automation utility This includes utilities like Make, Rake, CMake, MSBuild, Ant, Maven or Gradle (Java) etc. Their primary purpose is to generate build artifacts through activities like compiling and linking source code. Build-automation servers These are general web based tools that execute build-automation utilities on a scheduled or triggered basis; a continuous integration server is a type of build-automation server. Depending on the level of automation the following classification is possible: Makefile - level Make-based tools Non-Make-based tools Build script (or Makefile) generation tools Continuous-integration tools Configuration-management tools Meta-build tools or package managers Other A software list for each can be found in list of build automation software. Build-automation utilities allow the automation of simple, repeatable tasks. When using the tool, it will calculate how to reach the goal by executing tasks in the correct, specific order and running each task. The two ways build tools differ are task-oriented vs. product-oriented. Task-oriented tools describe the dependency of networks in terms of a specific set task and product-oriented tools describe things in terms of the products they generate. Although build servers existed long before continuous-integration servers, they are generally synonymous with continuous-integration servers, however a build server may also be incorporated into an ARA tool or ALM tool. Server types On-demand automation such as a user running a script at the command line Scheduled automation such as a continuous integration server running a nightly build Triggered automation such as a continuous integration server running a build on every commit to a version-control system.
About this result
This page is automatically generated and may contain information that is not correct, complete, up-to-date, or relevant to your search query. The same applies to every other page on this website. Please make sure to verify the information with EPFL's official sources.