toolkits 0.2.7__py3-none-any.whl → 0.2.8__py3-none-any.whl

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.
@@ -1,5 +1,5 @@
1
1
  # -*- coding: utf-8 -*-
2
- from .load_module import LoadModule
2
+ from toolkits.libs_core.load_module import LoadModule
3
3
 
4
4
 
5
5
  class ConfigHelpers:
@@ -12,7 +12,7 @@ from toolkits.system.shell_helper import exec_shell
12
12
  from unipath import Path
13
13
 
14
14
  from .config_helper import ConfigHelpers
15
- from .mysql_helper import MysqlHelper
15
+ from toolkits.databases.mysql_helper import MysqlHelper
16
16
 
17
17
  logger = log("EnvPrepare")
18
18
 
toolkits/db_query_demo.py CHANGED
@@ -1,13 +1,12 @@
1
1
  # -*- coding: utf-8 -*-
2
- import json
3
2
  import traceback
4
3
 
5
4
  import fire
6
5
  from log4python.Log4python import log
7
6
  from toolkits.system.basic_utils import get_script_directory
8
7
 
9
- from toolkits.libs_core.env_prepare import EnvPrepare
10
- from toolkits.libs_core.mysql_helper import MysqlHelper
8
+ from toolkits.config_parser.env_prepare import EnvPrepare
9
+ from toolkits.databases.mysql_helper import MysqlHelper
11
10
 
12
11
  logger = log("DbQueryDemo")
13
12
 
@@ -121,20 +121,22 @@ return-val
121
121
  return result
122
122
 
123
123
 
124
- async def run_command_async(command, timeout=5):
124
+ async def run_command_async(command, timeout=5, encoding="utf-8", shell=False, cwd=None, env=None):
125
125
  process = None
126
126
  try:
127
127
  process = await asyncio.create_subprocess_shell(
128
128
  command,
129
-
130
129
  stdout=asyncio.subprocess.PIPE,
131
- stderr=asyncio.subprocess.PIPE
130
+ stderr=asyncio.subprocess.PIPE,
131
+ shell=shell,
132
+ cwd=cwd,
133
+ env=env
132
134
  )
133
135
  stdout, stderr = await asyncio.wait_for(process.communicate(), timeout=timeout)
134
136
  ret = {
135
137
  "exit_code": process.returncode,
136
- "stdout": stdout,
137
- "stderr": stderr
138
+ "stdout": str(stdout.decode(encoding)).splitlines(False),
139
+ "stderr": str(stderr.decode(encoding)).splitlines(False)
138
140
  }
139
141
  return ret
140
142
  except asyncio.TimeoutError:
@@ -148,15 +150,31 @@ async def run_command_async(command, timeout=5):
148
150
  return ret
149
151
 
150
152
 
151
- def exec_shell_async(command, timeout=5):
153
+ def exec_shell_async(command, timeout=60 * 10, encoding="utf-8", cwd=None, env=None):
154
+ """
155
+ 异常执行命令,检测执行时间超时
156
+ :param command: 要执行的命令
157
+ :param timeout: 等待的超时时间,超时后,返回: exit_code=-1
158
+ :param encoding: 解析命令行返回数据的编码格式,默认为:utf-8, 中文Windows环境可指定为:GBK
159
+ :param env:
160
+ :param cwd:
161
+ :param shell:
162
+ :return: {'exit_code': 0, 'stdout': '\r\n正在 Ping 127.0.0.1 具有 32 字节的数据:\r\n来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=128\r\n\r\n', 'stderr': ''}
163
+ """
164
+ if command == "" or command is None:
165
+ ret = {
166
+ "exit_code": -1,
167
+ "stdout": "",
168
+ "stderr": "No cmd was found"
169
+ }
170
+ return ret
171
+
152
172
  loop = asyncio.get_event_loop()
153
- return loop.run_until_complete(run_command_async(command, timeout=timeout))
173
+ return loop.run_until_complete(run_command_async(command, timeout=timeout, encoding=encoding, cwd=cwd, env=env))
154
174
 
155
175
 
156
- def exec_shell(cmd, timeout=0, bufsize=0, executable=None,
157
- stdin=None, stdout=None, stderr=None,
158
- preexec_fn=None, close_fds=False, shell=False,
159
- cwd=None, env=None, universal_newlines=False,
176
+ def exec_shell(cmd, timeout=0, bufsize=0, executable=None, stdin=None, stdout=None, stderr=None,
177
+ preexec_fn=None, close_fds=False, shell=False, cwd=None, env=None, universal_newlines=False,
160
178
  startupinfo=None, creationflags=0):
161
179
  """exec_shell("grep 'processor' /proc/cpuinfo | sort -u | wc -l")
162
180
 
@@ -170,17 +188,22 @@ return-code::
170
188
  }
171
189
  code-end
172
190
 
191
+ :param cmd: exec command
173
192
  :param preexec_fn:
174
193
  :type stdin: object
175
194
  :param executable:
176
195
  :param cwd:
177
196
  :param timeout:
178
- :param cmd: exec command
179
197
  :return: return a dict to caller
180
198
 
181
199
  """
182
200
  if cmd == "" or cmd is None:
183
- return "No Cmd Input"
201
+ ret = {
202
+ "exit_code": -1,
203
+ "stdout": "",
204
+ "stderr": "No cmd was found"
205
+ }
206
+ return ret
184
207
 
185
208
  fp_out = subprocess.PIPE
186
209
  fp_err = subprocess.PIPE
toolkits/tookits_cli.py CHANGED
@@ -1,12 +1,11 @@
1
1
  # -*- coding: utf-8 -*-
2
- import sys
3
2
  import traceback
4
3
 
5
4
  import fire
6
5
  from log4python.Log4python import log
7
6
  from toolkits.system.basic_utils import get_script_directory
8
7
 
9
- from libs_core.env_prepare import EnvPrepare
8
+ from toolkits.config_parser.env_prepare import EnvPrepare
10
9
  from tookits_app import tookitsApp
11
10
  from libs_core.process_admin import ProcessAdmin
12
11
  from db_query_demo import DbQueryDemo
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: toolkits
3
- Version: 0.2.7
3
+ Version: 0.2.8
4
4
  Summary: toolkits for quickly reference
5
5
  Author-Email: li_jia_yue <59727816@qq.com>
6
6
  License: MIT
@@ -1,30 +1,30 @@
1
- toolkits-0.2.7.dist-info/METADATA,sha256=UAc6iTuOM6I0yDPPPMP6Y7AwYSLtKhRoytG4jyl3ytw,1157
2
- toolkits-0.2.7.dist-info/WHEEL,sha256=tSfRZzRHthuv7vxpI4aehrdN9scLjk-dCJkPLzkHxGg,90
3
- toolkits-0.2.7.dist-info/entry_points.txt,sha256=ioUpExuekI3N4XaBZ8NKV1mx0DZnKWLkg2PoGICq6OY,72
1
+ toolkits-0.2.8.dist-info/METADATA,sha256=121FvPMYfCOhTy7dYjZwzJBMQ461qD70MCQqpF6PkYs,1157
2
+ toolkits-0.2.8.dist-info/WHEEL,sha256=tSfRZzRHthuv7vxpI4aehrdN9scLjk-dCJkPLzkHxGg,90
3
+ toolkits-0.2.8.dist-info/entry_points.txt,sha256=ioUpExuekI3N4XaBZ8NKV1mx0DZnKWLkg2PoGICq6OY,72
4
4
  toolkits/3des/3des.py,sha256=DWfAUGtU7U74GrpnIgA8ZEw7R-kKWyKGfv3Ycqachlw,3400
5
5
  toolkits/3des/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
6
  toolkits/__init__.py,sha256=CBKKalWuRi-mXuf2iwrAI5zzzGcUU5e8xhQNgqBERmg,50
7
7
  toolkits/basic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
8
  toolkits/basic/list_helper.py,sha256=jvD-YFneCC-LSCgsJ4PWKhBd-hxuE8PAFXScmtbg3kc,717
9
- toolkits/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
- toolkits/config/config_demo.py,sha256=F9gfD5o7psX6gBXcYc4PVcavTAGECJ5U8Qv98xysJ3k,1087
9
+ toolkits/config_parser/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
+ toolkits/config_parser/config_demo.py,sha256=F9gfD5o7psX6gBXcYc4PVcavTAGECJ5U8Qv98xysJ3k,1087
11
+ toolkits/config_parser/config_groups_helper.py,sha256=k3ji_4iZVqTL5jB6xrIUKNbATM7Aoc0gAi7rJ1HyJeA,1987
12
+ toolkits/config_parser/config_helper.py,sha256=I07Zs5a9ndShtGPHMktA6OE1JOhpAG3bZdjZ9LBiYNk,512
13
+ toolkits/config_parser/env_prepare.py,sha256=SrVfLTT1hf8vOcBiSZm6352mzXuzYGRqgTSIbKPkb4Q,6121
11
14
  toolkits/databases/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
12
15
  toolkits/databases/database_client_util.py,sha256=Jy1d7xbKmbkxfUWNiz1K-BY1OB1vNgJ0WiCBfmEA8fk,4658
13
16
  toolkits/databases/es_client.py,sha256=08VYRLMIKXz8FK9E_NDDdsKVrFLZdNwWLu4GzCAfQik,2904
14
17
  toolkits/databases/hive_client.py,sha256=3qPpGP2nlMOCULkvwvxbVLfgE1dVKztUmsuJGQaL79w,2154
15
18
  toolkits/databases/hive_cmd.py,sha256=pPr5-6z4y1Yx0J5GoCom2wBFD7x9HOSk8nDIYfZK7Pc,3652
16
19
  toolkits/databases/hive_helper.py,sha256=LCt4rff5meLJ1uCozPzL_S7rpGC8wOWvpe2pk0JXlsQ,8233
20
+ toolkits/databases/mysql_helper.py,sha256=XI5b5oAkcqDQ8_r3cBDFjjHIv3ufACq22Ls9dq8XdKQ,6153
17
21
  toolkits/databases/redis_mgmt.py,sha256=f02qbYNGfvNGvmVfau5QMK6R92YusbZ-XcZnaRMpgWg,3386
18
22
  toolkits/databases/sql_helper.py,sha256=JHB9UtvXVhcZNVmuM9teWjsNoLYNxRn0RxQaZwi2N-8,9707
19
23
  toolkits/databases/sqlalchemy_helper.py,sha256=26lgOiJDNmuJpX0YWAzZkNylBFGlmaY4jnbcQJIY4Rg,2027
20
24
  toolkits/databases/status_check.py,sha256=12oeY94n5ZRnPoNSrY_P8uB6JMWMStAnuRO6gmTrm9w,6474
21
- toolkits/db_query_demo.py,sha256=0xPiOaAwY4ulZ91x4IhQ1gNRoOIHVk558FKGMAjnHGY,2577
25
+ toolkits/db_query_demo.py,sha256=WgtXGNKrWK1lG2nuqh_0nYx59MuPOqu3eO27P_0ZBjc,2569
22
26
  toolkits/libs_core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
- toolkits/libs_core/config_groups_helper.py,sha256=k3ji_4iZVqTL5jB6xrIUKNbATM7Aoc0gAi7rJ1HyJeA,1987
24
- toolkits/libs_core/config_helper.py,sha256=t4j10aGcrOR6Zb6-qFZUgELO9tShPJs1NNIB3uVCuVg,494
25
- toolkits/libs_core/env_prepare.py,sha256=1zrxrdKcXR9eouEXuqfH03n1z8LSJ10QZ7HEogtA1_4,6103
26
27
  toolkits/libs_core/load_module.py,sha256=AAFPDx4_N6e3KdaI_LKciSqAD0zuHNfZxyu1FImk4o4,1325
27
- toolkits/libs_core/mysql_helper.py,sha256=XI5b5oAkcqDQ8_r3cBDFjjHIv3ufACq22Ls9dq8XdKQ,6153
28
28
  toolkits/network/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
29
  toolkits/network/ip_helper.py,sha256=VgSnQyXOAViAZuTnXeOZXtPiL38kbf3rD3-SUxRqNsM,665
30
30
  toolkits/network/pdi_helper.py,sha256=RR8Jdqyd-g1rnrf98UaZgOOks7Z1jcZFaWXzUbf4fQo,7406
@@ -42,7 +42,7 @@ toolkits/system/load_module.py,sha256=UXNfE9drsfz9oOBq9EGdV4gjmiIYlJQECIt3PFaLxw
42
42
  toolkits/system/priority_tasks.py,sha256=eUtKQatAnYcV3f3V3XY4FQ0u3afX8NHuqiBRcuv0d0I,7632
43
43
  toolkits/system/process_monitor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
44
44
  toolkits/system/process_monitor/process_monitor.py,sha256=_tXmWSOzAqAlHeGiBPrMGFU1Wjdr4zUAKNSPucqGRO8,12887
45
- toolkits/system/shell_helper.py,sha256=RwMw-t98IFjqo1DiqUL4GK0tRM4vSDj-Jqo623mEyRM,7999
45
+ toolkits/system/shell_helper.py,sha256=BzQgPFj1Lg7QdhDxXFaZ9XlkZRIyixvEhZyoSXSdrDE,9099
46
46
  toolkits/system/str_helper.py,sha256=89qw0jF6Pf19uuMhBh7XFoCxHvEiZztPwlCDdYuPBEQ,5096
47
47
  toolkits/system/tasks_deamon/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
48
48
  toolkits/system/tasks_deamon/tasks_controller.py,sha256=aobnJ0vJmvHQs94-yXasHqyxGsBHrv8Vqd1lq6JtmOo,2380
@@ -52,5 +52,5 @@ toolkits/system/test_shell_helper.py,sha256=zOCe-2BER1_x8t2NtiySWcd7K-PJEqL_zcIi
52
52
  toolkits/system/time_helper.py,sha256=_nxy97rnnagCn_m5sppZTDsx2sdn5debsTfXPEjoWzU,5644
53
53
  toolkits/system/win32_env.py,sha256=KYkZ-clZYkSQnSvPvpydeOVepaCrPH0egkC-MY-Bs0w,1829
54
54
  toolkits/tookits_app.py,sha256=2qz6V5XkEGc6NjxafFvFavE1hpt-tE0PoGonLAvZNXs,380
55
- toolkits/tookits_cli.py,sha256=f8u2IXYwk0QguQwY39aNjgVwJFiAmfukGGumWT6s07I,5273
56
- toolkits-0.2.7.dist-info/RECORD,,
55
+ toolkits/tookits_cli.py,sha256=PZmhHLqm8rhLOl3_Fty6WPkW4UxIHMGcswxaHrOe_Ek,5274
56
+ toolkits-0.2.8.dist-info/RECORD,,
File without changes
File without changes
File without changes