如何通过mina工具在ruby项目中高效执行特定的rake任务?

2026-04-11 16:161阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计284个文字,预计阅读时间需要2分钟。

如何通过mina工具在ruby项目中高效执行特定的rake任务?

我在我的Sinatra应用中运行Rakefile中包含的rake任务(迁移)。我正在使用Mina进行部署。如果我在服务器上或我的开发环境中运行它,rake migrate工作得很好,但我无法让Mina执行任务。我该如何解决?

我想在我的Sinatra应用程序中运行我的Rakefile中包含的rake任务(迁移).我正在使用Mina进行部署.如果我在服务器上或在我的开发上运行它,rake migrate工作得很好,但我无法让Mina执行任务.

我当前的部署在config / deploy.rb中看起来像这样

如何通过mina工具在ruby项目中高效执行特定的rake任务?

task :deploy => :environment do deploy do # Put things that will set up an empty directory into a fully set-up # instance of your project. invoke :'git:clone' invoke :'deploy:link_shared_paths' to :launch do queue "sudo /opt/nginx/sbin/nginx -s reload" end end end

我在部署块和启动块内尝试了两个队列“rake migrate”和队列“#{rake} migrate”,但它始终抱怨bash:command not found

Mina使用ssh来运行远程命令.这意味着命令在登录时在不同的环境中运行.这会导致rvm和rbenv出现问题,因为它们未正确初始化.幸运的是,mina有 rvm support,你只需要设置它:

require 'mina/rvm' task :environment do invoke :'rvm:use[ruby-1.9.3-p125@gemset_name]' end task :deploy => :environment do ... end

你可以为rbenv做类似的事情(documentation)

本文共计284个文字,预计阅读时间需要2分钟。

如何通过mina工具在ruby项目中高效执行特定的rake任务?

我在我的Sinatra应用中运行Rakefile中包含的rake任务(迁移)。我正在使用Mina进行部署。如果我在服务器上或我的开发环境中运行它,rake migrate工作得很好,但我无法让Mina执行任务。我该如何解决?

我想在我的Sinatra应用程序中运行我的Rakefile中包含的rake任务(迁移).我正在使用Mina进行部署.如果我在服务器上或在我的开发上运行它,rake migrate工作得很好,但我无法让Mina执行任务.

我当前的部署在config / deploy.rb中看起来像这样

如何通过mina工具在ruby项目中高效执行特定的rake任务?

task :deploy => :environment do deploy do # Put things that will set up an empty directory into a fully set-up # instance of your project. invoke :'git:clone' invoke :'deploy:link_shared_paths' to :launch do queue "sudo /opt/nginx/sbin/nginx -s reload" end end end

我在部署块和启动块内尝试了两个队列“rake migrate”和队列“#{rake} migrate”,但它始终抱怨bash:command not found

Mina使用ssh来运行远程命令.这意味着命令在登录时在不同的环境中运行.这会导致rvm和rbenv出现问题,因为它们未正确初始化.幸运的是,mina有 rvm support,你只需要设置它:

require 'mina/rvm' task :environment do invoke :'rvm:use[ruby-1.9.3-p125@gemset_name]' end task :deploy => :environment do ... end

你可以为rbenv做类似的事情(documentation)