simple_worker 0.5.6 → 0.5.8

Sign up to get free protection for your applications and to get access to all the features.
data/README.markdown CHANGED
@@ -225,7 +225,7 @@ uploaded separately and treated as distinctly separate workers.
225
225
  Merging Gems
226
226
  ---------------------
227
227
 
228
- This allows you to use any gem you'd like with SimpleWorker.
228
+ This allows you to use any gem you'd like with SimpleWorker. This uses the same syntax as bundler gem files.
229
229
 
230
230
  merge_gem "some_gem"
231
231
  merge_gem "some_gem_with_version", "1.2.3"
@@ -66,8 +66,14 @@ module SimpleWorker
66
66
 
67
67
  # merges the specified gem.
68
68
  def merge_gem(gem_name, version=nil)
69
- @merged_gems << {:name=>gem_name, :version=>version}
70
- require gem_name
69
+ gem_info = {:name=>gem_name}
70
+ if version.is_a?(Hash)
71
+ gem_info.merge!(version)
72
+ else
73
+ gem_info[:version] = version
74
+ end
75
+ @merged_gems << gem_info
76
+ require gem_info[:require] || gem_name
71
77
  end
72
78
 
73
79
  # merges the specified files.
@@ -70,18 +70,19 @@ module SimpleWorker
70
70
  "class_name"=>class_name,
71
71
  "file_name"=> File.basename(filename)
72
72
  }
73
- puts 'options for upload=' + options.inspect
73
+ #puts 'options for upload=' + options.inspect
74
74
  ret = post_file("code/put", File.new(zip_filename), options)
75
75
  ret
76
76
  end
77
77
  end
78
78
 
79
- def get_gem_path(full_gem_name, version=nil)
80
- gem_name =(full_gem_name.match(/^[a-zA-Z0-9\-_]+/)[0])
81
- puts "Searching #{gem_name}"
79
+ def get_gem_path(gem_info)
80
+ gem_name =(gem_info[:require] || gem_info[:name].match(/^[a-zA-Z0-9\-_]+/)[0])
81
+ puts "Searching for #{gem_name}..."
82
82
  searcher = Gem::GemPathSearcher.new
83
83
  gems = searcher.find_all(gem_name)
84
- gems = gems.select { |g| g.version.version==version } if version
84
+ # puts 'gems found=' + gems.inspect
85
+ gems = gems.select { |g| g.version.version==gem_info[:version] } if gem_info[:version]
85
86
  if !gems.empty?
86
87
  gem = gems.first
87
88
  gem.full_gem_path + "/lib"
@@ -125,7 +126,7 @@ module SimpleWorker
125
126
  if merged_gems
126
127
  merged_gems.each do |gem|
127
128
  # puts 'gem=' + gem.inspect
128
- path = get_gem_path(gem[:name], gem[:version])
129
+ path = get_gem_path(gem)
129
130
  if path
130
131
  puts "Collecting gem #{path}"
131
132
  Dir["#{path}/**/**"].each do |file|
data/test/awesome_job.rb CHANGED
@@ -1,6 +1,8 @@
1
+
1
2
  class AwesomeJob < SimpleWorker::Base
2
3
  merge_gem 'dropbox' # , '1.2.3'
3
4
  # bumpdsfsdfdsfasdf
5
+ merge_gem 'mongoid_i18n', :require => 'mongoid/i18n'
4
6
 
5
7
  def run
6
8
  begin
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 5
8
- - 6
9
- version: 0.5.6
8
+ - 8
9
+ version: 0.5.8
10
10
  platform: ruby
11
11
  authors:
12
12
  - Travis Reeder