Likelihood to Recommend Apache Ant is suitable for the scenarios where central repository is not required for your developed application and It has a great architecture with less complexity and the situation where automated configuration is needed then Apache Ant is not suitable for that use case. Apache Ant is easy to use tool.
Read full review Previously, our team used
Jenkins . However, since it's a shared deployment resource we don't have admin access. We tried GoCD as it's open source and we really like. We set up our deployment pipeline to run whenever codes are merged to master, run the unit test and revert back if it doesn't pass. Once it's deployed to the staging environment, we can simply do 1-click to deploy the appropriate version to production. We use this to deploy to an on-prem server and also AWS. Some deployment pipelines use custom Powershell script for.Net application, some others use Bash script to execute the docker push and cloud formation template to build elastic beanstalk.
Read full review Pros Support non java application development as well Flexible XML scripting Support any platform Read full review Pipeline-as-Code works really well. All our pipelines are defined in yml files, which are checked into SCM. The ability to link multiple pipelines together is really cool. Later pipelines can declare a dependency to pick up the build artifacts of earlier ones. Agents definition is really great. We can define multiple different kinds of environments to best suit our diverse build systems. Read full review Cons Better lifecycle management can be done So much configuration details needs to provide Order of the flow needs to define in advance Read full review UI can be improved Location for settings can be re-arranged API for setting up pipeline Read full review Alternatives Considered Compare to other tools like
Eclipse or
Jenkins , Apache Ant is really easy to use tool. and It is very flexible tool which can be learn in couple of days time. And Apache ant help to write the custom java based hooks which enable more capabilities and features in the application
Read full review GoCD is easier to setup, but harder to customize at runtime. There's no way to trigger a pipeline with custom parameters.
Jenkins is more flexible at runtime. You can define multiple user-provided parameters so when user needs to trigger a build, there's a form for him/her to input the parameters.
Read full review Return on Investment Overall positive impact Speed up the development process Easy deployment process Read full review ROI has been good since it's open source Settings.xml need to be backed up periodically. It contains all the settings for your pipelines! We accidentally deleted before and we have to restore and re-create several missing pipelines More straight forward use of API and allows filtering e.g., pull all pipelines triggered after this date Read full review ScreenShots