updated about 4 years ago; latest suggestion about 4 years ago
This proposal has been withdrawn...
As a developer, your job does not stop with writing clean, well-documented and well-tested code. You get paid for working, in production code. So how do you consistently deliver your code into production? How you make it part of your CI process? Does devops do it for you via Chef or Puppet?
This talk is meant to explore the current deployment processes, present their strengths and weaknesses and provide a simple alternative. This alternative has no dependencies (no, not even Ruby) and can be applied in the same way to your trusted Rails, the hated PHP or your look-ma-no-tests node.js.
This talk builds on my What would Jason Bourne do? Feb '13 LRUG lightie (SkillsMatter video). As a matter of fact, I will give my first version of this talk at the March LRUG. I'm proposing a more polished version for Ruby Manor, improved with all the constructive suggestions from your fellow lruggers.
I was thinking 70% about the deployment/CI/production setup, 30% about how this utility fits into the landscape.
I will be giving Jenkins as the CI example, but the utility can be used in any context that supports running shell commands (this includes hubot).
Not suitable - meaning that it wasn't tried - for large scale (10+ instances), failure handling is rather rough (all or nothing approach). It's just a simple tool, following the unix philosophy, so it's not a magic bullet, it needs to be used alongside other heavy lifters (chef, puppet, process managers etc.). Oh, and it will never work on Windows : ).
Do you have any idea roughly what proportion of the presentation would be about general deployment/CI issues, as opposed to speaking specifically about the "deliver" tool?
Will you be talking about any specific CI setup? (Jenkins, Travis, Cruisecontrol?...)
I'd also think it would be interesting to think about any weaknesses that "deliver" has. What is it not suitable for?
I've no idea what this talk is going to be about. A series of examples from your experience? What are the problems you can help developers solve?