views:

197

answers:

2

Like every commit has a reason and purpose, I think each deploy has a purpose and reason. Source code commits have a comment. But deploying doesn't have any.

How do I record a reason and purpose for each deploy automatically?

I need to keep a record of:

  • Who deployed to where and what time.
  • Why deployed? Bug fixes? Feature update? Emergency fix not on iteration plan?
  • Which git or svn ref was used?

Have anybody felt the need for this kind of system? How do you feel about my approach? How can I achieve my goal? I'm currently using Capistrano for deployment.


A bounty added. I'd like to hear more stories from different developers who are doing "continuous deployment".


I found two services that do deploy tracking:

+1  A: 

Webistrano - http://wiki.github.com/peritor/webistrano - is a web interface to capistrano, that also tracks who's deployed what and when, so that could be worth investigating.

NeilS
This is an interesting approach. Hooking up with Redmine or something might be cooler, but I will look into it.
TK
It would be ideal if software like Redmine has the feature built-in.
TK
+1  A: 

My current project uses a modified version of the apinsein's git-deployment recipe, which (when you tell cap to do a deploy) will tag current HEAD with a Git tag (which gives you all the benefits of normal Git commits).

RyanWilcox