Interesting topic, add my personal experiences.
Bamboo - Heavy pipeline tool, old school style, bad experience of its new pipeline as code (bamboo yaml/java spec). Proper pipeline as code for it is long way to go. And seems Atlassian teams ignore customers feedback after IPO, improvement goes too slow.
Jenkins 2 - open source tool, most popular CICD. The new Jenkinsfile
supports pipeline as code, not flat as Yaml, but good enough. There are some plugins for kubernetes deployment already.
Gitlab - Many people here talk about it already.
Bitbucket pipeline - Combine with bitbucket cloud, not cheap.
GoCD - Open source, people has no big interesting with it now in last 2 years. I don’t why, (not good marketing?), I still think it is a great tool.
Concourse - nice open source, suitable for small companies or small projects, but when deal with enterprise CI/CD pipeline, I can’t make the proper fine grained user management, can’t pass security review (My experience was stopped at last year, maybe it has new feature to overcome it, need feedback)
CircleCI 2 with workflow - used to be good for CI, with new feature workflow
, support CD now. But still has issues, such as, I can’t hide secure value in environment variables from build logs.
Travis CI - Free for Github users. Simple to use. I have no experience as pay users.
Drone - Open source, written by Golang, I have experience with its version to 0.8.x. Can be installed with in-house solution, Good for CI, but when deal with CD, I still feel some difficulties. Not sure if any improvement for the CD now.
Buildkite - only open source for its agents, not server/UI, so you can build and manage your own agents, but you need export build logs to public cloud-based buildkite server/UI.
Teamcity - Seems Windows projects like it, I am Linux users. No comments on it.
AWS CodePipeline - manage service. Tightly with its own CodeCommit service, can integrate with other sources, such as Github.