首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Capistrano进行部署时出现psych.rb错误“此上下文中不允许映射”

使用Capistrano进行部署时出现psych.rb错误“此上下文中不允许映射”
EN

Stack Overflow用户
提问于 2013-04-01 01:00:52
回答 2查看 4.9K关注 0票数 8

我正在尝试将一个Rails应用程序部署到CentOS 6/nginx/passenger服务器上,但是cap deploy:cold给了我一个错误。以下是来自部署输出的相关部分:

代码语言:javascript
复制
  * 2013-03-31 17:49:59 executing `deploy:assets:update_asset_mtimes'
  * executing "[ -e /home/appuser/apps/britaincares/shared/assets/manifest.yml ] && cat /home/appuser/apps/britaincares/shared/assets/manifest.yml || echo"
    servers: ["www.britaincares.co.uk"]
    [www.britaincares.co.uk] executing command
    command finished in 303ms
*** [deploy:update_code] rolling back
  * executing "rm -rf /home/appuser/apps/britaincares/releases/20130331164733; true"
    servers: ["www.britaincares.co.uk"]
    [www.britaincares.co.uk] executing command
 ** [out :: www.britaincares.co.uk] /home/appuser/.bashrc: eval: line 26: syntax error: unexpected end of file
    command finished in 932ms
/Users/chriswickett/.rvm/rubies/ruby-1.9.3-p374/lib/ruby/1.9.1/psych.rb:203:in `parse': (<unknown>): mapping values are not allowed in this context at line 1 column 28 (Psych::SyntaxError)
    from /Users/chriswickett/.rvm/rubies/ruby-1.9.3-p374/lib/ruby/1.9.1/psych.rb:203:in `parse_stream'
    from /Users/chriswickett/.rvm/rubies/ruby-1.9.3-p374/lib/ruby/1.9.1/psych.rb:151:in `parse'
    from /Users/chriswickett/.rvm/rubies/ruby-1.9.3-p374/lib/ruby/1.9.1/psych.rb:127:in `load'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/recipes/deploy/assets.rb:63:in `block (3 levels) in load'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:138:in `instance_eval'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:138:in `invoke_task_directly'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:25:in `invoke_task_directly_with_callbacks'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:89:in `execute_task'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:101:in `find_and_execute_task'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/callback.rb:38:in `call'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:141:in `block in trigger'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:141:in `each'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:141:in `trigger'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:23:in `invoke_task_directly_with_callbacks'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:89:in `execute_task'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:101:in `find_and_execute_task'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/callback.rb:38:in `call'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:141:in `block in trigger'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:141:in `each'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:141:in `trigger'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:27:in `invoke_task_directly_with_callbacks'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:89:in `execute_task'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/namespaces.rb:191:in `method_missing'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/namespaces.rb:110:in `block in define_task'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/recipes/deploy.rb:229:in `block (3 levels) in load'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:56:in `transaction'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/namespaces.rb:191:in `method_missing'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/recipes/deploy.rb:228:in `block (2 levels) in load'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:138:in `instance_eval'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:138:in `invoke_task_directly'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:25:in `invoke_task_directly_with_callbacks'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:89:in `execute_task'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/namespaces.rb:191:in `method_missing'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/namespaces.rb:110:in `block in define_task'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/recipes/deploy.rb:517:in `block (2 levels) in load'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:138:in `instance_eval'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:138:in `invoke_task_directly'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/callbacks.rb:25:in `invoke_task_directly_with_callbacks'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:89:in `execute_task'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/configuration/execution.rb:101:in `find_and_execute_task'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/cli/execute.rb:46:in `block in execute_requested_actions'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/cli/execute.rb:45:in `each'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/cli/execute.rb:45:in `execute_requested_actions'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/cli/help.rb:19:in `execute_requested_actions_with_help'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/cli/execute.rb:34:in `execute!'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/lib/capistrano/cli/execute.rb:14:in `execute'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/gems/capistrano-2.14.2/bin/cap:4:in `<top (required)>'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374/bin/cap:19:in `load'
    from /Users/chriswickett/.rvm/gems/ruby-1.9.3-p374

Rails 3.2.1。

提到的manifest.yml文件包含'jquery.min.map‘-这是’映射不允许‘部分所指的吗?如果是这样的话,我想不出如何阻止jQuery尝试包含这个映射文件。

我已经尝试过将manifest.yml文件的上下文放入各种在线验证器中--它运行得很好。据我所知,没有缺少空格或制表符。

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-04-04 19:39:11

我解决了这个问题。调用YAML.load是因为Capistrano的deploy/assets.rb中的文件使用了心理。

它加载的变量是命令行cat命令的“捕获”,因为我的.bashrc中有一个语法错误,所以它也捕获该错误的输出并将其传递给YAML.load。修正了.bashrc错误,一切正常!

票数 5
EN

Stack Overflow用户

发布于 2013-06-19 18:09:40

我遇到了这个问题,并按照here的建议删除了我在myapp/shared/assets下的.json清单文件(实际上,他们建议重命名它们,但这对我不起作用)。

票数 19
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15732014

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档