freeCodeCamp/guide/english/developer-tools/build-automation/index.md

2.6 KiB

title
Build Automation

Build Automation

Build is a version of software program. The term is used in reference to a program that is still in development. 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. Build automation software automates commonly performed tasks in the software development process. Build is automated when the steps to creating a software are repeatable, require no direct human intervention and can be performed at any time with no information other than what is stored in the source code control repository. Build automation software often integrates with software testing products, version control systems, IDEs, bug tracking tools and PaaS providers. Historically, build automation was accomplished through 'makefiles'. Today, there are two general categories of tools for build automation:

- Build automation utility:

Its primary purpose is to generate build artifacts through activities like compiling and linking source code.

- Build automation servers:

They are general web based tools that execute build automation utilities on a scheduled or trigger basis; continuous integration server is a type of build automation server.

There are three subcategories to Build automation:

  • Continuous Integration
  • Configuration management
  • other Build automation.

Below is a list of some notable tool associated with automating build processes:

  • GNU make
  • make
  • mk
  • Apache Ant
  • BitBake
  • Boot
  • Ninja
  • Qt Build system
  • Rake
  • Stack
  • Psake
  • MSBuild
  • Visual Build
  • Tweaker
  • Waf
  • Jenkins
  • TeamCity and others.

More Information:

What is Build Automation?
List of Build Automation Software
Build Automation - Wikipedia
Webopedia
Build Automation