rbatch 1.13.1 → 2.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +15 -0
- data/README.ja.md +81 -49
- data/README.md +88 -63
- data/Rakefile +2 -31
- data/bin/rbatch-init +57 -32
- data/{rdocs → doc}/RBatch/Cmd.html +66 -59
- data/{rdocs → doc}/RBatch/CmdException.html +9 -3
- data/{rdocs → doc}/RBatch/CmdResult.html +40 -34
- data/{rdocs → doc}/RBatch/CommonConfig/Exception.html +9 -3
- data/{rdocs → doc}/RBatch/CommonConfig.html +22 -17
- data/{rdocs → doc}/RBatch/Config/Exception.html +9 -3
- data/{rdocs → doc}/RBatch/Config.html +21 -16
- data/{rdocs/RBatchException.html → doc/RBatch/DoubleRunCheckException.html} +33 -30
- data/doc/RBatch/DoubleRunChecker.html +277 -0
- data/{rdocs → doc}/RBatch/Log.html +134 -138
- data/doc/RBatch/RunConf/Exception.html +159 -0
- data/doc/RBatch/RunConf.html +557 -0
- data/doc/RBatch.html +655 -0
- data/doc/created.rid +9 -0
- data/{rdocs → doc}/index.html +46 -20
- data/{rdocs → doc}/lib/rbatch/cmd_rb.html +4 -2
- data/{rdocs → doc}/lib/rbatch/common_config_rb.html +2 -2
- data/{rdocs → doc}/lib/rbatch/config_rb.html +2 -2
- data/doc/lib/rbatch/double_run_checker_rb.html +56 -0
- data/{rdocs → doc}/lib/rbatch/log_rb.html +2 -2
- data/doc/lib/rbatch/run_conf_rb.html +56 -0
- data/{rdocs → doc}/lib/rbatch/version_rb.html +2 -2
- data/{rdocs → doc}/lib/rbatch_rb.html +7 -3
- data/lib/rbatch/cmd.rb +20 -23
- data/lib/rbatch/common_config.rb +2 -3
- data/lib/rbatch/config.rb +1 -2
- data/lib/rbatch/double_run_checker.rb +24 -0
- data/lib/rbatch/log.rb +37 -59
- data/lib/rbatch/run_conf.rb +109 -0
- data/lib/rbatch/version.rb +1 -1
- data/lib/rbatch.rb +37 -56
- data/spec/{cmd_test.spec → cmd_spec.rb} +6 -6
- data/spec/common_config_spec.rb +54 -0
- data/spec/{config_test.spec → config_spec.rb} +2 -1
- data/spec/double_run_checker_spec.rb +10 -0
- data/spec/{log_test.spec → log_spec.rb} +22 -22
- data/spec/rbatch_spec.rb +24 -0
- data/spec/run_conf_spec.rb +85 -0
- metadata +66 -65
- data/rdocs/RBatch.html +0 -713
- data/rdocs/created.rid +0 -7
- data/spec/rbatch_test.spec +0 -25
- data/test/cases/test_cmd.rb +0 -134
- data/test/cases/test_common_config.rb +0 -41
- data/test/cases/test_config.rb +0 -41
- data/test/cases/test_log.rb +0 -613
- data/test/mocks/PrintArgs.exe +0 -0
- data/test/mocks/win_cmd.exe +0 -0
- /data/{rdocs → doc}/images/brick.png +0 -0
- /data/{rdocs → doc}/images/brick_link.png +0 -0
- /data/{rdocs → doc}/images/bug.png +0 -0
- /data/{rdocs → doc}/images/bullet_black.png +0 -0
- /data/{rdocs → doc}/images/bullet_toggle_minus.png +0 -0
- /data/{rdocs → doc}/images/bullet_toggle_plus.png +0 -0
- /data/{rdocs → doc}/images/date.png +0 -0
- /data/{rdocs → doc}/images/find.png +0 -0
- /data/{rdocs → doc}/images/loadingAnimation.gif +0 -0
- /data/{rdocs → doc}/images/macFFBgHack.png +0 -0
- /data/{rdocs → doc}/images/package.png +0 -0
- /data/{rdocs → doc}/images/page_green.png +0 -0
- /data/{rdocs → doc}/images/page_white_text.png +0 -0
- /data/{rdocs → doc}/images/page_white_width.png +0 -0
- /data/{rdocs → doc}/images/plugin.png +0 -0
- /data/{rdocs → doc}/images/ruby.png +0 -0
- /data/{rdocs → doc}/images/tag_green.png +0 -0
- /data/{rdocs → doc}/images/wrench.png +0 -0
- /data/{rdocs → doc}/images/wrench_orange.png +0 -0
- /data/{rdocs → doc}/images/zoom.png +0 -0
- /data/{rdocs → doc}/js/darkfish.js +0 -0
- /data/{rdocs → doc}/js/jquery.js +0 -0
- /data/{rdocs → doc}/js/quicksearch.js +0 -0
- /data/{rdocs → doc}/js/thickbox-compressed.js +0 -0
- /data/{rdocs → doc}/rdoc.css +0 -0
data/{rdocs → doc}/index.html
RENAMED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
|
6
6
|
<head>
|
7
|
-
<meta content="text/html; charset=
|
7
|
+
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
|
8
8
|
|
9
9
|
<title>RDoc Documentation</title>
|
10
10
|
|
@@ -47,9 +47,15 @@
|
|
47
47
|
|
48
48
|
<li class="class"><a href="RBatch/Config/Exception.html">RBatch::Config::Exception</a></li>
|
49
49
|
|
50
|
+
<li class="class"><a href="RBatch/DoubleRunCheckException.html">RBatch::DoubleRunCheckException</a></li>
|
51
|
+
|
52
|
+
<li class="module"><a href="RBatch/DoubleRunChecker.html">RBatch::DoubleRunChecker</a></li>
|
53
|
+
|
50
54
|
<li class="class"><a href="RBatch/Log.html">RBatch::Log</a></li>
|
51
55
|
|
52
|
-
<li class="class"><a href="
|
56
|
+
<li class="class"><a href="RBatch/RunConf.html">RBatch::RunConf</a></li>
|
57
|
+
|
58
|
+
<li class="class"><a href="RBatch/RunConf/Exception.html">RBatch::RunConf::Exception</a></li>
|
53
59
|
|
54
60
|
</ul>
|
55
61
|
|
@@ -58,13 +64,15 @@
|
|
58
64
|
|
59
65
|
<li><a href="RBatch/Config.html#method-c-new">::new — RBatch::Config</a></li>
|
60
66
|
|
61
|
-
<li><a href="RBatch/
|
67
|
+
<li><a href="RBatch/Log.html#method-c-new">::new — RBatch::Log</a></li>
|
68
|
+
|
69
|
+
<li><a href="RBatch/CmdResult.html#method-c-new">::new — RBatch::CmdResult</a></li>
|
62
70
|
|
63
71
|
<li><a href="RBatch/CommonConfig.html#method-c-new">::new — RBatch::CommonConfig</a></li>
|
64
72
|
|
65
|
-
<li><a href="RBatch/
|
73
|
+
<li><a href="RBatch/RunConf.html#method-c-new">::new — RBatch::RunConf</a></li>
|
66
74
|
|
67
|
-
<li><a href="RBatch/
|
75
|
+
<li><a href="RBatch/Cmd.html#method-c-new">::new — RBatch::Cmd</a></li>
|
68
76
|
|
69
77
|
<li><a href="RBatch/Log.html#method-c-verbose">::verbose — RBatch::Log</a></li>
|
70
78
|
|
@@ -72,8 +80,14 @@
|
|
72
80
|
|
73
81
|
<li><a href="RBatch/Config.html#method-i-%5B%5D">#[] — RBatch::Config</a></li>
|
74
82
|
|
83
|
+
<li><a href="RBatch/RunConf.html#method-i-%5B%5D">#[] — RBatch::RunConf</a></li>
|
84
|
+
|
75
85
|
<li><a href="RBatch/CommonConfig.html#method-i-%5B%5D">#[] — RBatch::CommonConfig</a></li>
|
76
86
|
|
87
|
+
<li><a href="RBatch/RunConf.html#method-i-%5B%5D%3D">#[]= — RBatch::RunConf</a></li>
|
88
|
+
|
89
|
+
<li><a href="RBatch/DoubleRunChecker.html#method-i-check">#check — RBatch::DoubleRunChecker</a></li>
|
90
|
+
|
77
91
|
<li><a href="RBatch/Log.html#method-i-close">#close — RBatch::Log</a></li>
|
78
92
|
|
79
93
|
<li><a href="RBatch.html#method-i-cmd">#cmd — RBatch</a></li>
|
@@ -82,27 +96,37 @@
|
|
82
96
|
|
83
97
|
<li><a href="RBatch.html#method-i-common_config">#common_config — RBatch</a></li>
|
84
98
|
|
99
|
+
<li><a href="RBatch.html#method-i-conf_dir">#conf_dir — RBatch</a></li>
|
100
|
+
|
85
101
|
<li><a href="RBatch.html#method-i-config">#config — RBatch</a></li>
|
86
102
|
|
87
103
|
<li><a href="RBatch/Log.html#method-i-debug">#debug — RBatch::Log</a></li>
|
88
104
|
|
89
105
|
<li><a href="RBatch/Log.html#method-i-delete_old_log">#delete_old_log — RBatch::Log</a></li>
|
90
106
|
|
91
|
-
<li><a href="RBatch.html#method-i-double_run_check">#double_run_check — RBatch</a></li>
|
92
|
-
|
93
|
-
<li><a href="RBatch.html#method-i-double_run_lock_file">#double_run_lock_file — RBatch</a></li>
|
94
|
-
|
95
107
|
<li><a href="RBatch/Log.html#method-i-error">#error — RBatch::Log</a></li>
|
96
108
|
|
97
109
|
<li><a href="RBatch/Log.html#method-i-fatal">#fatal — RBatch::Log</a></li>
|
98
110
|
|
99
111
|
<li><a href="RBatch.html#method-i-home_dir">#home_dir — RBatch</a></li>
|
100
112
|
|
101
|
-
<li><a href="RBatch.html#method-i-
|
113
|
+
<li><a href="RBatch/Log.html#method-i-info">#info — RBatch::Log</a></li>
|
102
114
|
|
103
|
-
<li><a href="RBatch.html#method-i-
|
115
|
+
<li><a href="RBatch.html#method-i-init">#init — RBatch</a></li>
|
104
116
|
|
105
|
-
<li><a href="RBatch
|
117
|
+
<li><a href="RBatch.html#method-i-journal">#journal — RBatch</a></li>
|
118
|
+
|
119
|
+
<li><a href="RBatch/RunConf.html#method-i-load">#load — RBatch::RunConf</a></li>
|
120
|
+
|
121
|
+
<li><a href="RBatch/DoubleRunChecker.html#method-i-lock_file_name">#lock_file_name — RBatch::DoubleRunChecker</a></li>
|
122
|
+
|
123
|
+
<li><a href="RBatch.html#method-i-log_dir">#log_dir — RBatch</a></li>
|
124
|
+
|
125
|
+
<li><a href="RBatch/DoubleRunChecker.html#method-i-make_lock_file">#make_lock_file — RBatch::DoubleRunChecker</a></li>
|
126
|
+
|
127
|
+
<li><a href="RBatch/RunConf.html#method-i-merge">#merge — RBatch::RunConf</a></li>
|
128
|
+
|
129
|
+
<li><a href="RBatch/RunConf.html#method-i-merge%21">#merge! — RBatch::RunConf</a></li>
|
106
130
|
|
107
131
|
<li><a href="RBatch/Log.html#method-i-opt">#opt — RBatch::Log</a></li>
|
108
132
|
|
@@ -110,16 +134,20 @@
|
|
110
134
|
|
111
135
|
<li><a href="RBatch/Config.html#method-i-path">#path — RBatch::Config</a></li>
|
112
136
|
|
113
|
-
<li><a href="RBatch.html#method-i-
|
137
|
+
<li><a href="RBatch.html#method-i-program_base">#program_base — RBatch</a></li>
|
114
138
|
|
115
|
-
<li><a href="RBatch.html#method-i-program_name
|
139
|
+
<li><a href="RBatch.html#method-i-program_name">#program_name — RBatch</a></li>
|
116
140
|
|
117
|
-
<li><a href="RBatch.html#method-i-
|
141
|
+
<li><a href="RBatch/RunConf.html#method-i-reload">#reload — RBatch::RunConf</a></li>
|
118
142
|
|
119
|
-
<li><a href="RBatch.html#method-i-
|
143
|
+
<li><a href="RBatch/RunConf.html#method-i-reset">#reset — RBatch::RunConf</a></li>
|
120
144
|
|
121
145
|
<li><a href="RBatch/Cmd.html#method-i-run">#run — RBatch::Cmd</a></li>
|
122
146
|
|
147
|
+
<li><a href="RBatch.html#method-i-run_conf">#run_conf — RBatch</a></li>
|
148
|
+
|
149
|
+
<li><a href="RBatch.html#method-i-run_conf_path">#run_conf_path — RBatch</a></li>
|
150
|
+
|
123
151
|
<li><a href="RBatch/Log.html#method-i-send_mail">#send_mail — RBatch::Log</a></li>
|
124
152
|
|
125
153
|
<li><a href="RBatch/CmdResult.html#method-i-status">#status — RBatch::CmdResult</a></li>
|
@@ -132,15 +160,13 @@
|
|
132
160
|
|
133
161
|
<li><a href="RBatch/CmdResult.html#method-i-stdout_file">#stdout_file — RBatch::CmdResult</a></li>
|
134
162
|
|
135
|
-
<li><a href="RBatch.html#method-i-tmp_dir">#tmp_dir — RBatch</a></li>
|
136
|
-
|
137
163
|
<li><a href="RBatch/CmdResult.html#method-i-to_h">#to_h — RBatch::CmdResult</a></li>
|
138
164
|
|
139
|
-
<li><a href="RBatch/
|
165
|
+
<li><a href="RBatch/Config.html#method-i-to_s">#to_s — RBatch::Config</a></li>
|
140
166
|
|
141
167
|
<li><a href="RBatch/CommonConfig.html#method-i-to_s">#to_s — RBatch::CommonConfig</a></li>
|
142
168
|
|
143
|
-
<li><a href="RBatch/
|
169
|
+
<li><a href="RBatch/CmdResult.html#method-i-to_s">#to_s — RBatch::CmdResult</a></li>
|
144
170
|
|
145
171
|
<li><a href="RBatch/Log.html#method-i-warn">#warn — RBatch::Log</a></li>
|
146
172
|
|
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
6
6
|
<head>
|
7
|
-
<meta content="text/html; charset=
|
7
|
+
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
|
8
8
|
|
9
9
|
<title>File: cmd.rb [RDoc Documentation]</title>
|
10
10
|
|
@@ -24,7 +24,7 @@
|
|
24
24
|
<div id="metadata">
|
25
25
|
<dl>
|
26
26
|
<dt class="modified-date">Last Modified</dt>
|
27
|
-
<dd class="modified-date">2013-12-
|
27
|
+
<dd class="modified-date">2013-12-28 11:15:50 +0900</dd>
|
28
28
|
|
29
29
|
|
30
30
|
<dt class="requires">Requires</dt>
|
@@ -35,6 +35,8 @@
|
|
35
35
|
|
36
36
|
<li>tempfile</li>
|
37
37
|
|
38
|
+
<li>tmpdir</li>
|
39
|
+
|
38
40
|
</ul>
|
39
41
|
</dd>
|
40
42
|
|
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
6
6
|
<head>
|
7
|
-
<meta content="text/html; charset=
|
7
|
+
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
|
8
8
|
|
9
9
|
<title>File: common_config.rb [RDoc Documentation]</title>
|
10
10
|
|
@@ -24,7 +24,7 @@
|
|
24
24
|
<div id="metadata">
|
25
25
|
<dl>
|
26
26
|
<dt class="modified-date">Last Modified</dt>
|
27
|
-
<dd class="modified-date">2013-12-
|
27
|
+
<dd class="modified-date">2013-12-28 03:00:00 +0900</dd>
|
28
28
|
|
29
29
|
|
30
30
|
<dt class="requires">Requires</dt>
|
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
6
6
|
<head>
|
7
|
-
<meta content="text/html; charset=
|
7
|
+
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
|
8
8
|
|
9
9
|
<title>File: config.rb [RDoc Documentation]</title>
|
10
10
|
|
@@ -24,7 +24,7 @@
|
|
24
24
|
<div id="metadata">
|
25
25
|
<dl>
|
26
26
|
<dt class="modified-date">Last Modified</dt>
|
27
|
-
<dd class="modified-date">2013-12-
|
27
|
+
<dd class="modified-date">2013-12-28 10:39:24 +0900</dd>
|
28
28
|
|
29
29
|
|
30
30
|
<dt class="requires">Requires</dt>
|
@@ -0,0 +1,56 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
3
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
4
|
+
|
5
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
6
|
+
<head>
|
7
|
+
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
|
8
|
+
|
9
|
+
<title>File: double_run_checker.rb [RDoc Documentation]</title>
|
10
|
+
|
11
|
+
<link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
|
12
|
+
|
13
|
+
<script src="../../js/jquery.js" type="text/javascript"
|
14
|
+
charset="utf-8"></script>
|
15
|
+
<script src="../../js/thickbox-compressed.js" type="text/javascript"
|
16
|
+
charset="utf-8"></script>
|
17
|
+
<script src="../../js/quicksearch.js" type="text/javascript"
|
18
|
+
charset="utf-8"></script>
|
19
|
+
<script src="../../js/darkfish.js" type="text/javascript"
|
20
|
+
charset="utf-8"></script>
|
21
|
+
</head>
|
22
|
+
|
23
|
+
<body class="file file-popup">
|
24
|
+
<div id="metadata">
|
25
|
+
<dl>
|
26
|
+
<dt class="modified-date">Last Modified</dt>
|
27
|
+
<dd class="modified-date">2013-12-28 03:15:22 +0900</dd>
|
28
|
+
|
29
|
+
|
30
|
+
<dt class="requires">Requires</dt>
|
31
|
+
<dd class="requires">
|
32
|
+
<ul>
|
33
|
+
|
34
|
+
<li>tmpdir</li>
|
35
|
+
|
36
|
+
<li>tempfile</li>
|
37
|
+
|
38
|
+
</ul>
|
39
|
+
</dd>
|
40
|
+
|
41
|
+
|
42
|
+
|
43
|
+
</dl>
|
44
|
+
</div>
|
45
|
+
|
46
|
+
<div id="documentation">
|
47
|
+
|
48
|
+
<div class="description">
|
49
|
+
<h2>Description</h2>
|
50
|
+
|
51
|
+
</div>
|
52
|
+
|
53
|
+
</div>
|
54
|
+
</body>
|
55
|
+
</html>
|
56
|
+
|
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
6
6
|
<head>
|
7
|
-
<meta content="text/html; charset=
|
7
|
+
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
|
8
8
|
|
9
9
|
<title>File: log.rb [RDoc Documentation]</title>
|
10
10
|
|
@@ -24,7 +24,7 @@
|
|
24
24
|
<div id="metadata">
|
25
25
|
<dl>
|
26
26
|
<dt class="modified-date">Last Modified</dt>
|
27
|
-
<dd class="modified-date">2013-12-
|
27
|
+
<dd class="modified-date">2013-12-28 14:15:39 +0900</dd>
|
28
28
|
|
29
29
|
|
30
30
|
<dt class="requires">Requires</dt>
|
@@ -0,0 +1,56 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
3
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
4
|
+
|
5
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
6
|
+
<head>
|
7
|
+
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
|
8
|
+
|
9
|
+
<title>File: run_conf.rb [RDoc Documentation]</title>
|
10
|
+
|
11
|
+
<link type="text/css" media="screen" href="../../rdoc.css" rel="stylesheet" />
|
12
|
+
|
13
|
+
<script src="../../js/jquery.js" type="text/javascript"
|
14
|
+
charset="utf-8"></script>
|
15
|
+
<script src="../../js/thickbox-compressed.js" type="text/javascript"
|
16
|
+
charset="utf-8"></script>
|
17
|
+
<script src="../../js/quicksearch.js" type="text/javascript"
|
18
|
+
charset="utf-8"></script>
|
19
|
+
<script src="../../js/darkfish.js" type="text/javascript"
|
20
|
+
charset="utf-8"></script>
|
21
|
+
</head>
|
22
|
+
|
23
|
+
<body class="file file-popup">
|
24
|
+
<div id="metadata">
|
25
|
+
<dl>
|
26
|
+
<dt class="modified-date">Last Modified</dt>
|
27
|
+
<dd class="modified-date">2013-12-28 14:13:02 +0900</dd>
|
28
|
+
|
29
|
+
|
30
|
+
<dt class="requires">Requires</dt>
|
31
|
+
<dd class="requires">
|
32
|
+
<ul>
|
33
|
+
|
34
|
+
<li>tmpdir</li>
|
35
|
+
|
36
|
+
<li>yaml</li>
|
37
|
+
|
38
|
+
</ul>
|
39
|
+
</dd>
|
40
|
+
|
41
|
+
|
42
|
+
|
43
|
+
</dl>
|
44
|
+
</div>
|
45
|
+
|
46
|
+
<div id="documentation">
|
47
|
+
|
48
|
+
<div class="description">
|
49
|
+
<h2>Description</h2>
|
50
|
+
|
51
|
+
</div>
|
52
|
+
|
53
|
+
</div>
|
54
|
+
</body>
|
55
|
+
</html>
|
56
|
+
|
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
6
6
|
<head>
|
7
|
-
<meta content="text/html; charset=
|
7
|
+
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
|
8
8
|
|
9
9
|
<title>File: version.rb [RDoc Documentation]</title>
|
10
10
|
|
@@ -24,7 +24,7 @@
|
|
24
24
|
<div id="metadata">
|
25
25
|
<dl>
|
26
26
|
<dt class="modified-date">Last Modified</dt>
|
27
|
-
<dd class="modified-date">2013-12-
|
27
|
+
<dd class="modified-date">2013-12-28 02:25:41 +0900</dd>
|
28
28
|
|
29
29
|
|
30
30
|
<dt class="requires">Requires</dt>
|
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
6
6
|
<head>
|
7
|
-
<meta content="text/html; charset=
|
7
|
+
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
|
8
8
|
|
9
9
|
<title>File: rbatch.rb [RDoc Documentation]</title>
|
10
10
|
|
@@ -24,14 +24,18 @@
|
|
24
24
|
<div id="metadata">
|
25
25
|
<dl>
|
26
26
|
<dt class="modified-date">Last Modified</dt>
|
27
|
-
<dd class="modified-date">2013-12-
|
27
|
+
<dd class="modified-date">2013-12-28 14:03:07 +0900</dd>
|
28
28
|
|
29
29
|
|
30
30
|
<dt class="requires">Requires</dt>
|
31
31
|
<dd class="requires">
|
32
32
|
<ul>
|
33
33
|
|
34
|
-
<li>
|
34
|
+
<li>yaml</li>
|
35
|
+
|
36
|
+
<li>rbatch/run_conf</li>
|
37
|
+
|
38
|
+
<li>rbatch/double_run_checker</li>
|
35
39
|
|
36
40
|
<li>rbatch/log</li>
|
37
41
|
|
data/lib/rbatch/cmd.rb
CHANGED
@@ -31,36 +31,27 @@ module RBatch
|
|
31
31
|
# => "fileA\nfileB\n"
|
32
32
|
#
|
33
33
|
class Cmd
|
34
|
-
@@def_opt = {
|
35
|
-
:raise => false,
|
36
|
-
:timeout => 0
|
37
|
-
}
|
38
34
|
@cmd_str
|
39
35
|
@opt
|
40
36
|
|
41
37
|
# Cmd instance
|
42
38
|
#
|
43
39
|
# ==== Params
|
44
|
-
# +cmd_str+ = Command string
|
45
|
-
# +opt+ = Option hash object.
|
40
|
+
# +cmd_str+ = Command string such as "ls -l"
|
41
|
+
# +opt+ = Option hash object.
|
46
42
|
# - +:raise+ (Boolean) = If command exit status is not 0, raise exception. Default is false.
|
47
|
-
# - +:timeout+ (Integer) = If command timeout , raise exception. Default is 0 sec ( 0 means disable) .
|
43
|
+
# - +:timeout+ (Integer) = If command timeout , raise exception and kill process. Default is 0 sec ( 0 means disable) .
|
48
44
|
def initialize(cmd_str,opt = nil)
|
49
45
|
raise(CmdException,"Command string is nil") if cmd_str.nil?
|
50
46
|
@cmd_str = cmd_str
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
elsif RBatch.rbatch_config != nil \
|
58
|
-
&& RBatch.rbatch_config["cmd_" + key.to_s] != nil
|
59
|
-
# use config
|
60
|
-
@opt[key] = RBatch.rbatch_config["cmd_" + key.to_s]
|
61
|
-
else
|
62
|
-
# use default
|
47
|
+
tmp = {}
|
48
|
+
if opt.nil?
|
49
|
+
@opt=RBatch.run_conf.clone
|
50
|
+
else
|
51
|
+
opt.each_key do |key|
|
52
|
+
tmp[("cmd_" + key.to_s).to_sym] = opt[key]
|
63
53
|
end
|
54
|
+
@opt=RBatch.run_conf.merge(tmp)
|
64
55
|
end
|
65
56
|
end
|
66
57
|
|
@@ -72,19 +63,25 @@ module RBatch
|
|
72
63
|
stdout_file = Tempfile::new("rbatch_tmpout",Dir.tmpdir)
|
73
64
|
stderr_file = Tempfile::new("rbatch_tmperr",Dir.tmpdir)
|
74
65
|
pid = spawn(@cmd_str,:out => [stdout_file,"w"],:err => [stderr_file,"w"])
|
75
|
-
|
66
|
+
status = nil
|
67
|
+
if @opt[:cmd_timeout] != 0
|
76
68
|
begin
|
77
|
-
timeout(@opt[:
|
69
|
+
timeout(@opt[:cmd_timeout]) do
|
78
70
|
status = Process.waitpid2(pid)[1] >> 8
|
79
71
|
end
|
80
72
|
rescue Timeout::Error => e
|
81
|
-
|
73
|
+
begin
|
74
|
+
Process.kill('SIGINT', pid)
|
75
|
+
raise(CmdException,"Run time of command \"#{@cmd_str}\" is over #{@opt[:cmd_timeout].to_s} sec. Success to kill process : PID=#{pid}" )
|
76
|
+
rescue
|
77
|
+
raise(CmdException,"Run time of command \"#{@cmd_str}\" is over #{@opt[:cmd_timeout].to_s} sec. Fail to kill process : PID=#{pid}" )
|
78
|
+
end
|
82
79
|
end
|
83
80
|
else
|
84
81
|
status = Process.waitpid2(pid)[1] >> 8
|
85
82
|
end
|
86
83
|
result = RBatch::CmdResult.new(stdout_file,stderr_file,status,@cmd_str)
|
87
|
-
if @opt[:
|
84
|
+
if @opt[:cmd_raise] && status != 0
|
88
85
|
raise(CmdException,"Command exit status is not 0. result: " + result.to_s)
|
89
86
|
end
|
90
87
|
return result
|
data/lib/rbatch/common_config.rb
CHANGED
@@ -28,9 +28,8 @@ module RBatch
|
|
28
28
|
@path
|
29
29
|
@config
|
30
30
|
def initialize
|
31
|
-
file =
|
32
|
-
|
33
|
-
@path = File.join(dir,file)
|
31
|
+
file = RBatch.run_conf[:common_conf_name]
|
32
|
+
@path = File.join(RBatch.run_conf[:conf_dir].gsub("<home>",RBatch.home_dir),file)
|
34
33
|
@config = YAML::load_file(@path)
|
35
34
|
end
|
36
35
|
def[](key)
|
data/lib/rbatch/config.rb
CHANGED
@@ -30,8 +30,7 @@ module RBatch
|
|
30
30
|
@config
|
31
31
|
def initialize
|
32
32
|
file = Pathname(File.basename(RBatch.program_name)).sub_ext(".yaml").to_s
|
33
|
-
|
34
|
-
@path = File.join(dir,file)
|
33
|
+
@path = File.join(RBatch.run_conf[:conf_dir].gsub("<home>",RBatch.home_dir),file)
|
35
34
|
@config = YAML::load_file(@path)
|
36
35
|
end
|
37
36
|
def[](key)
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require 'tmpdir'
|
2
|
+
require 'tempfile'
|
3
|
+
module RBatch
|
4
|
+
module DoubleRunChecker
|
5
|
+
module_function
|
6
|
+
def lock_file_name(p)
|
7
|
+
File.join("rbatch_lock_" + p)
|
8
|
+
end
|
9
|
+
|
10
|
+
def check(p)
|
11
|
+
Dir::foreach(Dir.tmpdir) do |f|
|
12
|
+
if Regexp.new(lock_file_name(p)) =~ f
|
13
|
+
raise RBatch::DoubleRunCheckException, p + " is forbidden running doubly"
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
def make_lock_file(p)
|
19
|
+
Tempfile::new(lock_file_name(p),Dir.tmpdir)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
class DoubleRunCheckException < Exception ; end
|
24
|
+
end
|