hammer_cli 0.3.0 → 0.4.0
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.
- checksums.yaml +4 -4
- data/bin/hammer +14 -4
- data/doc/release_notes.md +8 -0
- data/lib/hammer_cli/abstract.rb +1 -3
- data/lib/hammer_cli/logger.rb +29 -0
- data/lib/hammer_cli/settings.rb +1 -3
- data/lib/hammer_cli/version.rb +1 -1
- data/locale/de/LC_MESSAGES/hammer-cli.mo +0 -0
- data/locale/de/hammer-cli.edit.po +21 -21
- data/locale/de/hammer-cli.po +32 -24
- data/locale/en/LC_MESSAGES/hammer-cli.mo +0 -0
- data/locale/en/hammer-cli.edit.po +4 -4
- data/locale/en/hammer-cli.po +1 -1
- data/locale/en_GB/LC_MESSAGES/hammer-cli.mo +0 -0
- data/locale/en_GB/hammer-cli.edit.po +71 -70
- data/locale/en_GB/hammer-cli.po +81 -69
- data/locale/es/LC_MESSAGES/hammer-cli.mo +0 -0
- data/locale/es/hammer-cli.edit.po +35 -34
- data/locale/es/hammer-cli.po +46 -41
- data/locale/fr/LC_MESSAGES/hammer-cli.mo +0 -0
- data/locale/fr/hammer-cli.edit.po +4 -4
- data/locale/fr/hammer-cli.po +10 -9
- data/locale/hammer-cli.pot +6 -6
- data/locale/it/LC_MESSAGES/hammer-cli.mo +0 -0
- data/locale/it/hammer-cli.edit.po +12 -12
- data/locale/it/hammer-cli.po +19 -12
- data/locale/ja/LC_MESSAGES/hammer-cli.mo +0 -0
- data/locale/ja/hammer-cli.edit.po +13 -13
- data/locale/ja/hammer-cli.po +19 -18
- data/locale/ko/LC_MESSAGES/hammer-cli.mo +0 -0
- data/locale/ko/hammer-cli.edit.po +12 -12
- data/locale/ko/hammer-cli.po +16 -15
- data/locale/pt_BR/LC_MESSAGES/hammer-cli.mo +0 -0
- data/locale/pt_BR/hammer-cli.edit.po +13 -12
- data/locale/pt_BR/hammer-cli.po +18 -13
- data/locale/ru/LC_MESSAGES/hammer-cli.mo +0 -0
- data/locale/ru/hammer-cli.edit.po +17 -17
- data/locale/ru/hammer-cli.po +26 -21
- data/locale/zh_CN/LC_MESSAGES/hammer-cli.mo +0 -0
- data/locale/zh_CN/hammer-cli.edit.po +40 -40
- data/locale/zh_CN/hammer-cli.po +58 -54
- data/locale/zh_TW/LC_MESSAGES/hammer-cli.mo +0 -0
- data/locale/zh_TW/hammer-cli.edit.po +12 -12
- data/locale/zh_TW/hammer-cli.po +16 -15
- data/test/unit/abstract_test.rb +25 -7
- data/test/unit/logger_test.rb +18 -0
- data/test/unit/settings_test.rb +4 -3
- data/test/unit/test_helper.rb +1 -1
- metadata +13 -81
data/locale/zh_CN/hammer-cli.po
CHANGED
@@ -1,28 +1,25 @@
|
|
1
|
-
#
|
2
|
-
#
|
3
|
-
#
|
4
|
-
#
|
5
|
-
# Translators:
|
6
|
-
# Automatically generated, 2014
|
1
|
+
# Leah Liu <lliu@redhat.com>, 2013. #zanata
|
2
|
+
# Leah Liu <lliu@redhat.com>, 2014. #zanata
|
3
|
+
# Leah Liu <lliu@redhat.com>, 2015. #zanata
|
7
4
|
msgid ""
|
8
5
|
msgstr ""
|
9
|
-
"Project-Id-Version: hammer-cli 0.
|
6
|
+
"Project-Id-Version: hammer-cli 0.4.0\n"
|
10
7
|
"Report-Msgid-Bugs-To: \n"
|
11
|
-
"PO-Revision-Date:
|
12
|
-
"Last-Translator:
|
13
|
-
"Language-Team: Chinese (China)
|
14
|
-
"
|
8
|
+
"PO-Revision-Date: 2015-04-27 01:22+0000\n"
|
9
|
+
"Last-Translator: Leah Liu <lliu@redhat.com>\n"
|
10
|
+
"Language-Team: Chinese (China)\n"
|
11
|
+
"Language: zh-CN\n"
|
15
12
|
"MIME-Version: 1.0\n"
|
16
13
|
"Content-Type: text/plain; charset=UTF-8\n"
|
17
14
|
"Content-Transfer-Encoding: 8bit\n"
|
18
|
-
"
|
19
|
-
"
|
15
|
+
"Plural-Forms: nplurals=1; plural=0\n"
|
16
|
+
"X-Generator: Zanata 3.6.0\n"
|
20
17
|
|
21
18
|
msgid "too many arguments"
|
22
|
-
msgstr "
|
19
|
+
msgstr "参数太多"
|
23
20
|
|
24
21
|
msgid "option '%<option>s' is required"
|
25
|
-
msgstr "需要选项 '%<option>s'
|
22
|
+
msgstr "需要选项 '%<option>s'"
|
26
23
|
|
27
24
|
msgid "option '%<option>s' (or env %<env>s) is required"
|
28
25
|
msgstr "需要选项 '%<option>s'(或者 env %<env>s)"
|
@@ -37,57 +34,58 @@ msgid "%<env>s: %<message>s"
|
|
37
34
|
msgstr "%<env>s: %<message>s"
|
38
35
|
|
39
36
|
msgid "Unrecognised option '%<switch>s'"
|
40
|
-
msgstr "
|
37
|
+
msgstr "无法识别的选项 '%<switch>s'"
|
41
38
|
|
42
39
|
msgid "No such sub-command '%<name>s'"
|
43
|
-
msgstr "
|
40
|
+
msgstr "没有子命令 '%<name>s'"
|
44
41
|
|
45
42
|
msgid "no value provided"
|
46
|
-
msgstr "
|
43
|
+
msgstr "未提供数值"
|
47
44
|
|
45
|
+
# translation auto-copied from project nm-applet, version 0.8.1, document nm-applet
|
48
46
|
msgid "Error: %s"
|
49
47
|
msgstr "错误:%s"
|
50
48
|
|
51
49
|
msgid "Error: %{message}"
|
52
|
-
msgstr ""
|
50
|
+
msgstr "错误:%{message}"
|
53
51
|
|
54
52
|
msgid "See: '%{path} --help'"
|
55
|
-
msgstr ""
|
53
|
+
msgstr "请查看: '%{path} --help'"
|
56
54
|
|
57
55
|
msgid "Invalid username or password"
|
58
|
-
msgstr "
|
56
|
+
msgstr "无效用户名或密码"
|
59
57
|
|
60
58
|
msgid "Could not load the API description from the server"
|
61
|
-
msgstr ""
|
59
|
+
msgstr "无法从服务器载入 API 描述"
|
62
60
|
|
63
61
|
msgid "is the server down?"
|
64
|
-
msgstr ""
|
62
|
+
msgstr "服务器宕机了吗?"
|
65
63
|
|
66
64
|
msgid ""
|
67
65
|
"was '%s' run on the server when using apipie cache? (typical production settin"
|
68
66
|
"gs)"
|
69
|
-
msgstr ""
|
67
|
+
msgstr "使用 apipie 缓存时服务器中是否运行了 '%s'?(典型产品设置)"
|
70
68
|
|
71
69
|
msgid "Missing arguments for %s"
|
72
|
-
msgstr ""
|
70
|
+
msgstr "缺少 %s 的参数"
|
73
71
|
|
74
72
|
msgid "No permissions to create log dir %s"
|
75
|
-
msgstr "
|
73
|
+
msgstr "没有创建日志目录 %s 的权限"
|
76
74
|
|
77
75
|
msgid "File %s not writeable, won't log anything to the file!"
|
78
|
-
msgstr "无法写入文件 %s
|
76
|
+
msgstr "无法写入文件 %s,因此无法记录文件的任何变化!"
|
79
77
|
|
80
78
|
msgid "be verbose"
|
81
|
-
msgstr "
|
79
|
+
msgstr "更详细"
|
82
80
|
|
83
81
|
msgid "show debugging output "
|
84
|
-
msgstr "
|
82
|
+
msgstr "显示调试输出结果"
|
85
83
|
|
86
84
|
msgid "force reload of Apipie cache"
|
87
|
-
msgstr ""
|
85
|
+
msgstr "强制重新载入 Apipie 缓存"
|
88
86
|
|
89
87
|
msgid "path to custom config file"
|
90
|
-
msgstr "
|
88
|
+
msgstr "到自定义配置文件的路径"
|
91
89
|
|
92
90
|
msgid "username to access the remote system"
|
93
91
|
msgstr "访问远程系统的用户名"
|
@@ -98,12 +96,12 @@ msgstr "访问远程系统的密码"
|
|
98
96
|
msgid "remote system address"
|
99
97
|
msgstr "远程系统地址"
|
100
98
|
|
99
|
+
# translation auto-copied from project libvirt, version 1.1.1, document libvirt
|
101
100
|
msgid "show version"
|
102
101
|
msgstr "显示版本"
|
103
102
|
|
104
|
-
#, fuzzy
|
105
103
|
msgid "unknown version"
|
106
|
-
msgstr "
|
104
|
+
msgstr "未知版本"
|
107
105
|
|
108
106
|
msgid "Show ids of associated resources"
|
109
107
|
msgstr "显示关联资源的 id"
|
@@ -112,13 +110,13 @@ msgid "Explicitly turn interactive mode on/off"
|
|
112
110
|
msgstr "明确打开/关闭互动模式"
|
113
111
|
|
114
112
|
msgid "Output as CSV (same as --output=csv)"
|
115
|
-
msgstr "
|
113
|
+
msgstr "作为 CSV 输出(与 --output=csv 相同) "
|
116
114
|
|
117
115
|
msgid "Set output format. One of [%s]"
|
118
|
-
msgstr "设定输出格式。[%s]
|
116
|
+
msgstr "设定输出格式。[%s] 之一"
|
119
117
|
|
120
118
|
msgid "Character to separate the values"
|
121
|
-
msgstr "
|
119
|
+
msgstr "用来分开数值的字符"
|
122
120
|
|
123
121
|
msgid "Get list of possible endings"
|
124
122
|
msgstr "获取可能结尾的列表"
|
@@ -126,19 +124,19 @@ msgstr "获取可能结尾的列表"
|
|
126
124
|
msgid ""
|
127
125
|
"Legacy configuration of modules detected. Check section about configuration in"
|
128
126
|
" user manual"
|
129
|
-
msgstr "
|
127
|
+
msgstr "探测到遗留的模块配置。请在用户手册中查看有关配置一节。"
|
130
128
|
|
131
129
|
msgid "Warning: An error occured while loading module %s"
|
132
130
|
msgstr "警告:载入模块 %s 时出错"
|
133
131
|
|
134
132
|
msgid "Error: Some of the required modules are disabled in configuration: %s "
|
135
|
-
msgstr ""
|
133
|
+
msgstr "错误:在配置中禁用了一些要求的模块:%s"
|
136
134
|
|
137
135
|
msgid "Comma-separated list of key=value."
|
138
136
|
msgstr "用逗号分开的 key=value 列表。"
|
139
137
|
|
140
138
|
msgid "value must be defined as a comma-separated list of key=value"
|
141
|
-
msgstr "
|
139
|
+
msgstr "必须使用以逗号分开的 key=value 列表定义数值"
|
142
140
|
|
143
141
|
msgid "Comma separated list of values."
|
144
142
|
msgstr "逗号分开的数值列表。"
|
@@ -147,10 +145,10 @@ msgid "numeric value is required"
|
|
147
145
|
msgstr ""
|
148
146
|
|
149
147
|
msgid "One of true/false, yes/no, 1/0."
|
150
|
-
msgstr "true/false、yes/no、1/0
|
148
|
+
msgstr "从 true/false、yes/no、1/0 中选择一组。"
|
151
149
|
|
152
150
|
msgid "value must be one of true/false, yes/no, 1/0"
|
153
|
-
msgstr "
|
151
|
+
msgstr "数值必须是 true/false、yes/no、1/0 中的一个"
|
154
152
|
|
155
153
|
msgid "Unable to parse JSON input"
|
156
154
|
msgstr "无法解析 JSON 输入"
|
@@ -160,11 +158,11 @@ msgstr ""
|
|
160
158
|
|
161
159
|
#, fuzzy
|
162
160
|
msgid "value must be %s"
|
163
|
-
msgstr "
|
161
|
+
msgstr "数值必须是 '%s' 中的一个"
|
164
162
|
|
165
163
|
#, fuzzy
|
166
164
|
msgid "value must be one of %s"
|
167
|
-
msgstr "
|
165
|
+
msgstr "数值必须是 '%s' 中的一个"
|
168
166
|
|
169
167
|
msgid "Date and time in YYYY-MM-DD HH:MM:SS or ISO 8601 format"
|
170
168
|
msgstr "日期和时间格式为 YYYY-MM-DD HH:MM:SS 或者 ISO 8601 格式"
|
@@ -173,45 +171,51 @@ msgid "'%s' is not a valid date"
|
|
173
171
|
msgstr "'%s' 不是有效日期"
|
174
172
|
|
175
173
|
msgid "Any combination (comma separated list) of '%s'"
|
176
|
-
msgstr "'%s'
|
174
|
+
msgstr "'%s' 的任意组合(用逗号分开的列表)"
|
177
175
|
|
178
176
|
msgid "value must be a combination of '%s'"
|
179
|
-
msgstr "
|
177
|
+
msgstr "数值必须为 '%s' 之一"
|
180
178
|
|
181
179
|
msgid "\"Warning: Option #{switch} is deprecated. %s\""
|
182
180
|
msgstr ""
|
183
181
|
|
184
182
|
msgid "Can be specified multiple times. "
|
185
|
-
msgstr "
|
183
|
+
msgstr "无法多次指定。"
|
186
184
|
|
187
185
|
msgid ", or "
|
188
186
|
msgstr ",或者"
|
189
187
|
|
188
|
+
# translation auto-copied from project control-center, version 3.8.6, document gnome-control-center-2.0
|
190
189
|
msgid "Default: "
|
191
190
|
msgstr "默认:"
|
192
191
|
|
192
|
+
# translation auto-copied from project webkitgtk3, version 2.0.3, document webkitgtk3, author Leah Liu
|
193
193
|
msgid "Message"
|
194
194
|
msgstr "信息"
|
195
195
|
|
196
|
+
# translation auto-copied from project libvirt, version 1.1.1, document libvirt
|
196
197
|
msgid "Id"
|
197
198
|
msgstr "Id"
|
198
199
|
|
200
|
+
# translation auto-copied from project nm-applet, version 0.8.1, document nm-applet
|
199
201
|
msgid "Name"
|
200
202
|
msgstr "名称"
|
201
203
|
|
204
|
+
# translation auto-copied from project firstboot, version 19.6, document firstboot, author Leah Liu
|
202
205
|
msgid "no"
|
203
206
|
msgstr "否"
|
204
207
|
|
208
|
+
# translation auto-copied from project NetworkManager, version 0.9.9.0, document NetworkManager
|
205
209
|
msgid "yes"
|
206
210
|
msgstr "是"
|
207
211
|
|
208
212
|
msgid ""
|
209
213
|
"Warning: location hammer.modules.d is deprecated, move your module configurati"
|
210
214
|
"ons to cli.modules.d"
|
211
|
-
msgstr "警告:位置 hammer.modules.d
|
215
|
+
msgstr "警告:位置 hammer.modules.d 已启用,请将您的模块配置移至 cli.modules.d。"
|
212
216
|
|
213
217
|
msgid "Print help for commands"
|
214
|
-
msgstr "
|
218
|
+
msgstr "输出命令帮助信息"
|
215
219
|
|
216
220
|
msgid "Exit interactive shell"
|
217
221
|
msgstr "退出互动 shell"
|
@@ -220,7 +224,7 @@ msgid "Welcome to the hammer interactive shell"
|
|
220
224
|
msgstr "欢迎使用 hammer 互动 shell"
|
221
225
|
|
222
226
|
msgid "Type 'help' for usage information"
|
223
|
-
msgstr "
|
227
|
+
msgstr "输入 ‘help’ 获取用法信息"
|
224
228
|
|
225
229
|
msgid "Interactive shell"
|
226
230
|
msgstr "互动 shell"
|
@@ -228,19 +232,19 @@ msgstr "互动 shell"
|
|
228
232
|
msgid ""
|
229
233
|
"can't replace subcommand %<name>s (%<existing_class>s) with %<name>s (%<new_cl"
|
230
234
|
"ass>s)"
|
231
|
-
msgstr ""
|
235
|
+
msgstr "无法使用 %<name>s(%<new_class>s)替换子命令 %<name>s(%<existing_class>s)"
|
232
236
|
|
233
237
|
msgid "Unknown option name '%s'"
|
234
238
|
msgstr "未知选项名称 '%s'"
|
235
239
|
|
236
240
|
msgid "You can't set all options %s at one time"
|
237
|
-
msgstr "
|
241
|
+
msgstr "无法一次设置所有选项 %s"
|
238
242
|
|
239
243
|
msgid "Options %s are required"
|
240
|
-
msgstr "
|
244
|
+
msgstr "需要选项 %s"
|
241
245
|
|
242
246
|
msgid "You can't set any of options %s"
|
243
|
-
msgstr "
|
247
|
+
msgstr "无法设置任意选项 %s"
|
244
248
|
|
245
249
|
msgid "At least one of options %s is required"
|
246
|
-
msgstr "
|
250
|
+
msgstr "至少需要选项 %s 中的一个"
|
Binary file
|
@@ -9,9 +9,9 @@ msgstr ""
|
|
9
9
|
"Project-Id-Version: Foreman\n"
|
10
10
|
"Report-Msgid-Bugs-To: \n"
|
11
11
|
"POT-Creation-Date: 2014-12-10 13:50+0100\n"
|
12
|
-
"PO-Revision-Date: 2015-
|
13
|
-
"Last-Translator:
|
14
|
-
"Language-Team: Chinese (Taiwan) (http://www.transifex.com/
|
12
|
+
"PO-Revision-Date: 2015-09-16 12:51+0000\n"
|
13
|
+
"Last-Translator: mbacovsky <martin.bacovsky@gmail.com>\n"
|
14
|
+
"Language-Team: Chinese (Taiwan) (http://www.transifex.com/foreman/foreman/language/zh_TW/)\n"
|
15
15
|
"MIME-Version: 1.0\n"
|
16
16
|
"Content-Type: text/plain; charset=UTF-8\n"
|
17
17
|
"Content-Transfer-Encoding: 8bit\n"
|
@@ -132,7 +132,7 @@ msgstr "顯示除錯輸出"
|
|
132
132
|
|
133
133
|
#: lib/hammer_cli/main.rb:9
|
134
134
|
msgid "force reload of Apipie cache"
|
135
|
-
msgstr ""
|
135
|
+
msgstr "強制重新載入 Apipie 快取"
|
136
136
|
|
137
137
|
#: lib/hammer_cli/main.rb:11
|
138
138
|
msgid "path to custom config file"
|
@@ -196,7 +196,7 @@ msgstr "警告:載入 %s 模組時發生了錯誤"
|
|
196
196
|
|
197
197
|
#: lib/hammer_cli/modules.rb:87
|
198
198
|
msgid "Error: Some of the required modules are disabled in configuration: %s "
|
199
|
-
msgstr ""
|
199
|
+
msgstr "錯誤:某些必要的模組在配置中已停用:%s "
|
200
200
|
|
201
201
|
#: lib/hammer_cli/exception_handler.rb:62
|
202
202
|
msgid "Error: %s"
|
@@ -204,11 +204,11 @@ msgstr "錯誤:%s"
|
|
204
204
|
|
205
205
|
#: lib/hammer_cli/exception_handler.rb:68
|
206
206
|
msgid "Error: %{message}"
|
207
|
-
msgstr ""
|
207
|
+
msgstr "錯誤:%{message}"
|
208
208
|
|
209
209
|
#: lib/hammer_cli/exception_handler.rb:69
|
210
210
|
msgid "See: '%{path} --help'"
|
211
|
-
msgstr ""
|
211
|
+
msgstr "請參閱:'%{path} --help'"
|
212
212
|
|
213
213
|
#: lib/hammer_cli/exception_handler.rb:86
|
214
214
|
msgid "Invalid username or password"
|
@@ -216,21 +216,21 @@ msgstr "無效的使用者名稱或密碼"
|
|
216
216
|
|
217
217
|
#: lib/hammer_cli/exception_handler.rb:93
|
218
218
|
msgid "Could not load the API description from the server"
|
219
|
-
msgstr ""
|
219
|
+
msgstr "無法從伺服器載入 API 描述"
|
220
220
|
|
221
221
|
#: lib/hammer_cli/exception_handler.rb:94
|
222
222
|
msgid "is the server down?"
|
223
|
-
msgstr ""
|
223
|
+
msgstr "伺服器是否沒有在運作?"
|
224
224
|
|
225
225
|
#: lib/hammer_cli/exception_handler.rb:95
|
226
226
|
msgid ""
|
227
227
|
"was '%s' run on the server when using apipie cache? (typical production "
|
228
228
|
"settings)"
|
229
|
-
msgstr ""
|
229
|
+
msgstr "使用 apipie 快取時 '%s' 是否有在伺服器上運作?(典型的生產設定)"
|
230
230
|
|
231
231
|
#: lib/hammer_cli/exception_handler.rb:101
|
232
232
|
msgid "Missing arguments for %s"
|
233
|
-
msgstr ""
|
233
|
+
msgstr "%s 缺少了引數"
|
234
234
|
|
235
235
|
#: lib/hammer_cli/validator.rb:41
|
236
236
|
msgid "Unknown option name '%s'"
|
@@ -296,4 +296,4 @@ msgstr "互動式 shell"
|
|
296
296
|
msgid ""
|
297
297
|
"can't replace subcommand %<name>s (%<existing_class>s) with %<name>s "
|
298
298
|
"(%<new_class>s)"
|
299
|
-
msgstr ""
|
299
|
+
msgstr "無法將次指令 %<name>s (%<existing_class>s) 替換為 %<name>s (%<new_class>s)"
|
data/locale/zh_TW/hammer-cli.po
CHANGED
@@ -4,19 +4,21 @@
|
|
4
4
|
#
|
5
5
|
# Translators:
|
6
6
|
# Automatically generated, 2014
|
7
|
+
# tchuang <tchuang@redhat.com>, 2015. #zanata
|
7
8
|
msgid ""
|
8
9
|
msgstr ""
|
9
|
-
"Project-Id-Version: hammer-cli 0.
|
10
|
+
"Project-Id-Version: hammer-cli 0.4.0\n"
|
10
11
|
"Report-Msgid-Bugs-To: \n"
|
11
|
-
"PO-Revision-Date:
|
12
|
-
"Last-Translator:
|
12
|
+
"PO-Revision-Date: 2015-04-28 05:21+0000\n"
|
13
|
+
"Last-Translator: tchuang <tchuang@redhat.com>\n"
|
13
14
|
"Language-Team: Chinese (Taiwan) (http://www.transifex.com/projects/p/foreman/l"
|
14
15
|
"anguage/zh_TW/)\n"
|
16
|
+
"Language: zh-TW\n"
|
15
17
|
"MIME-Version: 1.0\n"
|
16
18
|
"Content-Type: text/plain; charset=UTF-8\n"
|
17
19
|
"Content-Transfer-Encoding: 8bit\n"
|
18
|
-
"Language: zh_TW\n"
|
19
20
|
"Plural-Forms: nplurals=1; plural=0;\n"
|
21
|
+
"X-Generator: Zanata 3.6.0\n"
|
20
22
|
|
21
23
|
msgid "too many arguments"
|
22
24
|
msgstr "引數過多"
|
@@ -49,27 +51,27 @@ msgid "Error: %s"
|
|
49
51
|
msgstr "錯誤:%s"
|
50
52
|
|
51
53
|
msgid "Error: %{message}"
|
52
|
-
msgstr ""
|
54
|
+
msgstr "錯誤:%{message}"
|
53
55
|
|
54
56
|
msgid "See: '%{path} --help'"
|
55
|
-
msgstr ""
|
57
|
+
msgstr "請參閱:'%{path} --help'"
|
56
58
|
|
57
59
|
msgid "Invalid username or password"
|
58
60
|
msgstr "無效的使用者名稱或密碼"
|
59
61
|
|
60
62
|
msgid "Could not load the API description from the server"
|
61
|
-
msgstr ""
|
63
|
+
msgstr "無法從伺服器載入 API 描述"
|
62
64
|
|
63
65
|
msgid "is the server down?"
|
64
|
-
msgstr ""
|
66
|
+
msgstr "伺服器是否沒有在運作?"
|
65
67
|
|
66
68
|
msgid ""
|
67
69
|
"was '%s' run on the server when using apipie cache? (typical production settin"
|
68
70
|
"gs)"
|
69
|
-
msgstr ""
|
71
|
+
msgstr "使用 apipie 快取時 '%s' 是否有在伺服器上運作?(典型的生產設定)"
|
70
72
|
|
71
73
|
msgid "Missing arguments for %s"
|
72
|
-
msgstr ""
|
74
|
+
msgstr "%s 缺少了引數"
|
73
75
|
|
74
76
|
msgid "No permissions to create log dir %s"
|
75
77
|
msgstr "沒有建立日誌目錄 %s 的權限"
|
@@ -84,7 +86,7 @@ msgid "show debugging output "
|
|
84
86
|
msgstr "顯示除錯輸出"
|
85
87
|
|
86
88
|
msgid "force reload of Apipie cache"
|
87
|
-
msgstr ""
|
89
|
+
msgstr "強制重新載入 Apipie 快取"
|
88
90
|
|
89
91
|
msgid "path to custom config file"
|
90
92
|
msgstr "自訂配置檔案的路徑"
|
@@ -101,9 +103,8 @@ msgstr "遠端系統位址"
|
|
101
103
|
msgid "show version"
|
102
104
|
msgstr "顯示版本"
|
103
105
|
|
104
|
-
#, fuzzy
|
105
106
|
msgid "unknown version"
|
106
|
-
msgstr "
|
107
|
+
msgstr "不明的版本"
|
107
108
|
|
108
109
|
msgid "Show ids of associated resources"
|
109
110
|
msgstr "顯示相聯資源的 id"
|
@@ -132,7 +133,7 @@ msgid "Warning: An error occured while loading module %s"
|
|
132
133
|
msgstr "警告:載入 %s 模組時發生了錯誤"
|
133
134
|
|
134
135
|
msgid "Error: Some of the required modules are disabled in configuration: %s "
|
135
|
-
msgstr ""
|
136
|
+
msgstr "錯誤:某些必要的模組在配置中已停用:%s "
|
136
137
|
|
137
138
|
msgid "Comma-separated list of key=value."
|
138
139
|
msgstr "逗號區隔開的一列 key=value。"
|
@@ -228,7 +229,7 @@ msgstr "互動式 shell"
|
|
228
229
|
msgid ""
|
229
230
|
"can't replace subcommand %<name>s (%<existing_class>s) with %<name>s (%<new_cl"
|
230
231
|
"ass>s)"
|
231
|
-
msgstr ""
|
232
|
+
msgstr "無法將次指令 %<name>s (%<existing_class>s) 替換為 %<name>s (%<new_class>s)"
|
232
233
|
|
233
234
|
msgid "Unknown option name '%s'"
|
234
235
|
msgstr "不明選項名稱「%s」"
|
data/test/unit/abstract_test.rb
CHANGED
@@ -86,6 +86,8 @@ describe HammerCLI::AbstractCommand do
|
|
86
86
|
context "logging" do
|
87
87
|
|
88
88
|
before :each do
|
89
|
+
HammerCLI::Settings.clear
|
90
|
+
HammerCLI::Settings.load(:watch_plain => false)
|
89
91
|
@log_output = Logging::Appenders['__test__']
|
90
92
|
@log_output.reset
|
91
93
|
end
|
@@ -96,13 +98,6 @@ describe HammerCLI::AbstractCommand do
|
|
96
98
|
@log_output.readline.strip.must_equal "INFO HammerCLI::AbstractCommand : Called with options: {}"
|
97
99
|
end
|
98
100
|
|
99
|
-
it "password should be hidden in logs" do
|
100
|
-
test_command_class = Class.new(HammerCLI::AbstractCommand)
|
101
|
-
test_command_class.option(['--password'], 'PASSWORD', 'Password')
|
102
|
-
test_command = test_command_class.new("")
|
103
|
-
test_command.run ['--password=pass']
|
104
|
-
@log_output.readline.strip.must_equal "INFO HammerCLI::AbstractCommand : Called with options: {\"option_password\"=>\"***\"}"
|
105
|
-
end
|
106
101
|
|
107
102
|
class TestLogCmd < HammerCLI::AbstractCommand
|
108
103
|
def execute
|
@@ -170,6 +165,29 @@ describe HammerCLI::AbstractCommand do
|
|
170
165
|
test_command.run []
|
171
166
|
@log_output.read.must_include "DEBUG TestLogCmd5 : Test\n{\n :a => \"a\"\n}"
|
172
167
|
end
|
168
|
+
|
169
|
+
class TestLogCmd6 < HammerCLI::AbstractCommand
|
170
|
+
def execute
|
171
|
+
logger.watch "Test", { :password => 'password', "password" => "password" }
|
172
|
+
0
|
173
|
+
end
|
174
|
+
end
|
175
|
+
|
176
|
+
it "censors passwords from the debug logs" do
|
177
|
+
test_command = Class.new(TestLogCmd6).new("")
|
178
|
+
HammerCLI::Settings.clear
|
179
|
+
HammerCLI::Settings.load(:watch_plain => true)
|
180
|
+
test_command.run []
|
181
|
+
@log_output.read.must_include "DEBUG TestLogCmd6 : Test\n{\n :password => \"***\",\n \"password\" => \"***\"\n}"
|
182
|
+
end
|
183
|
+
|
184
|
+
it "password parameters should be hidden in logs" do
|
185
|
+
test_command_class = Class.new(HammerCLI::AbstractCommand)
|
186
|
+
test_command_class.option(['--password'], 'PASSWORD', 'Password')
|
187
|
+
test_command = test_command_class.new("")
|
188
|
+
test_command.run ['--password=pass']
|
189
|
+
@log_output.readline.strip.must_equal "INFO HammerCLI::AbstractCommand : Called with options: {\"option_password\"=>\"***\"}"
|
190
|
+
end
|
173
191
|
end
|
174
192
|
|
175
193
|
context "subcommand behavior" do
|
@@ -0,0 +1,18 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), 'test_helper')
|
2
|
+
require 'tempfile'
|
3
|
+
|
4
|
+
describe Logging::LogEvent do
|
5
|
+
context "filtering" do
|
6
|
+
before :each do
|
7
|
+
@log_output = Logging::Appenders['__test__']
|
8
|
+
@log_output.reset
|
9
|
+
end
|
10
|
+
|
11
|
+
it "can filter log data" do
|
12
|
+
Logging::LogEvent.add_data_filter(/pat/, 'mat')
|
13
|
+
Logging.logger.root.debug "pat"
|
14
|
+
Logging::LogEvent.data_filters.pop # clean the last filter
|
15
|
+
@log_output.read.must_include 'mat'
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
data/test/unit/settings_test.rb
CHANGED
@@ -91,7 +91,7 @@ describe HammerCLI::Settings do
|
|
91
91
|
end
|
92
92
|
|
93
93
|
it "loads settings from file" do
|
94
|
-
|
94
|
+
[config1.path, config2.path].each { |config| settings.load_from_file config }
|
95
95
|
settings.get(:host).must_equal 'https://localhost.localdomain/'
|
96
96
|
settings.get(:username).must_equal 'admin'
|
97
97
|
end
|
@@ -103,7 +103,7 @@ describe HammerCLI::Settings do
|
|
103
103
|
end
|
104
104
|
|
105
105
|
it "store config path history" do
|
106
|
-
|
106
|
+
[config1.path, config2.path].each { |config| settings.load_from_file config }
|
107
107
|
settings.path_history.must_equal [config1.path, config2.path]
|
108
108
|
end
|
109
109
|
|
@@ -120,7 +120,8 @@ describe HammerCLI::Settings do
|
|
120
120
|
f.write(" :param2: 'value2'\n")
|
121
121
|
end
|
122
122
|
|
123
|
-
settings.load_from_paths [
|
123
|
+
settings.load_from_paths [dir]
|
124
|
+
settings.load_from_file config1.path
|
124
125
|
|
125
126
|
settings.get(:host).must_equal 'https://localhost/'
|
126
127
|
settings.get(:username).must_equal 'admin'
|
data/test/unit/test_helper.rb
CHANGED
@@ -8,13 +8,13 @@ SimpleCov.start do
|
|
8
8
|
end
|
9
9
|
SimpleCov.root Pathname.new(File.dirname(__FILE__) + "../../../")
|
10
10
|
|
11
|
-
|
12
11
|
require 'minitest/autorun'
|
13
12
|
require 'minitest/spec'
|
14
13
|
require "minitest-spec-context"
|
15
14
|
require "mocha/setup"
|
16
15
|
|
17
16
|
require 'hammer_cli'
|
17
|
+
require 'hammer_cli/logger'
|
18
18
|
|
19
19
|
Logging.logger.root.appenders = Logging::Appenders['__test__'] || Logging::Appenders::StringIo.new('__test__')
|
20
20
|
|