GoCD, from ThoughtWorks in Chicago, is an application lifecycle management and development tool.
N/A
Jira Software
Score 8.1 out of 10
N/A
JIRA Software is an application lifecycle management solution for software development teams. It allows users to create, prioritize and track the progress of tasks across multiple team members, and offers a wide range of integrations. It is offered via the cloud and local servers.
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 …
I prefer using GoCD compared to Jenkins. The UI makes sense, I like the simplicity to hit the 'Play' button for a straightforward deployment of the 'Play +' if you need to override some settings when deploying whereas Jenkins, you have the whole page for each pipeline. The …
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.
The Jira software works well for managing scrum boards and allocating resources to a task. When your Epics and Issues are set up properly, it can give you a good idea of where your team stands and the trajectory of your project. It is not the ideal solution if you need to provide documentation and support to people outside of your product teams or organization. It would benefit from having a public documentation or repository feature.
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.
This is because Jira Software generates a huge profit for an affordable price. Having a tool that makes team management transparent and effective is very valuable.
In addition, the renewal of Jira Software and all Atlassian tools is predictable and clear, as the prices are published on the Atlassian website and there is no pyramid of intermediaries.
JIRA Software is a pretty complex tool. We have a project manager for JIRA who onboarded us, created our board, and taught us the basics. I think it would have been pretty overwhelming to learn without her. JIRA offers so much functionality that I'm not aware of -- I constantly need to Google or ask others about existing features. Also, although they are all under the Atlassian umbrella, I find it difficult to switch between JIRA Software and Confluence.
Our JIRA support is handled internally by members of our Product Support team. It is not supported by a 3rd party. Our internal support will always sent out notifications for downtime which is usually done on the weekend unless it is required to fix a bug/issue that is affecting the entire company. Downtime is typically 3-4 hours and then once the maintenance is complete, another broadcast email is sent out informing the user community that the system is now available for use.
One of their strong points i stheir documentation. Almost all of the basic set up needed within JIRA is available online through atlassian and its easy to find and very precise. The more critical issues need to be addressed as well and hence the rating of 8 instead of a 9.
Take your time implementing Jira. Make sure you understand how you want to handle your projects and workflows. Investing more time in the implementation can pay off in a long run. It basically took us 5 days to define and implement correctly, but that meant smooth sailing later on.
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.
Jira Software has more integrations and has more features than many of its competitors. While some of its competitors do have better UI/UX than Jira Software, they have improved this greatly over time. Atlassian also acquired Trello years ago, so that adds better user interfaces to the system. They do also offer a pretty in-depth library of how to customize the platform that others don't.
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