
Screwdriver: Yahoo's Continuous Delivery Build System for Dynamic Infrastructure - photonwins
https://yahooeng.tumblr.com/post/155765242061/open-sourcing-screwdriver-yahoos-continuous
======
ars
For the confused: CD = Continuous Delivery, not Compact Disc.

Mods: Perhaps edit the title?

~~~
nhumrich
I felt like the CD = continuous delivery was obvious. But perhaps I've spent
to much time on Dev Ops. Maybe simply saying CI/CD would be sufficient.

~~~
toyg
CI yes, CD no - in my mind CD is pretty much fixed to compact disc for
eternity.

When I first read the title I thought "oh, Yahoo must have had some cool
automatic system to burn CDs that is probably so old and pointless that they
are opensourcing it now as part of their mothballing". I was fairly
disappointed to see it's Yet Another CI Tool.

~~~
jacobush
Haha, I had exactly this...

------
popobobo
I was gonna put up something full of sarcasm. Then I realize engineers are the
least responsible for enterprise business failure. This could happen to any of
us. Company goes under water and job security fades away. Thanks for
contributing to the open source world. And best of luck to all of those
brother and sister engineers.

~~~
chris_wot
I think it's extremely unlikely that the higher ups who ran Yahoo into the
ground had any idea of the talent they wasted. Nor do I think they would care
then, or now even if they did. After all, apparently working from home was
verboten at some stage during MM's reign...

------
TheAceOfHearts
Although Yahoo doesn't seem to be doing very well recently, they've done lots
of great engineering. I recently looked through the organization's Github [0]
and discovered a few nice packages.

I'd happily pay for a good managed CD build system capable of handling
projects / products with multiple dependencies.

Right now I use CircleCI along with a bunch of scripts, and it works, but it's
not great. One problem with existing CI tools that I've used is they only
handle a single git repo, so extra automation has to be done ad-hoc. It's not
terribly difficult, but it's tedious and it doesn't give you any kind of
safety guarantees.

[0] [https://github.com/yahoo](https://github.com/yahoo)

~~~
perlgeek
Fwiw [https://gocd.io/](https://gocd.io/) handles pipelines (or graphs of
multiple piplines) with several git repos just fine. That's on-premise, but
not hard to run on your own.

There's Snap CI, which is by ThoughtWorks (just as Go CD), and that's in the
cloud. I don't know if they use the same code base, but it might be worth
investigating if they can deal with multiple repos in a sensible way.

~~~
specialist
We just switched to GoCD. And here I thought Jenkins sucked.

I've never missed simple shell scripts, builds triggered by commits, tailing
logs so much. Being closer to the metal. Back then, I had no idea the obvious
solution was called "continuous integration".

GoCD has a pretty dash board though. So I guess that's progress.

~~~
edude03
You should try concourse.ci then. I tried Circle gitlab go and concourse and
concourse is the best so far.

------
krakensden
The screenshot looks a bit like Chef's Automate. The config example looks like
Concourse's config ([http://docs.screwdriver.cd/user-
guide/configuration/index#ya...](http://docs.screwdriver.cd/user-
guide/configuration/index#yaml-configuration)), but it doesn't look like they
have task files.

They should write up a comparison to GoCD, Teamcity, Concourse, Jenkins, Chef
Automate, etc. It can be pretty hard to evaluate these things without losing a
month.

~~~
snnn
Chef cannot rollback. Chef is mainly for deployment but I think screwdriver
focuses on CI. CD is not his business.

~~~
krakensden
I mean, Chef Automate doesn't support rollback after all the usual toe dipping
([https://docs.chef.io/workflow.html](https://docs.chef.io/workflow.html)),
but that isn't terrible. Automatic rollback generally comes with a fat "but
not the database" asterisk, and if you are building something general, it's a
pretty reasonable decision.

Screwdrivers docs all seem to mention CD, not sure why you'd say that.

------
jstoja
Just spent the last 15minutes on it and my first impression is that
documentation is still too poor to use it professionally. Even though, after a
couple of tries, it looks like an awesome start and I'll follow this up with
great attention.

Good job to the team for building an open-source tool for CD!

------
simooooo
Anyone know of a tool that can create those nice diagrams?

------
ilovefood
Honestly the yahoo engineers are doing a fantastic job. First the NSFW open
source model, now this, easy to use (got started in 3 minutes on my servers).
A whole lotta love from Germany guys and gals <3

------
hubert123
I just tried running the docker image from the readme, it doesnt exist?
docker.io/screwdrivercd/api

~~~
stjohnjohnson
Oh, thanks! PR submitted: [https://github.com/screwdriver-
cd/screwdriver/pull/428](https://github.com/screwdriver-
cd/screwdriver/pull/428)

------
DeepYogurt
So if I'm already using gitlab or something similar is there a reason I should
consider switching?

Edit: I also read this as compact disk at first.

------
tukelully
"A peek under the purple rug!" sounds awfully suggestive. I hope that's as
obvious to everyone else.

~~~
throwanem
I think that's just you, buddy. The only thing it suggests to me is the need
for a more engaging tagline.

(But maybe it's just a matter of perspective. I once knew a redheaded woman
who'd replaced a specific subset of her body hair with a brightly colored
flame tattoo, which against the very pale skin typical of redheads produced an
effect both immediately striking, and quite memorable at what is now a
considerable distance of time. Had she instead dyed that hair purple, perhaps
I'd be more likely to see this matter in the same way you seem to.)

