vlad the deployer: why do I need a scm folder?

Posted by egarcia on Stack Overflow See other posts from Stack Overflow or by egarcia
Published on 2010-03-03T12:39:32Z Indexed on 2010/03/08 11:36 UTC
Read the original article Hit count: 397

Filed under:
|
|

I'm learning to use vlad the deployer and I've got a question.

Since I'm still learning I don't know what is pertinent to the question and what isn't, so please bear with me if I'm a little verbose.

I've got 2 environments for a new application (test and production) besides my development machine.

I've figured out this way to do the initial setup in my vlad.rake:

namespace :test
  task :set
    set :domain, 'test.myserver.com'
  end
end

namespace :production
  task :set
    set :domain, 'www.myserver.com'
  end
end

This way I can have environment-specific stuff inside the namespaces, and still have shared tasks. For example, this would be the initial setup for test:

rake vlad:test:set vlad:setup vlad:update

This creates the following folders on my test server:

releases/
scm/
shared/
current -> symlink to last release (inside the releases folder)

My question is: what's the point of the scm folder?

Every time I do vlad:update, the following happens:

  1. svn checkout on the scm/ folder above
  2. svn export on the /releases/{date} folder
  3. update current symlink

So scm is a copy of my repository... but then there's an "export" copy of the repository on /releases/{date}. And that is the one used by the application... scm doesn't seem to be used by anyone?

Wouldn't I be just fine without the scm folder?

© Stack Overflow or respective owner

Related posts about ruby-on-rails

Related posts about vlad