【问题标题】:capistrano command works on server, but not locallycapistrano 命令适用于服务器,但不适用于本地
【发布时间】:2012-05-21 03:02:04
【问题描述】:

我在运行这个 capistrano 任务时遇到了这个错误(我自己的 - cap deploy:show_pointers):

  * executing `deploy:show_pointers'
  * executing "cd /home/mydomain/public_html/site_folders/rails/current; rake app:show_pointers"
    servers: ["mydomain.net"]
    [mydomain.net] executing command
 ** [out :: mydomain.net] (in /home/mydomain/public_html/site_folders/rails/releases/20120521025150)
 ** [out :: mydomain.net] Could not find rake-0.9.2 in any of the sources
 ** [out :: mydomain.net] Try running `bundle install`.
    command finished in 1584ms
failed: "sh -c 'cd /home/mydomain/public_html/site_folders/rails/current; rake app:show_pointers'" on mydomain.net

但是当我运行时

sh -c 'cd /home/mydomain/public_html/site_folders/rails/current; rake app:show_pointers

从 capistrano 登录的同一个目录手动操作,它可以工作。我将 capistrano 设置为不使用 sudo,所以这不应该是问题,但听起来可能是问题,因为上述命令因 sudo 失败。我认为这是用户问题,或者可能是环境变量问题。或者我不确定是什么。

任何建议。这是一项已经是 rake 任务的任务,但它将帮助我不必每次运行它时都必须登录服务器(大约还有 10 个类似的任务)。

感谢您对此的任何帮助。

【问题讨论】:

    标签: ruby-on-rails rake capistrano


    【解决方案1】:

    从 capistrano 登录的同一个目录手动操作,它可以工作。

    这没什么,Capistrano 会创建一个非登录 tty,这意味着您的配置文件、点文件等不会运行。

    ssh root@example.de -t /bin/sh
    

    这是将环境与 Capistrano 进行比较的一种更可靠的方法,(尽管这比 Capistrano 使用的功能更全面。

    【讨论】:

      【解决方案2】:

      鉴于这些错误消息,我有几个想法:

      ** [out :: mydomain.net] Could not find rake-0.9.2 in any of the sources
      ** [out :: mydomain.net] Try running `bundle install`.
      

      应用找不到rake 命令。您是否尝试过在远程机器上运行bundle install 作为推荐?

      另一个选项可能是将命令更改为

      cd /home/mydomain/public_html/site_folders/rails/current; bundle exec rake app:show_pointers
      

      根据远程服务器上的 ruby​​ 环境,可能建议在命令前面使用bundle exec

      【讨论】:

        【解决方案3】:

        @dbra over on stack overflow 指出我需要完整的 rake 路径。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2021-05-24
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-08-11
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多