Hacker News new | past | comments | ask | show | jobs | submit login
Go Continuous Delivery is now open source (github.com/gocd)
112 points by automagical on April 25, 2014 | hide | past | favorite | 46 comments



As if Google's Go programming language was not already named poorly enough, now somebody creates a CD service called Go. Very confusing!


ThoughtWorks first released the commercial product that would become Go in 2008. It was rebranded later, shortly after the public announcement of Golang. Yes, it was a confusing move, but at the time there was no reason to believe that a programming language might conflict with a continuous delivery tool. Golang has produced a large and robust community, so of course it's confusing now. But it didn't come out of nowhere.


Might be hard to do, since it has been around for a while, but here's the Github issue on the project about the name: https://github.com/gocd/gocd/issues/131


apparently Thoughtworks has been building the Go continuous delivery tool as a custom product from even before Google made Go! I think the word "GO" hasn't been trademarked yet.


On their website it says: "Go™ is officially Open Source" [1]. So maybe they trademarked it?

[1] http://www.thoughtworks.com/


Yeah, we did trademark it. Trademark's are pretty narrow - computer language isn't likely to be confused with a CD tool.


I spent 5 minutes searching for the ".go" code before back-tracking to the project site[1] to verify that it was a Java/JRuby project.

Even if they started the project first, it can't take that long to add 1 line to the readme for clarity.

[1] http://www.go.cd/contribute/



Speaking of golang (go), this slide [0] lists breaking new ground in programming language research as a non-goal. That may include language name research.

[0] http://talks.golang.org/2014/research.slide#7


This is exciting. I've used Go-CI (that's what I'm calling it) before and it's a very cool product for pipelining. Kudos to TW for open-sourcing it. Time to get the plugins rolling!


The name gocd has been getting quite a bit of traction on twitter and such, and that's the name of the GitHub repo. Searching for that might be more effective.


The build pipeline view for Go is great, but it lacks in extensibility and a rich plugin community (unlike jenkins).

Hopefully this will all change with it now being open source...


That's one of the big reasons for Going OSS.


The latest 14.1 release brings in ability to create task plugins. Exciting times ahead!


Congrats to the ThoughtWorks team! Go is a great product, and its open-sourcing is a very welcome move.


I'm curious why this is a Java/JRuby on Rails project and not natively written in Go itself. Does anyone have some insight here? Is it that the project requirements themselves lean towards Rails tooling? I'm sure I'm not the only one surprised by this.

EDIT: Ah, I'm not the smartest cookie in the jar. It, in fact, has nothing to do with Golang. I agree with the poster below who mentions this criticism.


Project site - http://www.go.cd/


Yes! We are using it & loving it! Here's our experience with Go: https://medium.com/technology-cvsintellect/423519a24a33


If you want to try it out painlessly, I've written a post [0] and implemented Vagrant playground where you can experiment with go. [1]

[0]: http://www.ikusalic.com/blog/2014/03/12/using-thoughtworks-g... [1]: https://github.com/ikusalic/vagrant-go


For another open source alternative: http://stridercd.com/


The pipeline features of gocd seems very nice. However, last time I looked at gocd it did not support feature branches. As far as I could tell, it was not due to technical reasons but rather due to the whole feature branch vs continuous integration philosophy differences.

Any idea whether feature branch support will be added in the future?


This is amazing. Go is a great CI/CD server and I'm happy that it is now open source.

Jenkins is a good CI ecosystem that lacks a good UI and a good API. Wonder how Go stacks up on the API and Plugins front with Jenkins.


This should help: https://news.ycombinator.com/item?id=7647742. Plugins & API are not the strongest points of Go. But thats in our immediate roadmap: https://groups.google.com/forum/#!searchin/go-cd/roadmap/go-.... So it should improve soon!


CruiseControl is also from ThoughtWorks, right? I would be curious why one company produces two tools for the same jobs. What do they do differently?


Go was their (our) commercial product which initially started from CruiseControl as the base. Go is a whole different beast and has gained a lot of features over the years. Now, it has been open sourced as well.


thanks!


Is this for java only? I'd love to use it instead of msdeploy. Does anyone have any experience with such configiration?


It's definitely not Java only, but it's also not really a replacement for MSDeploy. Instead, Go would run MSDeploy as the last step in a deployment pipeline. Check out http://bit.ly/RSAz3U for an MS based pipeline (though sadly for your question not MSDeploy)


I hope this helps- but Go is not a build tool - but a deployment pipeline tool.

Go runs builds on your machines and can call out to various build tools- like Ant, Nant, rake - or if all else fails- the shell. So anything you can run on the command line of your machine (either windows or *nix) can be automated by Snap.


Have you looked at octopus deploy? (octopusdeploy.com/) We've switched over all of our server deployments to it and it's great.


side note: an interesting build tool that i've been using for past couple of years is Quickbuild - http://www.pmease.com/. take a look if you've got a lot of build configurations could be streamlined by using inheritance.


Where are the screenshots? I don't want to install this to get a first view of how it looks and works.


How does Go.cd measure up against e.g. Jenkins or Hudson?


The answer to this question probably deserves a blog post. But, as mentioned by @willejs here (https://news.ycombinator.com/item?id=7646496), Jenkins has a well established community of plugins and plugin writers and so, is quite extensible. Go has good visualisation and good modeling capability, allowing you to model complex build and deployment workflows using a combination of tasks running in parallel and serial.

Both have many more pros and cons. To do justice to it, it needs a blog post. Let's see. Maybe I'll write one soon.

EDIT: This mailing list post has some more information: https://groups.google.com/forum/#!searchin/go-cd/jenkins/go-...


Here's a google group topic talking about it. https://groups.google.com/forum/#!searchin/go-cd/jenkins/go-.... Hope it helps.


How does GoCD compare to Jenkins?


I replied to a similar question asked earlier on the current page. Here's the link: https://news.ycombinator.com/item?id=7647742


Thanks!


Poor choice for a name, it clashes with Googles Go(lang).


Both Go from TW and the other Go! Programming language[0] is older than the Go language from Google.

[0]http://en.wikipedia.org/wiki/Go!_(programming_language)


The name change to "Go" happened after Go(lang)'s public release. Kind of a dumb move.


I'd used Go (continuous delivery) at University before I'd heard about Go(lang). Yes, whilst in the perfect world everything would be named a short, memorable, unqiue (,descriptive?) name - that's not the case. The two items in question are distinct enough that searching for golang vs go cd will produce relevant results.


How hilarious, considering Go-lang stole its name too.


Created an issue for that: https://github.com/gocd/gocd/issues/131


Let me throw my hat in the ring:

Title: Google Announces Go Programming Language

My snark: Poor choice for a name, it clashes with the board game Go.


I would have said: that is going to be hard to search for...at least dart is a bit more searchable.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: