在capistrano部署期间缺少文件夹错误

时间:2012-02-27 16:56:33

标签: ruby-on-rails deployment capistrano

我不确定我是否理解在尝试使用capistrano部署rails应用时遇到的错误消息。部署失败是因为一些丢失的目录(更具体地说:图像,样式表和javascript)但我不确定为什么在发布目录的公共目录中搜索这些目录。这些文件夹应该位于我的app目录的assets目录中,但是capistrano搜索/ images,/ stylesheets和/ javascript的release文件夹的公共文件夹?知道为什么吗?知道我做错了什么吗?任何帮助将不胜感激!终端输出低于。

user-MacBook-Pro:projectfolder myuser$ cap deploy
  * executing `deploy'
  * executing `deploy:update'
 ** transaction: start
  * executing `deploy:update_code'
    updating the cached checkout on all servers
    executing locally: "git ls-remote ssh://git@server.example.ca/usr/local/git_root/project.git master"
    command finished in 1700ms
  * executing "if [ -d /usr/local/www/sites/project.example.ca/public/shared/cached-copy ]; then cd /usr/local/www/sites/project.example.ca/public/shared/cached-copy && git fetch -q origin && git fetch --tags -q origin && git reset -q --hard 9d2c784bafe0f8bd15f831f2ec722b215191e6fa && git clean -q -d -x -f; else git clone -q ssh://git@server.example.ca/usr/local/git_root/project.git /usr/local/www/sites/project.example.ca/public/shared/cached-copy && cd /usr/local/www/sites/project.example.ca/public/shared/cached-copy && git checkout -q -b deploy 9d2c784bafe0f8bd15f831f2ec722b215191e6fa; fi"
    servers: ["project.example.ca"]
    [project.example.ca] executing command
    [project.example.ca] rvm_path=/usr/local/rvm /usr/local/rvm/bin/rvm-shell 'ruby-1.9.2-p290@project' -c 'if [ -d /usr/local/www/sites/project.example.ca/public/shared/cached-copy ]; then cd /usr/local/www/sites/project.example.ca/public/shared/cached-copy && git fetch -q origin && git fetch --tags -q origin && git reset -q --hard 9d2c784bafe0f8bd15f831f2ec722b215191e6fa && git clean -q -d -x -f; else git clone -q ssh://git@server.example.ca/usr/local/git_root/project.git /usr/local/www/sites/project.example.ca/public/shared/cached-copy && cd /usr/local/www/sites/project.example.ca/public/shared/cached-copy && git checkout -q -b deploy 9d2c784bafe0f8bd15f831f2ec722b215191e6fa; fi'
    command finished in 1344ms
    copying the cached version to /usr/local/www/sites/project.example.ca/public/releases/20120225025005
  * executing "cp -RPp /usr/local/www/sites/project.example.ca/public/shared/cached-copy /usr/local/www/sites/project.example.ca/public/releases/20120225025005 && (echo 9d2c784bafe0f8bd15f831f2ec722b215191e6fa > /usr/local/www/sites/project.example.ca/public/releases/20120225025005/REVISION)"
    servers: ["project.example.ca"]
    [project.example.ca] executing command
    [project.example.ca] rvm_path=/usr/local/rvm /usr/local/rvm/bin/rvm-shell 'ruby-1.9.2-p290@project' -c 'cp -RPp /usr/local/www/sites/project.example.ca/public/shared/cached-copy /usr/local/www/sites/project.example.ca/public/releases/20120225025005 && (echo 9d2c784bafe0f8bd15f831f2ec722b215191e6fa > /usr/local/www/sites/project.example.ca/public/releases/20120225025005/REVISION)'
    command finished in 945ms
  * executing `deploy:finalize_update'
  * executing "chmod -R g+w /usr/local/www/sites/project.example.ca/public/releases/20120225025005"
    servers: ["project.example.ca"]
    [project.example.ca] executing command
    [project.example.ca] rvm_path=/usr/local/rvm /usr/local/rvm/bin/rvm-shell 'ruby-1.9.2-p290@project' -c 'chmod -R g+w /usr/local/www/sites/project.example.ca/public/releases/20120225025005'
    command finished in 921ms
  * executing "rm -rf /usr/local/www/sites/project.example.ca/public/releases/20120225025005/log /usr/local/www/sites/project.example.ca/public/releases/20120225025005/public/system /usr/local/www/sites/project.example.ca/public/releases/20120225025005/tmp/pids &&\\\n      mkdir -p /usr/local/www/sites/project.example.ca/public/releases/20120225025005/public &&\\\n      mkdir -p /usr/local/www/sites/project.example.ca/public/releases/20120225025005/tmp"
    servers: ["project.example.ca"]
    [project.example.ca] executing command
    [project.example.ca] rvm_path=/usr/local/rvm /usr/local/rvm/bin/rvm-shell 'ruby-1.9.2-p290@project' -c 'rm -rf /usr/local/www/sites/project.example.ca/public/releases/20120225025005/log /usr/local/www/sites/project.example.ca/public/releases/20120225025005/public/system /usr/local/www/sites/project.example.ca/public/releases/20120225025005/tmp/pids &&\
    [project.example.ca] mkdir -p /usr/local/www/sites/project.example.ca/public/releases/20120225025005/public &&\
    [project.example.ca] mkdir -p /usr/local/www/sites/project.example.ca/public/releases/20120225025005/tmp'
    command finished in 920ms
  * executing "ln -s /usr/local/www/sites/project.example.ca/public/shared/system /usr/local/www/sites/project.example.ca/public/releases/20120225025005/public/system"
    servers: ["project.example.ca"]
    [project.example.ca] executing command
    [project.example.ca] rvm_path=/usr/local/rvm /usr/local/rvm/bin/rvm-shell 'ruby-1.9.2-p290@project' -c 'ln -s /usr/local/www/sites/project.example.ca/public/shared/system /usr/local/www/sites/project.example.ca/public/releases/20120225025005/public/system'
    command finished in 922ms
  * executing "ln -s /usr/local/www/sites/project.example.ca/public/shared/log /usr/local/www/sites/project.example.ca/public/releases/20120225025005/log"
    servers: ["project.example.ca"]
    [project.example.ca] executing command
    [project.example.ca] rvm_path=/usr/local/rvm /usr/local/rvm/bin/rvm-shell 'ruby-1.9.2-p290@project' -c 'ln -s /usr/local/www/sites/project.example.ca/public/shared/log /usr/local/www/sites/project.example.ca/public/releases/20120225025005/log'
    command finished in 920ms
  * executing "ln -s /usr/local/www/sites/project.example.ca/public/shared/pids /usr/local/www/sites/project.example.ca/public/releases/20120225025005/tmp/pids"
    servers: ["project.example.ca"]
    [project.example.ca] executing command
    [project.example.ca] rvm_path=/usr/local/rvm /usr/local/rvm/bin/rvm-shell 'ruby-1.9.2-p290@project' -c 'ln -s /usr/local/www/sites/project.example.ca/public/shared/pids /usr/local/www/sites/project.example.ca/public/releases/20120225025005/tmp/pids'
    command finished in 922ms
  * executing "find /usr/local/www/sites/project.example.ca/public/releases/20120225025005/public/images /usr/local/www/sites/project.example.ca/public/releases/20120225025005/public/stylesheets /usr/local/www/sites/project.example.ca/public/releases/20120225025005/public/javascripts -exec touch -t 201202250250.11 {} ';'; true"
    servers: ["project.example.ca"]
    [project.example.ca] executing command
    [project.example.ca] env TZ=UTC rvm_path=/usr/local/rvm /usr/local/rvm/bin/rvm-shell 'ruby-1.9.2-p290@project' -c 'find /usr/local/www/sites/project.example.ca/public/releases/20120225025005/public/images /usr/local/www/sites/project.example.ca/public/releases/20120225025005/public/stylesheets /usr/local/www/sites/project.example.ca/public/releases/20120225025005/public/javascripts -exec touch -t 201202250250.11 {} '\'';'\''; true'
*** [err :: project.example.ca] find:
*** [err :: project.example.ca] `/usr/local/www/sites/project.example.ca/public/releases/20120225025005/public/images'
*** [err :: project.example.ca] : No such file or directory
*** [err :: project.example.ca] 
*** [err :: project.example.ca] find:
*** [err :: project.example.ca] `/usr/local/www/sites/project.example.ca/public/releases/20120225025005/public/stylesheets'
*** [err :: project.example.ca] : No such file or directory
*** [err :: project.example.ca] 
*** [err :: project.example.ca] find:
*** [err :: project.example.ca] `/usr/local/www/sites/project.example.ca/public/releases/20120225025005/public/javascripts'
*** [err :: project.example.ca] : No such file or directory
*** [err :: project.example.ca] 
    command finished in 1027ms
  * executing `deploy:create_symlink'
  * executing `deploy:symlink'
[Deprecation Warning] This API has changed, please hook `deploy:create_symlink` instead of `deploy:symlink`.
  * executing "rm -f /usr/local/www/sites/project.example.ca/public/current && ln -s /usr/local/www/sites/project.example.ca/public/releases/20120225025005 /usr/local/www/sites/project.example.ca/public/current"
    servers: ["project.example.ca"]
    [project.example.ca] executing command
    [project.example.ca] rvm_path=/usr/local/rvm /usr/local/rvm/bin/rvm-shell 'ruby-1.9.2-p290@project' -c 'rm -f /usr/local/www/sites/project.example.ca/public/current && ln -s /usr/local/www/sites/project.example.ca/public/releases/20120225025005 /usr/local/www/sites/project.example.ca/public/current'
    command finished in 814ms
 ** transaction: commit
  * executing `deploy:restart'

1 个答案:

答案 0 :(得分:31)

set :normalize_asset_timestamps, false添加到部署文件中。默认情况下,它设置为true,并在所有images / javascripts / stylesheets上运行touch命令,但如果您正在使用资产管道,则不再需要它。