On Feb 25, 2007, at 5:53 PM, Nick wrote:

So, how does the trunk directory get filled ? I have a rails
application on my development machine.

You need to import your project into subversion. Look at "svn import" to see how that's done. Once you've got your application checked into your repository, it should deploy fine; note that you'll need to be diligent about calling "svn commit" whenever you change anything, to make sure your repository is always in sync with your working copy.

- Jamis


On Feb 25, 7:43 pm, Jamis Buck <[EMAIL PROTECTED]> wrote:
On Feb 25, 2007, at 5:31 PM, Nick wrote:

That /trunk/ directory is empty

That's the problem, then; you're deploying an empty directory. The
'deploy' task (and friends) assume you are deploying a Rails
application, and that it conforms to the standard Rails application
directory tree.

- Jamis



On Feb 25, 6:39 pm, Jamis Buck <[EMAIL PROTECTED]> wrote:
What is the list of files and directories immediately under / trunk in
your repository:

   http://192.168.1.4/svn/#{application}/trunk

Is /trunk/public a directory?

- Jamis

On Feb 25, 2007, at 4:25 PM, Nick wrote:

I login using ssh and the "root" account. I know it is not
safe... The
permissions of the /var/www/ folder are open for root.

Thanks,

Nick,

On Feb 25, 5:50 pm, Clayton Cottingham <[EMAIL PROTECTED]> wrote:
Top of my head...

Check permissions on the parent folder too

Also check for a sticky bit?

-----Original Message-----
From: [email protected]
[mailto:[EMAIL PROTECTED] On

Behalf Of Jamis Buck
Sent: Sunday, February 25, 2007 2:44 PM
To: [email protected]
Subject: [Capistrano] Re: Troubles deploying first rails
application

The following is the error that is causing the deploy to fail:

  ** [out :: 192.168.1.4] ln: creating symbolic link `/var/www/
faresearch/releases/20070225214903/public/system' to `/var/www/
faresearch/shared/system': No such file or directory

But I have no idea _why_ it is causing it to fail. I worked with
another person, who was getting this error when deploying to RHEL,
and he verified that the directories in question all exist. Has
anyone else dealt with this, and come up with a solution? I'm at a
loss.

- Jamis

On Feb 25, 2007, at 2:54 PM, Nick wrote:

Dear all,

I'm having troubles deploying my first raisl application from my
MacBook to my Ubuntu 6.10 linux box.

Here is the error message I get when doing cap cold_deploy:

cap setup
  * executing task setup
* executing "umask 02 &&\n mkdir -p /var/www/faresearch / var/
www/
faresearch/releases /var/www/faresearch/shared /var/www/
faresearch/
shared/system &&\n mkdir -p /var/www/faresearch/shared/log &&\n
mkdir -p /var/www/faresearch/shared/pids"
    servers: ["192.168.1.4"]
Password:
    [192.168.1.4] executing command
    command finished
nicolas-hinzes-computer:~/Documents/Mezzoo.com/faresearch Nick$
cap
cold_deploy
  * executing task cold_deploy
  * executing task update
 ** transaction: start
  * executing task update_code
  * querying latest revision...
  * executing "if [[ ! -d /var/www/faresearch/releases/
20070225214903 ]]; then\n svn co --no-auth- cache -
q -r1
http://192.168.1.4/svn/faresearch/trunk/var/www/faresearch/
releases/
20070225214903 &&\n              (test -e /var/www/faresearch/
revisions.log || (touch /var/www/faresearch/revisions.log && chmod 666 /var/www/faresearch/revisions.log)) && echo `date +\"%Y-% m-%d
%H:
%M:%S\"` $USER 1 20070225214903 >> /var/www/faresearch/
revisions.log;
\n            fi"
    servers: ["192.168.1.4"]
Password:
    [192.168.1.4] executing command
    command finished
  * executing task set_permissions
  * executing "chmod -R g+w /var/www/faresearch/releases/
20070225214903"
    servers: ["192.168.1.4"]
    [192.168.1.4] executing command
    command finished
* executing "rm -rf /var/www/faresearch/releases/ 20070225214903/
log /
var/www/faresearch/releases/20070225214903/public/system &&\n
ln -
nfs /var/www/faresearch/shared/log /var/www/faresearch/releases/
20070225214903/log &&\n    ln -nfs /var/www/faresearch/shared/
system /
var/www/faresearch/releases/20070225214903/public/system"
    servers: ["192.168.1.4"]
    [192.168.1.4] executing command
 ** [out :: 192.168.1.4] ln: creating symbolic link `/var/www/
faresearch/releases/20070225214903/public/system' to `/var/www/
faresearch/shared/system': No such file or directory
    command finished
*** [set_permissions] transaction: rollback
  * [set_permissions] rolling back
  * [update_code] rolling back
* executing "rm -rf /var/www/faresearch/releases/ 20070225214903"
    servers: ["192.168.1.4"]
    [192.168.1.4] executing command
    command finished
command "rm -rf /var/www/faresearch/releases/20070225214903/ log /
var/
www/faresearch/releases/20070225214903/public/system &&\\\n
ln -
nfs /var/www/faresearch/shared/log /var/www/faresearch/releases/
20070225214903/log &&\\\n    ln -nfs /var/www/faresearch/shared/
system /var/www/faresearch/releases/20070225214903/public/ system"
failed on 192.168.1.4

Here is my deploy.rb:

require 'mongrel_cluster/recipes'

# This defines a deployment "recipe" that you can feed to
capistrano
# (http://manuals.rubyonrails.com/read/book/17). It allows you to
automate
# (among other things) the deployment of your application.

#
================================================================ ==
==
==
=======
# REQUIRED VARIABLES
#
================================================================ ==
==
==
=======
# You must always specify the application and repository for every
recipe. The
# repository must be the URL of the repository you want this
recipe to
# correspond to. The deploy_to path must be the path on each
machine
that will
# form the root of the application path.

set :application, "faresearch"
set :repository, "http://192.168.1.4/svn/#{application}/trunk";

#
================================================================ ==
==
==
=======
# ROLES
#
================================================================ ==
==
==
=======
# You can define any number of roles, each of which contains any
number of
# machines. Roles might include such things as :web, or :app,
or :db,
defining
# what the purpose of each machine is. You can also specify
options
that can
# be used to single out a specific subset of boxes in a particular
role, like
# :primary => true.

role :web, "192.168.1.4"
role :app, "192.168.1.4"
role :db,  "192.168.1.4", :primary => true

#
================================================================ ==
==
==
=======
# OPTIONAL VARIABLES
#
================================================================ ==
==
==
=======
set :deploy_to, "/var/www/faresearch" # defaults to "/u/apps/
#{application}"
set :mongrel_conf, "#{current_path}/config/mongrel_cluster.yml"
set :user, "root" # defaults to the currently logged in
user
# set :scm, :darcs               # defaults to :subversion
# set :svn, "/path/to/svn" # defaults to searching the PATH # set :darcs, "/path/to/darcs" # defaults to searching the PATH # set :cvs, "/path/to/cvs" # defaults to searching the PATH
# set :gateway, "gate.host.com"  # default to no gateway

#
================================================================ ==
==
==
=======
# SSH OPTIONS
#
================================================================ ==
==
==
=======
# ssh_options[:keys] = %w(/path/to/my/key /path/to/another/key)
# ssh_options[:port] = 25

#
================================================================ ==
==
==
=======
# TASKS
#
================================================================ ==
==
==
=======
# Define tasks that run on all (or only some) of the machines.
You can
specify
# a role (or set of roles) that each task should be executed
on. You
can also
# narrow the set of servers to a subset of a role by specifying
options, which
# must match the options given for the servers to select
(like :primary => true)

desc <<DESC
An imaginary backup task. (Execute the 'show_tasks' task to
display
all
available tasks.)
DESC
task :backup, :roles => :db, :only => { :primary => true } do
  # the on_rollback handler is only executed if this task is
executed
within
# a transaction (see below), AND it or a subsequent task fails.
  on_rollback { delete "/tmp/dump.sql" }

  run "mysqldump -u theuser -p thedatabase > /tmp/dump.sql" do |
ch,
stream, out|
    ch.send_data "thepassword\n" if out =~ /^Enter password:/
  end
end

# Tasks may take advantage of several different helper methods to
interact
# with the remote server(s). These are:
#
# * run(command, options={}, &block): execute the given command
on all
servers
#   associated with the current task, in parallel. The block, if
given, should
#   accept three parameters: the communication channel, a symbol
identifying the
#   type of stream (:err or :out), and the data. The block is
invoked
for all
#   output from the command, allowing you to inspect output and
act
#   accordingly.
# *

...

read more ยป

 smime.p7s
3KDownload


--~--~---------~--~----~------------~-------~--~----~
To unsubscribe from this group, send email to capistrano- [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/ group/capistrano
-~----------~----~----~----~------~----~------~--~---


Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to