Tag: 耙任务

在rails应用程序中运行rake任务

我想在rails应用程序中运行资产预编译任务,因为我有许多依赖项将更改代码,在这种情况下,无论何时更改我需要运行脚本,因为我无法让服务器访问它们所以我提供从他们自己的GUI可以运行脚本,所以,我已经构建了UI来运行任务与一些参数,如 system(“Template=’#{params[:template]}’ Theme=’#{params[:theme]}’ rake assets:precompile) 我从UI获取了两个值(params [:template],params [:theme])。我想在另一个路径(站点路径)中运行此任务的另一个意思是管理端UI是那个任务应该在Site目录中执行, if(params[:theme_script] == “true”) template=Template.where(:name => params[:template]).first if template theme = template.themes.where(:name => params[:theme]).first if theme # Dir.chdir “#{THEMEPATH}”do # `Template=”#{template.name}” Theme=”#{theme.name}” rake assets:precompile` # end # sleep 10 # system(“#{Rails.root.to_s}/lib/shell_script.sh”) # RunRake.run_rake(template.name,theme.name) # Dir.chdir “#{THEMEPATH}”do # Rake::Task[‘assets:precompile’].invoke # end ENV[“Template”] = template.name ENV[“Theme”] = theme.name precompile_task = […]

Ruby rake loaderror – 捆绑exec rake无法正常工作

我正在尝试运行命令rake db:migrate但我一直收到此错误: /Users/[name]/.rvm/gems/ruby-2.2.1/bin/rake:23:in `load’: cannot load such file — /Users/[name]/.rvm/rubies/ruby-2.2.1/lib/ruby/gems/2.2.0/specifications/default/bin/rake (LoadError) from /Users/[name]/.rvm/gems/ruby-2.2.1/bin/rake:23:in `’ from /Users/[name]/.rvm/gems/ruby-2.2.1/bin/ruby_executable_hooks:15:in `eval’ from /Users/[name]/.rvm/gems/ruby-2.2.1/bin/ruby_executable_hooks:15:in `’ 尝试bundle exec rake db:migrate也给了我同样的错误。 有没有办法可以解决这个问题? (我在Mac OS X 10.10.5上) 编辑:错误中我的[名称]的第一个字母是大写,即使在我的系统中,它是小写的。 编辑[部分解决]:所以我使用Ruby版本2.2.1,我应该使用2.1.2。 虽然这没有解决rake命令错误,但我试图运行在更改我的Ruby版本后成功运行的rails server 。

Rake任务无法加载:环境正常

我正在运行自定义rake任务…… namespace :import do desc “Import terms of service as HTML from stdin” task :terms => :environment do html = STDIN.read settings = ApplicationWideSetting.first settings.terms_and_conditions = html if settings.save puts “Updated terms of service” else puts “There was an error updating terms of service” end end end 在production环境中运行任务时,ApplicationWideSetting模型将报告为未定义。 但是,在其他环境(即development , staging , test )上运行任务时,任务运行正常。 在所有环境中,在rails控制台中运行该过程都可以。 […]

如何声明依赖于参数化任务的Rake任务?

我见过一个例子,其中一个任务有参数和一个依赖任务,如: task :name, [:first_name, :last_name] => [:pre_name] do |t, args| args.with_defaults(:first_name => “John”, :last_name => “Dough”) puts “First name is #{args.first_name}” puts “Last name is #{args.last_name}” end 如果它是一个任务依赖项,你将如何将参数传递给name任务: task :sendLetter => :name #do something end

如何使用OptionParser解析rake参数

我正在尝试使用OptionParser来解析rake参数。 我从那里简化了示例,我不得不添加两个ARGV.shift以使其工作。 require ‘optparse’ namespace :user do |args| # Fix I hate to have here puts “ARGV: #{ARGV}” ARGV.shift ARGV.shift puts “ARGV: #{ARGV}” desc ‘Creates user account with given credentials: rake user:create’ # environment is required to have access to Rails models task :create => :environment do options = {} OptionParser.new(args) do |opts| opts.banner = […]

rake db:migrate因rake版本差异而被中止

我收到了错误 rake db:migrate –trace rake aborted! You have already activated rake 10.1.1, but your Gemfile requires rake 10.1.0. Using bundle exec may solve this. /Users/iang/.rvm/gems/ruby-2.0.0-p247@global/gems/bundler-1.3.5/lib/bundler/runtime.rb:33:in `block in setup’ /Users/iang/.rvm/gems/ruby-2.0.0-p247@global/gems/bundler-1.3.5/lib/bundler/runtime.rb:19:in `setup’ /Users/iang/.rvm/gems/ruby-2.0.0-p247@global/gems/bundler-1.3.5/lib/bundler.rb:120:in `setup’ /Users/iang/.rvm/gems/ruby-2.0.0-p247@global/gems/bundler-1.3.5/lib/bundler/setup.rb:7:in `’ /Users/iang/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:116:in `require’ /Users/iang/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:116:in `rescue in require’ /Users/iang/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:122:in `require’ /Users/iang/code/Projects/work/startco/config/boot.rb:4:in `’ /Users/iang/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:51:in `require’ /Users/iang/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:51:in `require’ /Users/iang/code/Projects/work/startco/config/application.rb:1:in `’ /Users/iang/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:51:in `require’ /Users/iang/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:51:in `require’ /Users/iang/code/Projects/work/startco/Rakefile:4:in […]