gi_cat_driver 0.2.2 → 0.2.3

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -43,6 +43,8 @@ Annotated source code documentation is available at http://nsidc.github.com/gi_c
43
43
  Rubydoc API documentation is available at http://rubydoc.info/gems/gi_cat_driver/
44
44
 
45
45
  ## Version History
46
+ * 0.2.3
47
+ * Changed the harvest to be sequential. (one resource won't start harvest till the current one is completed or timeout)
46
48
  * 0.2.2
47
49
  * Added new methods to create and delete profiles
48
50
  * Fixed harvester request headers and now work properly
@@ -1,3 +1,3 @@
1
1
  module GiCatDriver
2
- VERSION = "0.2.2"
2
+ VERSION = "0.2.3"
3
3
  end
data/lib/gi_cat_driver.rb CHANGED
@@ -125,8 +125,8 @@ module GiCatDriver
125
125
  harvestersinfo_array = get_harvest_resources(get_active_profile_id)
126
126
  harvestersinfo_array.each do |harvester_id, harvester_title|
127
127
  harvest_resource_for_active_configuration(harvester_id.to_s, harvester_title)
128
+ confirm_harvest_done(harvester_id, harvester_title, timeout)
128
129
  end
129
- confirm_harvest_done(harvestersinfo_array, timeout)
130
130
  end
131
131
 
132
132
  #### Private Methods
@@ -194,8 +194,8 @@ module GiCatDriver
194
194
  while(1) do
195
195
  sleep 1 # Wait for one second
196
196
 
197
- # rnum=rand # Generate unique request to attempt to bypass cache
198
- request = @base_url + "/services/conf/giconf/status?id=#{harvester_id}"
197
+ # appending unique number at the end of the request to bypass cache
198
+ request = @base_url + "/services/conf/giconf/status?id=#{harvester_id}&rand=#{generate_random_number}"
199
199
 
200
200
  response = Faraday.get do |req|
201
201
  req.url request
@@ -213,13 +213,11 @@ module GiCatDriver
213
213
  end
214
214
 
215
215
  # Run till harvest all the resources are completed or time out
216
- def confirm_harvest_done(harvestersinfo_array, waitmax)
216
+ def confirm_harvest_done(harvester_id, harvester_title, waitmax)
217
217
  begin
218
218
  puts "Info: Max wait time (timeout) for current profile is set to #{waitmax} seconds"
219
219
  Timeout::timeout(waitmax.to_i) do
220
- harvestersinfo_array.each do |harvester_id, harvester_title|
221
- harvest_request_is_done(harvester_id.to_s, harvester_title)
222
- end
220
+ harvest_request_is_done(harvester_id.to_s, harvester_title)
223
221
  end
224
222
  rescue Timeout::Error
225
223
  puts "Warning: re-harvest is time out(#{waitmax} seconds, we are going to reuse the previous harvest results"
@@ -264,7 +264,8 @@ describe GiCatDriver do
264
264
  })
265
265
  .to_return(:status => 200, :body => "", :headers => {})
266
266
 
267
- harvest_status_url = "http://admin:pass@www.somecompany.com/services/conf/giconf/status?id=UUID-a5d11731-9a58-4818-8018-c085cea8b6e3"
267
+ @gi_cat.stub(:generate_random_number) {0.1111}
268
+ harvest_status_url = "http://admin:pass@www.somecompany.com/services/conf/giconf/status?id=UUID-a5d11731-9a58-4818-8018-c085cea8b6e3&rand=0.1111"
268
269
  stub_request(:get, harvest_status_url).
269
270
  with(:headers => {'Accept'=>'application/xml', 'Accept-Encoding'=>'gzip;q=1.0,deflate;q=0.6,identity;q=0.3', 'Content-Type' => '*/*', 'User-Agent' => 'Ruby'}).
270
271
  to_return(:status => 200, :body => File.new("spec/fixtures/status.xml"), :headers => [])
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gi_cat_driver
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -14,7 +14,7 @@ date: 2013-04-19 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: faraday
17
- requirement: !ruby/object:Gem::Requirement
17
+ requirement: &70132345151200 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ~>
@@ -22,15 +22,10 @@ dependencies:
22
22
  version: 0.8.7
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: !ruby/object:Gem::Requirement
26
- none: false
27
- requirements:
28
- - - ~>
29
- - !ruby/object:Gem::Version
30
- version: 0.8.7
25
+ version_requirements: *70132345151200
31
26
  - !ruby/object:Gem::Dependency
32
27
  name: nokogiri
33
- requirement: !ruby/object:Gem::Requirement
28
+ requirement: &70132345149560 !ruby/object:Gem::Requirement
34
29
  none: false
35
30
  requirements:
36
31
  - - ~>
@@ -38,15 +33,10 @@ dependencies:
38
33
  version: 1.5.6
39
34
  type: :runtime
40
35
  prerelease: false
41
- version_requirements: !ruby/object:Gem::Requirement
42
- none: false
43
- requirements:
44
- - - ~>
45
- - !ruby/object:Gem::Version
46
- version: 1.5.6
36
+ version_requirements: *70132345149560
47
37
  - !ruby/object:Gem::Dependency
48
38
  name: bundler
49
- requirement: !ruby/object:Gem::Requirement
39
+ requirement: &70132345148160 !ruby/object:Gem::Requirement
50
40
  none: false
51
41
  requirements:
52
42
  - - ~>
@@ -54,15 +44,10 @@ dependencies:
54
44
  version: '1.3'
55
45
  type: :development
56
46
  prerelease: false
57
- version_requirements: !ruby/object:Gem::Requirement
58
- none: false
59
- requirements:
60
- - - ~>
61
- - !ruby/object:Gem::Version
62
- version: '1.3'
47
+ version_requirements: *70132345148160
63
48
  - !ruby/object:Gem::Dependency
64
49
  name: rake
65
- requirement: !ruby/object:Gem::Requirement
50
+ requirement: &70132345147140 !ruby/object:Gem::Requirement
66
51
  none: false
67
52
  requirements:
68
53
  - - ~>
@@ -70,15 +55,10 @@ dependencies:
70
55
  version: 10.0.3
71
56
  type: :development
72
57
  prerelease: false
73
- version_requirements: !ruby/object:Gem::Requirement
74
- none: false
75
- requirements:
76
- - - ~>
77
- - !ruby/object:Gem::Version
78
- version: 10.0.3
58
+ version_requirements: *70132345147140
79
59
  - !ruby/object:Gem::Dependency
80
60
  name: rspec
81
- requirement: !ruby/object:Gem::Requirement
61
+ requirement: &70132345146380 !ruby/object:Gem::Requirement
82
62
  none: false
83
63
  requirements:
84
64
  - - ~>
@@ -86,15 +66,10 @@ dependencies:
86
66
  version: 2.13.0
87
67
  type: :development
88
68
  prerelease: false
89
- version_requirements: !ruby/object:Gem::Requirement
90
- none: false
91
- requirements:
92
- - - ~>
93
- - !ruby/object:Gem::Version
94
- version: 2.13.0
69
+ version_requirements: *70132345146380
95
70
  - !ruby/object:Gem::Dependency
96
71
  name: pygments.rb
97
- requirement: !ruby/object:Gem::Requirement
72
+ requirement: &70132345145620 !ruby/object:Gem::Requirement
98
73
  none: false
99
74
  requirements:
100
75
  - - ~>
@@ -102,15 +77,10 @@ dependencies:
102
77
  version: 0.4.2
103
78
  type: :development
104
79
  prerelease: false
105
- version_requirements: !ruby/object:Gem::Requirement
106
- none: false
107
- requirements:
108
- - - ~>
109
- - !ruby/object:Gem::Version
110
- version: 0.4.2
80
+ version_requirements: *70132345145620
111
81
  - !ruby/object:Gem::Dependency
112
82
  name: mustache
113
- requirement: !ruby/object:Gem::Requirement
83
+ requirement: &70132345144960 !ruby/object:Gem::Requirement
114
84
  none: false
115
85
  requirements:
116
86
  - - ~>
@@ -118,15 +88,10 @@ dependencies:
118
88
  version: 0.99.4
119
89
  type: :development
120
90
  prerelease: false
121
- version_requirements: !ruby/object:Gem::Requirement
122
- none: false
123
- requirements:
124
- - - ~>
125
- - !ruby/object:Gem::Version
126
- version: 0.99.4
91
+ version_requirements: *70132345144960
127
92
  - !ruby/object:Gem::Dependency
128
93
  name: redcarpet
129
- requirement: !ruby/object:Gem::Requirement
94
+ requirement: &70132345144500 !ruby/object:Gem::Requirement
130
95
  none: false
131
96
  requirements:
132
97
  - - ~>
@@ -134,15 +99,10 @@ dependencies:
134
99
  version: 2.2.2
135
100
  type: :development
136
101
  prerelease: false
137
- version_requirements: !ruby/object:Gem::Requirement
138
- none: false
139
- requirements:
140
- - - ~>
141
- - !ruby/object:Gem::Version
142
- version: 2.2.2
102
+ version_requirements: *70132345144500
143
103
  - !ruby/object:Gem::Dependency
144
104
  name: rocco
145
- requirement: !ruby/object:Gem::Requirement
105
+ requirement: &70132345144040 !ruby/object:Gem::Requirement
146
106
  none: false
147
107
  requirements:
148
108
  - - ~>
@@ -150,15 +110,10 @@ dependencies:
150
110
  version: 0.8.2
151
111
  type: :development
152
112
  prerelease: false
153
- version_requirements: !ruby/object:Gem::Requirement
154
- none: false
155
- requirements:
156
- - - ~>
157
- - !ruby/object:Gem::Version
158
- version: 0.8.2
113
+ version_requirements: *70132345144040
159
114
  - !ruby/object:Gem::Dependency
160
115
  name: webmock
161
- requirement: !ruby/object:Gem::Requirement
116
+ requirement: &70132345143500 !ruby/object:Gem::Requirement
162
117
  none: false
163
118
  requirements:
164
119
  - - ~>
@@ -166,12 +121,7 @@ dependencies:
166
121
  version: 1.11.0
167
122
  type: :development
168
123
  prerelease: false
169
- version_requirements: !ruby/object:Gem::Requirement
170
- none: false
171
- requirements:
172
- - - ~>
173
- - !ruby/object:Gem::Version
174
- version: 1.11.0
124
+ version_requirements: *70132345143500
175
125
  description: Configure and control deployed instances of GI-Cat.
176
126
  email:
177
127
  - stuart.reed@nsidc.org
@@ -221,7 +171,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
221
171
  version: '0'
222
172
  requirements: []
223
173
  rubyforge_project:
224
- rubygems_version: 1.8.23
174
+ rubygems_version: 1.8.15
225
175
  signing_key:
226
176
  specification_version: 3
227
177
  summary: Configure and control deployed instances of GI-Cat.