7 Awesome Open Source Build Automation Tools For Sysadmin/Developers
build automation is a vital tool for devops, sysadmins, and developers.
It is nothing but scripting or automating the process of compiling
source code into binary. Sysadmins can use build tools to manage and
update config files. Following is a list of awesome open source and
popular tools associated with automating build processes on Linux or
Unix-like system.
1: GNU make and co – One of the most popular automation build tool
GNU
make command used to maintain, compile and build programs on Linux and
Unix-like system. It is one of the most popular automation build tool
for and uses a TEXT file format:
Managing config files
Updating config files
Compile and build simple to complex programs or libraries
By default the TEXT file is named Makefile. Make has many clones and rewrites. Here are some of the popular options:
BSD make – Popular on FreeBSD/NetBSD/OpenBSD and clones.
make – A classic Unix build tool.
SunPro make – A Solaris Unix build tool.
GNU Make – The standard implementation of make for Linux and OS X and *BSD.
If you ever run a command like “./configure && make && make install“,
you used one of the make tools to build software on your
platform.Usually above tools are installed as part of operating system.
2: Apache Ant – Popular for Java platform development
Another
very popular automation build tool, similar to make, written in Java
and uses an XML file format. Naturally, it is entirely suited to
building Java-based software. By default the XML file is called
build.xml.
Gradel
is a free and open source build automation system. It extends upon the
Apache Ant and Maven. It used DSL (“domain-specific language”) instead
of the XML format used by Maven/Ant. Another addition is DAG (“directed
acyclic graph”) to find the correct order in which tasks can be build
and run.
4: Apache Maven – Yet another build automation tool for Java
Apache
Maven is a free and open source build automation system. It does
dependency management and builds and mostly used for Java projects.
However, you are not limited to Java based projects; you can use any
other programming language such as Ruby, Python, C#, Scala and other
computer programming languages.
5: Grunt – Build too for front-end web development
Grunt
is very popular among Javascript front end developers as a JavaScript
task runner. It is a free and open-source project. It uses a Gruntfile
for unit testing, minification of code, compilation and much more.
Rake
is a free and open-source build automation software. It is a Make-like
tool but created in Ruby. You can specify all build tasks and deps in
Ruby syntax. It uses the TEXT file called Rakefiles to build your
software. Rake is part of the Ruby version 1.9+.
No comments:
Post a Comment