mu 5.7.28 → 5.7.29

Sign up to get free protection for your applications and to get access to all the features.
data/bin/scale.json ADDED
@@ -0,0 +1,25 @@
1
+ {
2
+ "hosts": {
3
+ "host_0": "b1/*",
4
+ "host_1": "b2/*"
5
+ },
6
+ "timeout": 5000,
7
+ "delay": 0,
8
+ "volume": 1,
9
+ "holdConcurrency": true,
10
+ "limitConcurrency": false,
11
+ "vectorAddressPairing": false,
12
+ "musl": "scenario(name: \"scenario\") {\r\r\n hosts {\r\r\n # browser\r\r\n &host_0 = host(type:v4)\r\r\n # www.dicom.com\r\r\n &host_1 = host(type:v4)\r\r\n }\r\r\n steps { \r\r\n xport0 = tcp(src:&host_0, dst:&host_1, dst_port:80)\r\r\n \r\r\n # GET /en HTTP/1.1\r\r\n cs0 = xport0.client_send {\r\r\n \"GET /en HTTP/1.1\\r\\n\"\r\r\n \"Host: www.dicom.com\\r\\n\"\r\r\n \"User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.17) Gecko/20110420 Firefox/3.6.17\\r\\n\"\r\r\n \"Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\\r\\n\"\r\r\n \"Accept-Language: en-us,en;q=0.5\\r\\n\"\r\r\n \"Accept-Encoding: gzip,deflate\\r\\n\"\r\r\n \"Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\\r\\n\"\r\r\n \"Keep-Alive: 115\\r\\n\"\r\r\n \"Connection: keep-alive\\r\\n\"\r\r\n \"Cookie: bsuniquevid=1306759634212y8fTfOzhdbTMIS2ROMgWs50PrUE\\r\\n\"\r\r\n \"Content-Length: 0\\r\\n\"\r\r\n \"\\r\\n\"\r\r\n }\r\r\n sr0 = cs0.server_receive {\r\r\n }\r\r\n # HTTP/1.1 301 Moved Permanently\r\r\n ss0 = xport0.server_send {\r\r\n \"HTTP/1.1 301 Moved Permanently\\r\\n\"\r\r\n \"Date: Mon, 30 May 2011 12:52:16 GMT\\r\\n\"\r\r\n \"Server: Apache/2\\r\\n\"\r\r\n \"Location: http://www.dicom.com/en/\\r\\n\"\r\r\n \"Vary: Accept-Encoding\\r\\n\"\r\r\n \"Content-Encoding: gzip\\r\\n\"\r\r\n \"Content-Length: 230\\r\\n\"\r\r\n \"Keep-Alive: timeout=10, max=100\\r\\n\"\r\r\n \"Connection: Keep-Alive\\r\\n\"\r\r\n \"Content-Type: text/html; charset=iso-8859-1\\r\\n\"\r\r\n \"\\r\\n\"\r\r\n }\r\r\n cr0 = ss0.client_receive {\r\r\n assertions {\r\r\n /HTTP\\/1\\.1 (\\d+)/ == 301\r\r\n }\r\r\n }\r\r\n xport1 = tcp(src:&host_0, dst:&host_1, dst_port:80)\r\r\n \r\r\n # GET /en/ HTTP/1.1\r\r\n cs1 = xport1.client_send {\r\r\n \"GET /en/ HTTP/1.1\\r\\n\"\r\r\n \"Host: www.dicom.com\\r\\n\"\r\r\n \"User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.17) Gecko/20110420 Firefox/3.6.17\\r\\n\"\r\r\n \"Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\\r\\n\"\r\r\n \"Accept-Language: en-us,en;q=0.5\\r\\n\"\r\r\n \"Accept-Encoding: gzip,deflate\\r\\n\"\r\r\n \"Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\\r\\n\"\r\r\n \"Keep-Alive: 115\\r\\n\"\r\r\n \"Connection: keep-alive\\r\\n\"\r\r\n \"Cookie: bsuniquevid=1306759634212y8fTfOzhdbTMIS2ROMgWs50PrUE\\r\\n\"\r\r\n \"Content-Length: 0\\r\\n\"\r\r\n \"\\r\\n\"\r\r\n }\r\r\n sr1 = cs1.server_receive {\r\r\n }\r\r\n # HTTP/1.1 200 OK\r\r\n ss1 = xport1.server_send {\r\r\n \"HTTP/1.1 200 OK\\r\\n\"\r\r\n \"Date: Mon, 30 May 2011 12:52:16 GMT\\r\\n\"\r\r\n \"Server: Apache/2\\r\\n\"\r\r\n \"Vary: Accept-Encoding\\r\\n\"\r\r\n \"Content-Encoding: gzip\\r\\n\"\r\r\n \"Content-Length: 4820\\r\\n\"\r\r\n \"Keep-Alive: timeout=10, max=99\\r\\n\"\r\r\n \"Connection: Keep-Alive\\r\\n\"\r\r\n \"Content-Type: text/html; charset=UTF-8\\r\\n\"\r\r\n \"\\r\\n\"\r\r\n }\r\r\n cr1 = ss1.client_receive {\r\r\n assertions {\r\r\n /HTTP\\/1\\.1 (\\d+)/ == 200\r\r\n }\r\r\n }\r\r\n xport2 = tcp(src:&host_0, dst:&host_1, dst_port:80)\r\r\n \r\r\n # GET /en/products/software.php HTTP/1.1\r\r\n cs2 = xport2.client_send {\r\r\n \"GET /en/products/software.php HTTP/1.1\\r\\n\"\r\r\n \"Host: www.dicom.com\\r\\n\"\r\r\n \"User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.17) Gecko/20110420 Firefox/3.6.17\\r\\n\"\r\r\n \"Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\\r\\n\"\r\r\n \"Accept-Language: en-us,en;q=0.5\\r\\n\"\r\r\n \"Accept-Encoding: gzip,deflate\\r\\n\"\r\r\n \"Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\\r\\n\"\r\r\n \"Keep-Alive: 115\\r\\n\"\r\r\n \"Connection: keep-alive\\r\\n\"\r\r\n \"Referer: http://www.dicom.com/en/\\r\\n\"\r\r\n \"Cookie: bsuniquevid=1306759634212y8fTfOzhdbTMIS2ROMgWs50PrUE\\r\\n\"\r\r\n \"Content-Length: 0\\r\\n\"\r\r\n \"\\r\\n\"\r\r\n }\r\r\n sr2 = cs2.server_receive {\r\r\n }\r\r\n # HTTP/1.1 200 OK\r\r\n ss2 = xport2.server_send {\r\r\n \"HTTP/1.1 200 OK\\r\\n\"\r\r\n \"Date: Mon, 30 May 2011 12:52:28 GMT\\r\\n\"\r\r\n \"Server: Apache/2\\r\\n\"\r\r\n \"Vary: Accept-Encoding\\r\\n\"\r\r\n \"Content-Encoding: gzip\\r\\n\"\r\r\n \"Content-Length: 2600\\r\\n\"\r\r\n \"Keep-Alive: timeout=10, max=89\\r\\n\"\r\r\n \"Connection: Keep-Alive\\r\\n\"\r\r\n \"Content-Type: text/html; charset=UTF-8\\r\\n\"\r\r\n \"\\r\\n\"\r\r\n }\r\r\n cr2 = ss2.client_receive {\r\r\n assertions {\r\r\n /HTTP\\/1\\.1 (\\d+)/ == 200\r\r\n }\r\r\n }\r\r\n xport3 = tcp(src:&host_0, dst:&host_1, dst_port:80)\r\r\n \r\r\n # GET /en/products/software/kofax_express.php HTTP/1.1\r\r\n cs3 = xport3.client_send {\r\r\n \"GET /en/products/software/kofax_express.php HTTP/1.1\\r\\n\"\r\r\n \"Host: www.dicom.com\\r\\n\"\r\r\n \"User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.17) Gecko/20110420 Firefox/3.6.17\\r\\n\"\r\r\n \"Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\\r\\n\"\r\r\n \"Accept-Language: en-us,en;q=0.5\\r\\n\"\r\r\n \"Accept-Encoding: gzip,deflate\\r\\n\"\r\r\n \"Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\\r\\n\"\r\r\n \"Keep-Alive: 115\\r\\n\"\r\r\n \"Connection: keep-alive\\r\\n\"\r\r\n \"Referer: http://www.dicom.com/en/products/software.php\\r\\n\"\r\r\n \"Cookie: bsuniquevid=1306759634212y8fTfOzhdbTMIS2ROMgWs50PrUE\\r\\n\"\r\r\n \"Content-Length: 0\\r\\n\"\r\r\n \"\\r\\n\"\r\r\n }\r\r\n sr3 = cs3.server_receive {\r\r\n }\r\r\n # HTTP/1.1 200 OK\r\r\n ss3 = xport3.server_send {\r\r\n \"HTTP/1.1 200 OK\\r\\n\"\r\r\n \"Date: Mon, 30 May 2011 12:52:40 GMT\\r\\n\"\r\r\n \"Server: Apache/2\\r\\n\"\r\r\n \"Vary: Accept-Encoding\\r\\n\"\r\r\n \"Content-Encoding: gzip\\r\\n\"\r\r\n \"Content-Length: 3067\\r\\n\"\r\r\n \"Keep-Alive: timeout=10, max=77\\r\\n\"\r\r\n \"Connection: Keep-Alive\\r\\n\"\r\r\n \"Content-Type: text/html; charset=UTF-8\\r\\n\"\r\r\n \"\\r\\n\"\r\r\n }\r\r\n cr3 = ss3.client_receive {\r\r\n assertions {\r\r\n /HTTP\\/1\\.1 (\\d+)/ == 200\r\r\n }\r\r\n }\r\r\n xport4 = tcp(src:&host_0, dst:&host_1, dst_port:80)\r\r\n \r\r\n # GET /en/products/software/kofax_express/download.php HTTP/1.1\r\r\n cs4 = xport4.client_send {\r\r\n \"GET /en/products/software/kofax_express/download.php HTTP/1.1\\r\\n\"\r\r\n \"Host: www.dicom.com\\r\\n\"\r\r\n \"User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.17) Gecko/20110420 Firefox/3.6.17\\r\\n\"\r\r\n \"Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\\r\\n\"\r\r\n \"Accept-Language: en-us,en;q=0.5\\r\\n\"\r\r\n \"Accept-Encoding: gzip,deflate\\r\\n\"\r\r\n \"Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\\r\\n\"\r\r\n \"Keep-Alive: 115\\r\\n\"\r\r\n \"Connection: keep-alive\\r\\n\"\r\r\n \"Referer: http://www.dicom.com/en/products/software/kofax_express.php\\r\\n\"\r\r\n \"Cookie: bsuniquevid=1306759634212y8fTfOzhdbTMIS2ROMgWs50PrUE\\r\\n\"\r\r\n \"Content-Length: 0\\r\\n\"\r\r\n \"\\r\\n\"\r\r\n }\r\r\n sr4 = cs4.server_receive {\r\r\n }\r\r\n # HTTP/1.1 200 OK\r\r\n ss4 = xport4.server_send {\r\r\n \"HTTP/1.1 200 OK\\r\\n\"\r\r\n \"Date: Mon, 30 May 2011 12:52:49 GMT\\r\\n\"\r\r\n \"Server: Apache/2\\r\\n\"\r\r\n \"Vary: Accept-Encoding\\r\\n\"\r\r\n \"Content-Encoding: gzip\\r\\n\"\r\r\n \"Content-Length: 2574\\r\\n\"\r\r\n \"Keep-Alive: timeout=10, max=77\\r\\n\"\r\r\n \"Connection: Keep-Alive\\r\\n\"\r\r\n \"Content-Type: text/html; charset=UTF-8\\r\\n\"\r\r\n \"\\r\\n\"\r\r\n }\r\r\n cr4 = ss4.client_receive {\r\r\n assertions {\r\r\n /HTTP\\/1\\.1 (\\d+)/ == 200\r\r\n }\r\r\n }\r\r\n }\r\r\n}\r\r\n",
13
+ "csv": "",
14
+ "pattern": {
15
+ "iterations": 1,
16
+ "intervals": [
17
+ {
18
+ "iterations": 1,
19
+ "end": 100,
20
+ "start": 1,
21
+ "duration": 20
22
+ }
23
+ ]
24
+ }
25
+ }
@@ -41,7 +41,11 @@ class Mu
41
41
  msg "no msl files found", Logger::ERROR
42
42
  else
43
43
  files.each do | scenario |
44
- run scenario
44
+ begin
45
+ run scenario
46
+ rescue Exception => e
47
+ msg "Run failed: #{e}", Logger::ERROR
48
+ end
45
49
  if @verify_only
46
50
  output_verify_results scenario
47
51
  else
@@ -146,6 +150,7 @@ class Mu
146
150
  msg "starting #{scenario} ...", Logger::INFO
147
151
  @api.start
148
152
  start_time = Time.now.to_i
153
+ failed_status = 0
149
154
  while true
150
155
  sleep 5
151
156
  status = @api.status
@@ -157,7 +162,10 @@ class Mu
157
162
  dump_status(status, scenario)
158
163
  return
159
164
  else
160
- r = parse_status(status)
165
+ unless parse_status(status)
166
+ msg("Exit run loop on status parse error", Logger::ERROR)
167
+ return
168
+ end
161
169
  end
162
170
  else # status['status'].nil? ... no bonafide status was returned
163
171
  time_now = Time.now.to_i
@@ -166,10 +174,14 @@ class Mu
166
174
  break
167
175
  end
168
176
  end
177
+ else
178
+ failed_status += 1
179
+ break if failed_status == 10
169
180
  end
170
181
  end
171
182
  ensure
172
183
  msg "stopping #{scenario} ...", Logger::DEBUG
184
+ @api.stop
173
185
  end
174
186
 
175
187
  def cmd_running?
@@ -281,11 +293,15 @@ class Mu
281
293
  filename = "app_id_stats.csv"
282
294
  msg "Update stats to: #{File.expand_path(filename)}", Logger::INFO
283
295
  unless File.exists?(filename)
284
- heading = "scenario,executed,errors,timeouts,client_tx_bytes,client_tx_msgs,client_rx_bytes,client_rx_msgs,server_tx_bytes,server_tx_msgs,server_rx_bytes,server_rx_msgs"
296
+ heading = "scenario,executed,errors,timeouts,client_tx_bytes,client_tx_msgs,client_tx_bitrate,client_rx_bytes,client_rx_msgs,client_rx_bitrate,server_tx_bytes,server_tx_msgs,server_tx_bitrate,server_rx_bytes,server_rx_msgs,server_rx_bitrate"
285
297
  File.open(filename, 'a'){|f| f.puts(heading)}
286
298
  end
287
- @row = "#{msl_file},#{@executed},#{@errors},#{@timeouts},#{@client_tx_bytes},#{@client_tx_msgs},#{@client_rx_bytes},#{@client_rx_msgs},#{@server_tx_bytes},#{@server_tx_msgs},#{@server_rx_bytes},#{@server_rx_msgs}"
288
- File.open(filename, 'a'){|f| f.puts(@row)}
299
+ @row = [msl_file,@executed,@errors,@timeouts,
300
+ @client_tx_bytes,@client_tx_msgs,@client_tx_bitrate,
301
+ @client_rx_bytes,@client_rx_msgs,@client_rx_bitrate,
302
+ @server_tx_bytes,@server_tx_msgs,@server_tx_bitrate,
303
+ @server_rx_bytes,@server_rx_msgs,@server_rx_bitrate]
304
+ File.open(filename, 'a'){|f| f.puts(@row.join(','))}
289
305
  end
290
306
 
291
307
  def output_verify_results(msl_file)
@@ -344,7 +360,7 @@ class Mu
344
360
  @error = status["status"]["error"]
345
361
  @reason = status["status"]["reason"]
346
362
  msg "*** Error = #{@error}, reason = #{@reason} ***"
347
- return nil
363
+ return false
348
364
  end
349
365
  end
350
366
 
@@ -366,6 +382,18 @@ class Mu
366
382
  @client_tx_msgs = @client["tx"]["msgs"]
367
383
  @client_rx_bytes = @client["rx"]["bytes"]
368
384
  @client_rx_msgs = @client["rx"]["msgs"]
385
+
386
+ # Compute bitrates
387
+ @client_tx_bitrate = @client_rx_bitrate = 0
388
+ @server_tx_bitrate = @server_rx_bitrate = 0
389
+ if @duration.to_f > 0
390
+ @client_tx_bitrate = format_float 2, (@client["tx"]["bytes"] * 8).to_f/@duration.to_f
391
+ @client_rx_bitrate = format_float 2, (@client["rx"]["bytes"] * 8).to_f/@duration.to_f
392
+ @server_tx_bitrate = format_float 2, (@server["tx"]["bytes"] * 8).to_f/@duration.to_f
393
+ @server_tx_bitrate = format_float 2, (@server["rx"]["bytes"] * 8).to_f/@duration.to_f
394
+
395
+ end
396
+ #
369
397
  @scenarios = status["status"]["statistics"]["scenarios"]
370
398
  @scenarios.each do | scenario |
371
399
  @reported_volume = @reported_volume + scenario["volume"]
@@ -391,7 +419,7 @@ class Mu
391
419
  msg "passed: #{@executed}"
392
420
  msg "errors: #{@errors}"
393
421
  msg "timeouts: #{@timeouts}"
394
- msg "client tx bytes/sec #{format_float(2, @client_tx_bytes.to_f / @duration)}" if @duration.to_i > 0
422
+ msg "client tx bits/sec #{@client_tx_bitrate}"
395
423
  msg "client tx msgs/sec #{format_float(2, @client_tx_msgs.to_f / @duration)}" if @duration.to_i > 0
396
424
  msg "client rx bytes/sec #{format_float(2, @client_rx_bytes.to_f / @duration)}" if @duration.to_i > 0
397
425
  msg "client rx msgs/sec #{format_float(2, @client_rx_msgs.to_f / @duration)}" if @duration.to_i > 0
data/version.rb CHANGED
@@ -1 +1 @@
1
- VERSION='5.7.28'
1
+ VERSION='5.7.29'
metadata CHANGED
@@ -1,148 +1,161 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: mu
3
- version: !ruby/object:Gem::Version
4
- version: 5.7.28
3
+ version: !ruby/object:Gem::Version
5
4
  prerelease:
5
+ version: 5.7.29
6
6
  platform: ruby
7
- authors:
7
+ authors:
8
8
  - MuEng
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-06-15 00:00:00.000000000Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
12
+
13
+ date: 2011-06-23 00:00:00 -07:00
14
+ default_executable:
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
15
17
  name: nokogiri
16
- requirement: &23041660 !ruby/object:Gem::Requirement
18
+ prerelease: false
19
+ requirement: &id001 !ruby/object:Gem::Requirement
17
20
  none: false
18
- requirements:
19
- - - ! '>='
20
- - !ruby/object:Gem::Version
21
+ requirements:
22
+ - - ">="
23
+ - !ruby/object:Gem::Version
21
24
  version: 1.4.4
22
25
  type: :runtime
23
- prerelease: false
24
- version_requirements: *23041660
25
- - !ruby/object:Gem::Dependency
26
+ version_requirements: *id001
27
+ - !ruby/object:Gem::Dependency
26
28
  name: rest-client
27
- requirement: &23041040 !ruby/object:Gem::Requirement
29
+ prerelease: false
30
+ requirement: &id002 !ruby/object:Gem::Requirement
28
31
  none: false
29
- requirements:
30
- - - ! '>='
31
- - !ruby/object:Gem::Version
32
+ requirements:
33
+ - - ">="
34
+ - !ruby/object:Gem::Version
32
35
  version: 1.6.1
33
36
  type: :runtime
34
- prerelease: false
35
- version_requirements: *23041040
36
- - !ruby/object:Gem::Dependency
37
+ version_requirements: *id002
38
+ - !ruby/object:Gem::Dependency
37
39
  name: mime-types
38
- requirement: &23040520 !ruby/object:Gem::Requirement
40
+ prerelease: false
41
+ requirement: &id003 !ruby/object:Gem::Requirement
39
42
  none: false
40
- requirements:
41
- - - ! '>='
42
- - !ruby/object:Gem::Version
43
- version: '1.16'
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: "1.16"
44
47
  type: :runtime
45
- prerelease: false
46
- version_requirements: *23040520
47
- - !ruby/object:Gem::Dependency
48
+ version_requirements: *id003
49
+ - !ruby/object:Gem::Dependency
48
50
  name: json
49
- requirement: &23040100 !ruby/object:Gem::Requirement
51
+ prerelease: false
52
+ requirement: &id004 !ruby/object:Gem::Requirement
50
53
  none: false
51
- requirements:
52
- - - ! '>='
53
- - !ruby/object:Gem::Version
54
- version: '0'
54
+ requirements:
55
+ - - ">="
56
+ - !ruby/object:Gem::Version
57
+ version: "0"
55
58
  type: :runtime
56
- prerelease: false
57
- version_requirements: *23040100
58
- - !ruby/object:Gem::Dependency
59
+ version_requirements: *id004
60
+ - !ruby/object:Gem::Dependency
59
61
  name: hexy
60
- requirement: &23039380 !ruby/object:Gem::Requirement
62
+ prerelease: false
63
+ requirement: &id005 !ruby/object:Gem::Requirement
61
64
  none: false
62
- requirements:
63
- - - ! '>='
64
- - !ruby/object:Gem::Version
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
65
68
  version: 0.1.1
66
69
  type: :runtime
67
- prerelease: false
68
- version_requirements: *23039380
69
- - !ruby/object:Gem::Dependency
70
+ version_requirements: *id005
71
+ - !ruby/object:Gem::Dependency
70
72
  name: uuid
71
- requirement: &23038720 !ruby/object:Gem::Requirement
73
+ prerelease: false
74
+ requirement: &id006 !ruby/object:Gem::Requirement
72
75
  none: false
73
- requirements:
74
- - - ! '>='
75
- - !ruby/object:Gem::Version
76
+ requirements:
77
+ - - ">="
78
+ - !ruby/object:Gem::Version
76
79
  version: 2.0.2
77
80
  type: :runtime
78
- prerelease: false
79
- version_requirements: *23038720
80
- description: ! "The Mu gem allows users to include mu libraries within scripts\n that
81
- interact with mu appliance software. The gem also supplies command line interfaces\n
82
- \ to many of these same libraries"
83
- email:
81
+ version_requirements: *id006
82
+ description: |-
83
+ The Mu gem allows users to include mu libraries within scripts
84
+ that interact with mu appliance software. The gem also supplies command line interfaces
85
+ to many of these same libraries
86
+ email:
84
87
  - info@mudynamics.com
85
- executables:
88
+ executables:
86
89
  - mu
87
90
  extensions: []
91
+
88
92
  extra_rdoc_files: []
89
- files:
90
- - lib/mu.rb
91
- - lib/mu/har.rb
92
- - lib/mu/http_helper.rb
93
- - lib/mu/client.rb
94
- - lib/mu/api/netconfig.rb
95
- - lib/mu/api/muapi.rb
93
+
94
+ files:
95
+ - lib/mu/api/ddt.rb
96
96
  - lib/mu/api/homepage.rb
97
- - lib/mu/api/system.rb
97
+ - lib/mu/api/muapi.rb
98
+ - lib/mu/api/netconfig.rb
98
99
  - lib/mu/api/scale.rb
99
- - lib/mu/api/ddt.rb
100
- - lib/mu/helper.rb
101
- - lib/mu/maker.rb
102
- - lib/mu/command/cmd_homepage.rb
100
+ - lib/mu/api/system.rb
101
+ - lib/mu/client.rb
103
102
  - lib/mu/command/api.rb
104
103
  - lib/mu/command/cmd_ddt.rb
105
- - lib/mu/command/cmd_scale.rb
106
- - lib/mu/command/curl.rb
104
+ - lib/mu/command/cmd_homepage.rb
107
105
  - lib/mu/command/cmd_muapi.rb
108
- - lib/mu/command/help.rb
109
106
  - lib/mu/command/cmd_musl.rb
110
- - lib/mu/command/cmd_system.rb
107
+ - lib/mu/command/cmd_netconfig.rb
108
+ - lib/mu/command/cmd_runanalysis.rb
111
109
  - lib/mu/command/cmd_runscale.rb
112
110
  - lib/mu/command/cmd_runscenario.rb
113
- - lib/mu/command/cmd_runanalysis.rb
114
- - lib/mu/command/cmd_netconfig.rb
115
111
  - lib/mu/command/cmd_runverify.rb
112
+ - lib/mu/command/cmd_scale.rb
113
+ - lib/mu/command/cmd_system.rb
114
+ - lib/mu/command/curl.rb
115
+ - lib/mu/command/help.rb
116
116
  - lib/mu/command.rb
117
117
  - lib/mu/curl/error.rb
118
118
  - lib/mu/curl/verify.rb
119
+ - lib/mu/har.rb
120
+ - lib/mu/helper.rb
121
+ - lib/mu/http_helper.rb
122
+ - lib/mu/maker.rb
123
+ - lib/mu.rb
124
+ - bin/app_id_stats.csv
125
+ - bin/app_id_status.json
119
126
  - bin/mu
127
+ - bin/scale.json
120
128
  - Mu_Gem.html
121
129
  - version.rb
122
130
  - LICENSE.txt
123
131
  - README.rdoc
132
+ has_rdoc: true
124
133
  homepage: http://www.mudynamics.com
125
134
  licenses: []
135
+
126
136
  post_install_message:
127
137
  rdoc_options: []
128
- require_paths:
138
+
139
+ require_paths:
129
140
  - lib
130
- required_ruby_version: !ruby/object:Gem::Requirement
141
+ required_ruby_version: !ruby/object:Gem::Requirement
131
142
  none: false
132
- requirements:
133
- - - ! '>='
134
- - !ruby/object:Gem::Version
143
+ requirements:
144
+ - - ">="
145
+ - !ruby/object:Gem::Version
135
146
  version: 1.8.7
136
- required_rubygems_version: !ruby/object:Gem::Requirement
147
+ required_rubygems_version: !ruby/object:Gem::Requirement
137
148
  none: false
138
- requirements:
139
- - - ! '>='
140
- - !ruby/object:Gem::Version
141
- version: '0'
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: "0"
142
153
  requirements: []
154
+
143
155
  rubyforge_project:
144
- rubygems_version: 1.8.5
156
+ rubygems_version: 1.6.2
145
157
  signing_key:
146
158
  specification_version: 3
147
159
  summary: Mu Dynamics General Purpose Library and Command Line Tool
148
160
  test_files: []
161
+