Using Vlad + Litespeed

Subscribe to Using Vlad + Litespeed 2 posts, 1 voice

 
Avatar RJ 12 posts

I set up Litespeed for the first time last night and like how simple it seemed to make Rails run under it. Now I’d like to try to deploy my app using vlad, but I can’t seem to get vlad to work.

I followed the instructions on the vlad site for incorporating into my app and deploying all to a single server. When I run rake vlad:setup or rake vlad:update it errors out and the stack trace tells me it’s from vlad:setup_app(first_time) inside the vlad core file. I’m trying to track that down now, but I was just wondering if anyone else had run into that problem before….

 
Avatar RJ 12 posts

Ok…so here’s some specifics.

Not sure if this is a bug or just my usage of vlad.

I’m trying to deploy to litespeed. I’ve read through the source and thought I was going down the right path. Here’s what I’ve got:

config/deploy.rb

require ‘vlad/litespeed’

set :user, “root” set :application, “freightzone” set :domain, ”#{user}@prime8s.com” set :deploy_to, ”/srv/www/freightzone” set :repository, “http://svn.bradysoft.com/freightzone/trunk/freightzone/”

host domain, :web, :db

And then I copied the apache.rb file and created litespeed.rb in /usr/lib/ruby/gems/1.8/gems/vlad-1.1.0/lib/vlad.

require ‘vlad’

namespace :vlad do ## # litespeed web server puts “litespeed loaded” end

set :web_command, "/opt/lsws/bin/lswsctrl"
desc "(Re)Start the web servers"
remote_task :start_web, :roles => :web  do
  run "#{web_command} restart" 
end
desc "Stop the web servers"
remote_task :stop_web, :roles => :web  do
  run "#{web_command} stop" 
end

#

  1. Everything HTTP.

desc "(Re)Start the web and app servers"
remote_task :start do
  Rake::Task['vlad:start_app'].invoke
  Rake::Task['vlad:start_web'].invoke
end
desc "Stop the web and app servers"
remote_task :stop do
  Rake::Task['vlad:stop_app'].invoke
  Rake::Task['vlad:stop_web'].invoke
end

But when I run rake vlad:setup or vlad:update (with rake 0.7.3, 0.8.0, and 0.8.1) I get:

ryan@gaijin-1:/workspaces/rails/freightzone$ rake vlad:setup—trace (in /home/ryan/workspaces/rails/freightzone) litespeed loaded
  • Invoke vlad:setup (first_time)
  • Execute vlad:setup rake aborted! Don’t know how to build task ‘vlad:setup_app’ /usr/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1472:in `[]’ /usr/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:459:in `[]’ /usr/lib/ruby/gems/1.8/gems/vlad-1.1.0/lib/vlad/core.rb:36 /usr/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:392:in `call’ /usr/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:392:in `execute’ /usr/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:392:in `each’ /usr/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:392:in `execute’ /usr/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:362:in `invoke’ /usr/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:355:in `synchronize’ /usr/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:355:in `invoke’ /usr/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1739:in `top_level’ /usr/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1739:in `each’ /usr/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1739:in `top_level’ /usr/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1761:in `standard_exception_handling’ /usr/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1733:in `top_level’ /usr/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1711:in `run’ /usr/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1761:in `standard_exception_handling’ /usr/lib/ruby/gems/1.8/gems/rake-0.7.3/lib/rake.rb:1708:in `run’ /usr/lib/ruby/gems/1.8/gems/rake-0.7.3/bin/rake:7 /usr/bin/rake:19:in `load’ /usr/bin/rake:19

And running vlad:debug gives me:

ryan@gaijin-1:
/workspaces/rails/freightzone$ rake vlad:debug (in /home/ryan/workspaces/rails/freightzone) litespeed loaded
  1. Environment:

user: root web_command: /opt/lsws/bin/lswsctrl current_path: /srv/www/freightzone/current release_path: /srv/www/freightzone/releases/20080111214113 deploy_via: :export deploy_timestamped: true releases: !ruby/object:Proc {}

sudo_cmd: sudo rsync_cmd: rsync shared_path: /srv/www/freightzone/shared previous_release: !ruby/object:Proc {}

sudo_flags: ssh_cmd: ssh repository: http://svn.bradysoft.com/freightzone/trunk/freightzone/ latest_release: !ruby/object:Proc {}

rake_cmd: rake domain: root@prime8s.com application: freightzone current_release: !ruby/object:Proc {}

ssh_flags: svn_cmd: svn sudo_password: !ruby/object:Proc {}

releases_path: /srv/www/freightzone/releases keep_releases: 5 scm_path: /srv/www/freightzone/scm release_name: “20080111214113” rails_env: production deploy_to: /srv/www/freightzone source: !ruby/object:Vlad::Subversion {}

migrate_target: :latest rsync_flags: - -azP -—delete migrate_args: ””
  1. Roles:

:web: root@prime8s.com: {}

:db: root@prime8s.com: {}