FinalBuilder is a commercial Windows build automation tool that provides a unified
graphical interface
The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inste ...
to author and execute build projects. Once defined, a project can only be run either via the
graphical interface
The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inste ...
or command line program to execute build projects. A project consists of ''actions'', of which there are around 650 types defined as of version 6. Projects are stored in a zipped XML format.
Developed by VSoft Technologies, FinalBuilder is in competition with
NAnt and
MSBuild
Microsoft Build Engine, or MSBuild, is a set of free and open-source build tools for managed code under the Common Language Infrastructure as well as native C and C++ code. It was first released in 2003 and was a part of .NET Framework. MSBu ...
. It is written in
Delphi
Delphi (; ), in legend previously called Pytho (Πυθώ), in ancient times was a sacred precinct that served as the seat of Pythia, the major oracle who was consulted about important decisions throughout the ancient classical world. The oracl ...
,
C# (FinalBuilder hosts the Microsoft .NET
CLR CLR may refer to:
* Calcium Lime Rust, a household cleaning-product
* California Law Review, a publication by the UC Berkeley School of Law
* Centerline Radius, a term in the tubing industry used to describe the radius of a bend
* Central London ...
),
VBScript
VBScript (''"Microsoft Visual Basic Scripting Edition"'') is an Active Scripting language developed by Microsoft that is modeled on Visual Basic. It allows Microsoft Windows system administrators to generate powerful tools for managing computers ...
, and
JScript
JScript is Microsoft's legacy software, legacy dialect of the ECMAScript standard that is used in Microsoft's Internet Explorer 11 and older.
JScript is implemented as an Active Scripting engine. This means that it can be "plugged in" to OLE Aut ...
. The tool has a mild bias towards building Delphi projects, but it supports a range of compilers making it suitable for building projects in many languages.
History
The first version of FinalBuilder was made publicly available in May, 2000. It quickly gained popularity and found a strong user base, particularly among the
Delphi
Delphi (; ), in legend previously called Pytho (Πυθώ), in ancient times was a sacred precinct that served as the seat of Pythia, the major oracle who was consulted about important decisions throughout the ancient classical world. The oracl ...
community. This was due to it being only one of only two graphical build tools available at the time - the other being
Visual Build Visual Build is GUI software for Windows that enables software developers and build masters to create an automated, repeatable process for software builds. It has built-in support for integrating various development tools into the build process. ...
.
Due to the early adoption by Delphi developers, VSoft initially focused on developing support for Delphi tools. However, in more recent versions, VSoft have expanded FinalBuilder's support for other development environments and frameworks, most notably
Visual Studio
Visual Studio is an integrated development environment (IDE) from Microsoft. It is used to develop computer programs including websites, web apps, web services and mobile apps. Visual Studio uses Microsoft software development platforms such ...
and the
.NET Framework
The .NET Framework (pronounced as "''dot net"'') is a proprietary software framework developed by Microsoft that runs primarily on Microsoft Windows. It was the predominant implementation of the Common Language Infrastructure (CLI) until bein ...
.
In 2008, VSoft released version 6 of FinalBuilder, which included a server application for remotely managing build servers and implementing
Continuous Integration.
Built-in actions
As of version 6, FinalBuilder includes more than 650 different action types. It is beyond the scope of this article to list every action, but the notable actions categories include:
*
Version Control System
In software engineering, version control (also known as revision control, source control, or source code management) is a class of systems responsible for managing changes to computer programs, documents, large web sites, or other collections o ...
actions for automating interaction with 17 different version control systems
*
Compiler
In computing, a compiler is a computer program that translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primarily used for programs that ...
actions for executing a 19 different source code compilers
* Setup/installer programs and help file compiler actions
* Communication actions for sending build notifications with email, news servers, ICQ and MSN
*
Automated Testing tool
In software testing, test automation is the use of software separate from the software being tested to control the execution of tests and the comparison of actual outcomes with predicted outcomes. Test automation can automate some repetitive ...
actions to automate tests as part of a build process
* File and Folder actions for file transfers with
FTP
The File Transfer Protocol (FTP) is a standard communication protocol used for the transfer of computer files from a server to a client on a computer network. FTP is built on a client–server model architecture using separate control and data ...
and
SFTP and local file system management
ActionStudio
ActionStudio is a stand-alone
IDE for developing custom actions or
plugins
Plug-in, plug in or plugin may refer to:
* Plug-in (computing) is a software component that adds a specific feature to an existing computer program.
** Audio plug-in, adds audio signal processing features
** Photoshop plugin, a piece of software t ...
for FinalBuilder. Using
JScript
JScript is Microsoft's legacy software, legacy dialect of the ECMAScript standard that is used in Microsoft's Internet Explorer 11 and older.
JScript is implemented as an Active Scripting engine. This means that it can be "plugged in" to OLE Aut ...
,
VBScript
VBScript (''"Microsoft Visual Basic Scripting Edition"'') is an Active Scripting language developed by Microsoft that is modeled on Visual Basic. It allows Microsoft Windows system administrators to generate powerful tools for managing computers ...
,
PowerShell
PowerShell is a task automation and configuration management program from Microsoft, consisting of a command-line shell and the associated scripting language. Initially a Windows component only, known as Windows PowerShell, it was made open-sou ...
,
IronPython
IronPython is an implementation of the Python programming language targeting the .NET Framework and Mono. Jim Hugunin created the project and actively contributed to it up until Version 1.0 which was released on September 5, 2006. IronPython 2.0 ...
or any other
.NET
The domain name net is a generic top-level domain (gTLD) used in the Domain Name System of the Internet. The name is derived from the word ''network'', indicating it was originally intended for organizations involved in networking technologies ...
languages, users of ActionStudio can create custom FinalBuilder actions to include in their build projects. Action files define the properties, events, options and property pages in an XML file format.
FinalBuilder Server
Since the release of version 6, FinalBuilder has included a
continuous integration server, called FinalBuilder Server.
FinalBuilder Server provides a number of triggers for automating the regular integration of code. Triggers include:
* Time Trigger: for scheduling builds
* File Trigger: for starting builds when file/s or folder/s change
* Run Process Trigger: for executing a process and then conditionally running a build based on the outcome of that process
* Version Control Triggers: for running a build with every check-in to a
version control
In software engineering, version control (also known as revision control, source control, or source code management) is a class of systems responsible for managing changes to computer programs, documents, large web sites, or other collections o ...
system
FinalBuilder Server supports continuous integration with the following
version control
In software engineering, version control (also known as revision control, source control, or source code management) is a class of systems responsible for managing changes to computer programs, documents, large web sites, or other collections o ...
systems:
*
AlienBrain
*
AccuRev
AccuRev is a software configuration management application developed by AccuRev, Inc. and was first released in 1999. In December 2013 AccuRev was acquired by Micro Focus.
Overview
AccuRev is a centralized version control system which uses a ...
*
ClearCase
Rational ClearCase is a family of computer software tools that supports software configuration management (SCM) of source code and other software development assets. It also supports design-data management of electronic design artifacts, thus enab ...
(Base and UCM)
*
Concurrent Versions System
Concurrent Versions System (CVS, also known as the Concurrent Versioning System) is a revision control system originally developed by Dick Grune in July 1986.
CVS operates as a front end to RCS, an earlier system which operates on single fil ...
(CVS)
*
Perforce Helix
Perforce, legally Perforce Software, Inc., is an American developer of software used for developing and running applications, including version control software, web-based repository management, developer collaboration, application lifecycle ma ...
*
StarTeam
StarTeam is a version control system used in software development, especially when a project involves multiple teams in different locations. StarTeam is an SCM and SDLC software application, created by Starbase Corporation, which was acquired ...
*
Subversion
Subversion () refers to a process by which the values and principles of a system in place are contradicted or reversed in an attempt to transform the established social order and its structures of power, authority, hierarchy, and social norms. Sub ...
(svn)
*
Surround SCM
Surround SCM is a software configuration management application developed by Seapine Software, now owned by Perforce since 2017. Perforce integrated the software with its Helix ALM product.
Architecture
Surround SCM has a client–server architec ...
*
Vault
Vault may refer to:
* Jumping, the act of propelling oneself upwards
Architecture
* Vault (architecture), an arched form above an enclosed space
* Bank vault, a reinforced room or compartment where valuables are stored
* Burial vault (enclosure ...
*
Visual SourceSafe
Microsoft Visual SourceSafe (VSS) is a discontinued source control program oriented towards small software development projects. Like most source control systems, SourceSafe creates a ''virtual library'' of computer files. While most commonly used ...
(VSS)
*
Team Foundation Version Control
Azure DevOps Server (formerly Team Foundation Server (TFS) and Visual Studio Team System (VSTS)) is a Microsoft product that provides version control (either with Team Foundation Version Control (TFVC) or Git), reporting, requirements manageme ...
(TFVC)
*
Plastic SCM
Plastic SCM is a cross-platform commercial distributed version control tool developed by Códice Software for Microsoft Windows, Mac OS X, Linux, and other operating systems. It includes a command-line tool, native GUIs, diff and merge tool an ...
See also
*
Software build automation
*
Continuous Integration
References
External links
*{{Official website, https://www.finalbuilder.com/finalbuilder
Build automation
Pascal (programming language) software