In my job deploying applications on behalf of clients, I keep hitting a recurring problem. So far I've only been using Github as the source to deploy from but I imagine this will count elsewhere as well.
The remote servers have copies of a deploy key stored on them, but my local machine from where I execute cap deploy does not. This would normally work, however capistrano when calling query_revision in the git scm calls... "git ls-remote [EMAIL PROTECTED]:test/test.git HEAD" on the local side. This fails because my local machine does not have access. If I modify query revision to just allow "HEAD" to be returned as a valid revision and never let it call "git ls-remote" then this all works fine. I don't really want to add my own personal key to the deploy keys, I tried that and so far its caused me no-end of problems with having to get the client to remove my personal key before I can log in to Github as myself again and fiddling around with ssh-add to remove identities. So, is it acceptable to allow a revision of HEAD to be passed to the deploy without resolving it as an actual SHA hash? (this seems to work but I'm sure there's a reason this is not being done presently) - or can the Git scm be modified to run the 'git ls-remote' task on a remote server? Subversion can run revision commands locally just fine because you store the scm username and password, but it feels a bit messy to call commands locally with Git when ssh keys are involved. Anyone have any input on this? --~--~---------~--~----~------------~-------~--~----~ To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/capistrano -~----------~----~----~----~------~----~------~--~---
