0

I'm trying to deploy an app with SVN and Vlad the deployer. Vlad and its dependencies are installed and seem OK.

I'm trying the following:

rake prod vlad:update

Being my config/deploy.rb file:

task :prod do
set :application, "xxx"
set :deploy_timestamped, "false"
set :user,       "username"
set :scm_user,   "scmusername"
set :repository, "http://domain.com/svn/app"
set :domain,     "domain.com"
set :deploy_to,  "/home/username/deployments/app"
puts "Production deployment to #{deploy_to}"
end

I have done "rake prod vlad:setup" already, that's fine. But when calling "rake prod vlad:update", I get the following

A    ...file
Exported revision 14.
ln: creating symbolic link `/home/username/deployments/drupalgestalt/releases/20100503164225/public/system' to     `/home/username/deployments/drupalgestalt/shared/system': No such file or directory
rake aborted!
execution failed with status 1: ssh domain.com ln -s 
/home/username/deployments/app/shared/log 
/home/username/deployments/app/releases/20100503164225/log && ln -s 
/home/username/deployments/app/shared/system 
/home/username/deployments/app/releases/20100503164225/public/system && ln -s     
/home/username/deployments/app/shared/pids 
/home/username/deployments/app/releases/20100503164225/tmp/pids

Apparently it complains when creating the ln, but permissions are all set up fine.

Am I doing anything wrong? I'm just starting with Vlad on the assumption it was super-easy to set up. Had played a bit with cap in the past, and I do like Vlad idea.

hbaderts
  • 14,136
  • 4
  • 41
  • 48
xmar
  • 1,729
  • 20
  • 48
  • LOOOOOOOOOL for "Vlad the Deployer" :) :) :) Who came up with that name? From the Logo I assume they are well aware of [where the name comes from](http://en.wikipedia.org/wiki/Vlad_III_the_Impaler) :P – Pekka May 03 '10 at 17:20
  • Yeah, there's a logo you don't see every day. – T.E.D. May 03 '10 at 17:44
  • And after some reading on Vlad the Impaler one becomes really, really glad to live in the 21st century. Brrrrr. – Pekka May 03 '10 at 17:50

2 Answers2

0

It looks like a path error. Try changing your :deploy_to line to the correct path. I'm fairly certain that "/home/username/" is not it.

Cory
  • 5,645
  • 3
  • 28
  • 30
0

more specifically... it looks like you're missing the "shared" directory that its trying to symlink to. Do you have the following directory set up?

/home/username/deployments/drupalgestalt/shared/system

And yes, "username" is a problem too. You'll need to update the following line:

set :deploy_to,  "/home/username/deployments/app"

to

set :deploy_to,  "/home/#{username}/deployments/#{application}"
Taryn East
  • 27,486
  • 9
  • 86
  • 108
  • Hi, thanks for the reply. I actually solved by using the namespace vlad to define the tasks. It looked like it wasn't taken. In theory shouldn't matter though. I created those common directories that Vlad requests - but nothing worked out until I changed the conf to sth like: namespace :vlad do ... desc "Full deployment cycle" remote_task :deploy => [ :update, :start_app ] ... end That is defining the task deploy into the namespace vlad - that was needed, and define it as a remote_task. PS: I changed my username by "username", just not to disclose too much info. That is fine. – xmar May 10 '10 at 09:34
  • Ah cool - yeah, that makes sense. I wasn't sure if it was purposeful or a copy-paste error... :) namespaces huh? I'll have to think about that as I'm having some issues with cap-deploying on dreamhost. Might be worth a try... – Taryn East May 10 '10 at 18:06