ruby-on-rails-3 - 使用 capistrano 部署时出现心理语法错误

标签 ruby-on-rails-3 rubygems capistrano

尝试使用 capistrano 进行部署时出现以下错误

上限生产部署

[whenever:update_crontab] rolling back
  * executing "ls -x /home/appuser/app_assets_production/releases"
    servers: ["10.1.171.106"]
    [10.1.171.106] executing command
    command finished in 3450ms
  * executing "cd /home/appuser/app_assets_production/releases/20161103140152 && RAILS_ENV=production bundle exec whenever --update-crontab app_assets --set environment=production --roles db"
    servers: ["10.1.171.106"]
    [10.1.171.106] executing command
 ** [out :: 10.1.171.106] Using /home/appuser/.rvm/gems/ruby-2.1.2
 ** [out :: 10.1.171.106] [write] crontab file updated
    command finished in 11877ms
*** [deploy:update_code] rolling back
  * executing "rm -rf /home/appuser/app_assets_production/releases/20161104113421; true"
    servers: ["10.1.171.106"]
    [10.1.171.106] executing command
 ** [out :: 10.1.171.106] Using /home/appuser/.rvm/gems/ruby-2.1.2
    command finished in 3256ms
/home/manoj/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/psych.rb:371:in `parse': (<unknown>): control characters are not allowed at line 1 column 1 (Psych::SyntaxError)
    from /home/manoj/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/psych.rb:371:in `parse_stream'
    from /home/manoj/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/psych.rb:318:in `parse'
    from /home/manoj/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/psych.rb:245:in `load'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/recipes/deploy/assets.rb:63:in `block (3 levels) in load'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:138:in `instance_eval'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:138:in `invoke_task_directly'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:25:in `invoke_task_directly_with_callbacks'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:89:in `execute_task'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:101:in `find_and_execute_task'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/callback.rb:38:in `call'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:141:in `block in trigger'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:141:in `each'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:141:in `trigger'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:23:in `invoke_task_directly_with_callbacks'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:89:in `execute_task'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:101:in `find_and_execute_task'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/callback.rb:38:in `call'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:141:in `block in trigger'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:141:in `each'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:141:in `trigger'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:27:in `invoke_task_directly_with_callbacks'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:89:in `execute_task'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/namespaces.rb:191:in `method_missing'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/namespaces.rb:110:in `block in define_task'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/recipes/deploy.rb:229:in `block (3 levels) in load'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:56:in `transaction'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/namespaces.rb:191:in `method_missing'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/recipes/deploy.rb:228:in `block (2 levels) in load'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:138:in `instance_eval'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:138:in `invoke_task_directly'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:25:in `invoke_task_directly_with_callbacks'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:89:in `execute_task'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/namespaces.rb:191:in `method_missing'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/namespaces.rb:110:in `block in define_task'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/recipes/deploy.rb:196:in `block (2 levels) in load'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:138:in `instance_eval'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:138:in `invoke_task_directly'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:25:in `invoke_task_directly_with_callbacks'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:89:in `execute_task'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:101:in `find_and_execute_task'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/cli/execute.rb:46:in `block in execute_requested_actions'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/cli/execute.rb:45:in `each'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/cli/execute.rb:45:in `execute_requested_actions'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/cli/help.rb:19:in `execute_requested_actions_with_help'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/cli/execute.rb:34:in `execute!'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/lib/capistrano/cli/execute.rb:14:in `execute'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/gems/capistrano-2.14.2/bin/cap:4:in `<top (required)>'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/bin/cap:23:in `load'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/bin/cap:23:in `<main>'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/bin/ruby_executable_hooks:15:in `eval'
    from /home/manoj/.rvm/gems/ruby-2.1.2@app_assets/bin/ruby_executable_hooks:15:in `<main>'

我做了一些搜索并尝试了以下
  • 我试图在 boot.rb 中添加以下内容,然后在 config/deploy.rb 文件中,它没有用。

  • require 'yaml'
    YAML::ENGINE.yamler = 'syck'
    

  • 我尝试删除 manifest.yml 和 asset_manifest.yml 文件,然后再次尝试部署。没用
  • 我检查了 .bashrc 文件,没有语法错误。

  • 如果您找到我在这里缺少的内容,请提供帮助。

    最佳答案

    我的 ~/.bashrc 出现错误文件,即加载旧的 ruby​​ 版本。

    查看我的 rvm list 时出现错误

    default [usr/bin missing ruby]
    ruby-2.1.2
    

    我删除了' default ' 来自 ~/.rvm/rubies/ 的目录然后分配 'ruby-2.1.2'作为默认 ruby​​ 使用 rvm use ruby-2.1.2 --default问题得到了解决。

    关于ruby-on-rails-3 - 使用 capistrano 部署时出现心理语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40421924/

    相关文章:

    ruby-on-rails-3 - 现有模型和 DB 表的 rails g 脚手架

    ruby-on-rails - 由于 windows 中的 openssl/ETimedout,gem install Rails 无法工作

    ruby-on-rails - capistrano 部署在 git ls-remote 调用上询问用户名/密码

    ruby-on-rails - Capistrano 3 使用登录 shell

    ruby-on-rails-3 - 要在查询中逐个元素评估的两个数组

    ruby-on-rails - Arel,如何加入

    ruby - 从 git 源安装的 gem 在哪里?

    ruby-on-rails - rvm 和 Capistrano 无法一起工作 : rvm_bin_path setting not taking effect

    ruby-on-rails - Rails 3 迁移

    rubygems - 告诉 compass 停止观看文件夹 - 初学者的东西