gi_cat_driver 0.2.2 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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.