synapse 2.215.0__py311-none-any.whl → 2.217.0__py311-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.
Potentially problematic release.
This version of synapse might be problematic. Click here for more details.
- synapse/cortex.py +16 -1
- synapse/lib/cell.py +12 -0
- synapse/lib/cmd.py +6 -2
- synapse/lib/layer.py +10 -5
- synapse/lib/schemas.py +9 -2
- synapse/lib/snap.py +15 -5
- synapse/lib/storm.py +1 -1
- synapse/lib/stormtypes.py +6 -0
- synapse/lib/types.py +3 -0
- synapse/lib/version.py +2 -2
- synapse/lib/view.py +16 -7
- synapse/models/inet.py +24 -4
- synapse/models/orgs.py +4 -2
- synapse/models/risk.py +2 -0
- synapse/tests/test_cortex.py +262 -0
- synapse/tests/test_lib_auth.py +2 -0
- synapse/tests/test_lib_storm.py +52 -1
- synapse/tests/test_lib_stormsvc.py +2 -2
- synapse/tests/test_lib_types.py +6 -0
- synapse/tests/test_model_inet.py +23 -0
- synapse/tests/test_tools_cryo_cat.py +3 -8
- synapse/tests/test_tools_storm.py +3 -2
- synapse/tests/utils.py +2 -0
- synapse/tools/aha/clone.py +3 -13
- synapse/tools/aha/easycert.py +5 -18
- synapse/tools/aha/enroll.py +3 -12
- synapse/tools/aha/list.py +2 -15
- synapse/tools/aha/mirror.py +3 -14
- synapse/tools/aha/provision/service.py +3 -13
- synapse/tools/aha/provision/user.py +3 -12
- synapse/tools/apikey.py +3 -13
- synapse/tools/autodoc.py +7 -19
- synapse/tools/axon2axon.py +1 -9
- synapse/tools/cellauth.py +5 -14
- synapse/tools/changelog.py +12 -16
- synapse/tools/cmdr.py +2 -6
- synapse/tools/cryo/cat.py +5 -15
- synapse/tools/cryo/list.py +3 -10
- synapse/tools/csvtool.py +40 -49
- synapse/tools/demote.py +1 -6
- synapse/tools/docker/validate.py +0 -1
- synapse/tools/easycert.py +3 -8
- synapse/tools/feed.py +7 -18
- synapse/tools/genpkg.py +3 -12
- synapse/tools/guid.py +4 -6
- synapse/tools/healthcheck.py +4 -11
- synapse/tools/json2mpk.py +1 -5
- synapse/tools/livebackup.py +3 -13
- synapse/tools/modrole.py +3 -12
- synapse/tools/moduser.py +3 -12
- synapse/tools/pkgs/gendocs.py +1 -1
- synapse/tools/promote.py +3 -13
- synapse/tools/pullfile.py +6 -18
- synapse/tools/pushfile.py +6 -18
- synapse/tools/reload.py +5 -14
- synapse/tools/rstorm.py +4 -12
- synapse/tools/shutdown.py +1 -2
- synapse/tools/snapshot.py +3 -14
- synapse/tools/storm.py +4 -12
- {synapse-2.215.0.dist-info → synapse-2.217.0.dist-info}/METADATA +1 -1
- {synapse-2.215.0.dist-info → synapse-2.217.0.dist-info}/RECORD +64 -64
- {synapse-2.215.0.dist-info → synapse-2.217.0.dist-info}/WHEEL +0 -0
- {synapse-2.215.0.dist-info → synapse-2.217.0.dist-info}/licenses/LICENSE +0 -0
- {synapse-2.215.0.dist-info → synapse-2.217.0.dist-info}/top_level.txt +0 -0
synapse/tools/genpkg.py
CHANGED
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
import io
|
|
2
2
|
import os
|
|
3
|
-
import sys
|
|
4
3
|
import base64
|
|
5
|
-
import asyncio
|
|
6
4
|
import logging
|
|
7
|
-
import argparse
|
|
8
5
|
|
|
9
6
|
import regex
|
|
10
7
|
|
|
@@ -12,7 +9,7 @@ import synapse.exc as s_exc
|
|
|
12
9
|
import synapse.common as s_common
|
|
13
10
|
import synapse.telepath as s_telepath
|
|
14
11
|
|
|
15
|
-
import synapse.lib.
|
|
12
|
+
import synapse.lib.cmd as s_cmd
|
|
16
13
|
import synapse.lib.json as s_json
|
|
17
14
|
import synapse.lib.output as s_output
|
|
18
15
|
import synapse.lib.certdir as s_certdir
|
|
@@ -238,12 +235,11 @@ def loadPkgProto(path, opticdir=None, no_docs=False, readonly=False):
|
|
|
238
235
|
return pkgdef
|
|
239
236
|
|
|
240
237
|
|
|
241
|
-
prog = 'synapse.tools.genpkg'
|
|
242
238
|
desc = 'A tool for generating/pushing storm packages from YAML prototypes.'
|
|
243
239
|
|
|
244
240
|
async def main(argv, outp=s_output.stdout):
|
|
245
241
|
|
|
246
|
-
pars =
|
|
242
|
+
pars = s_cmd.Parser(prog='synapse.tools.genpkg', outp=outp, description=desc)
|
|
247
243
|
pars.add_argument('--push', metavar='<url>', help='A telepath URL of a Cortex or PkgRepo.')
|
|
248
244
|
pars.add_argument('--push-verify', default=False, action='store_true',
|
|
249
245
|
help='Tell the Cortex to verify the package signature.')
|
|
@@ -306,10 +302,5 @@ async def main(argv, outp=s_output.stdout):
|
|
|
306
302
|
|
|
307
303
|
return 0
|
|
308
304
|
|
|
309
|
-
async def _main(argv, outp=s_output.stdout): # pragma: no cover
|
|
310
|
-
ret = await main(argv, outp=outp)
|
|
311
|
-
await asyncio.wait_for(s_coro.await_bg_tasks(), timeout=60)
|
|
312
|
-
return ret
|
|
313
|
-
|
|
314
305
|
if __name__ == '__main__': # pragma: no cover
|
|
315
|
-
|
|
306
|
+
s_cmd.exitmain(main)
|
synapse/tools/guid.py
CHANGED
|
@@ -1,12 +1,10 @@
|
|
|
1
|
+
import sys
|
|
2
|
+
|
|
1
3
|
import synapse.common as s_common
|
|
2
4
|
import synapse.lib.output as s_output
|
|
3
5
|
|
|
4
|
-
def main(argv, outp=
|
|
5
|
-
if outp is None: # pragma: no cover
|
|
6
|
-
outp = s_output.OutPut()
|
|
7
|
-
|
|
6
|
+
def main(argv, outp=s_output.stdout):
|
|
8
7
|
outp.printf(s_common.guid())
|
|
9
8
|
|
|
10
9
|
if __name__ == '__main__': # pragma: no cover
|
|
11
|
-
|
|
12
|
-
sys.exit(main(sys.argv))
|
|
10
|
+
sys.exit(main(sys.argv[1:]))
|
synapse/tools/healthcheck.py
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import sys
|
|
2
1
|
import socket
|
|
3
2
|
import asyncio
|
|
4
3
|
|
|
@@ -7,7 +6,6 @@ import synapse.common as s_common
|
|
|
7
6
|
import synapse.telepath as s_telepath
|
|
8
7
|
|
|
9
8
|
import synapse.lib.cmd as s_cmd
|
|
10
|
-
import synapse.lib.coro as s_coro
|
|
11
9
|
import synapse.lib.json as s_json
|
|
12
10
|
import synapse.lib.output as s_output
|
|
13
11
|
import synapse.lib.health as s_health
|
|
@@ -30,7 +28,7 @@ def format_component(e, mesg: str) -> dict:
|
|
|
30
28
|
return d
|
|
31
29
|
|
|
32
30
|
async def main(argv, outp=s_output.stdout):
|
|
33
|
-
pars =
|
|
31
|
+
pars = getArgParser(outp)
|
|
34
32
|
try:
|
|
35
33
|
opts = pars.parse_args(argv)
|
|
36
34
|
except s_exc.ParserExit as e: # pragma: no cover
|
|
@@ -96,21 +94,16 @@ async def main(argv, outp=s_output.stdout):
|
|
|
96
94
|
outp.printf(serialize(ret))
|
|
97
95
|
return retval
|
|
98
96
|
|
|
99
|
-
def
|
|
97
|
+
def getArgParser(outp):
|
|
100
98
|
desc = '''
|
|
101
99
|
synapse healthcheck tool
|
|
102
100
|
'''
|
|
103
|
-
pars = s_cmd.Parser('healthcheck', description=desc)
|
|
101
|
+
pars = s_cmd.Parser(prog='synapse.tools.healthcheck', outp=outp, description=desc)
|
|
104
102
|
pars.add_argument('--cell', '-c', required=True, type=str,
|
|
105
103
|
help='Telepath path to the cell to check.')
|
|
106
104
|
pars.add_argument('--timeout', '-t', default=10, type=float,
|
|
107
105
|
help='Connection and call timeout')
|
|
108
106
|
return pars
|
|
109
107
|
|
|
110
|
-
async def _main(argv, outp=s_output.stdout): # pragma: no cover
|
|
111
|
-
ret = await main(argv, outp=outp)
|
|
112
|
-
await asyncio.wait_for(s_coro.await_bg_tasks(), timeout=60)
|
|
113
|
-
return ret
|
|
114
|
-
|
|
115
108
|
if __name__ == '__main__': # pragma: no cover
|
|
116
|
-
|
|
109
|
+
s_cmd.exitmain(main)
|
synapse/tools/json2mpk.py
CHANGED
|
@@ -12,11 +12,7 @@ def getArgParser():
|
|
|
12
12
|
pars.add_argument('paths', nargs='+', help='json files or directories full of json files')
|
|
13
13
|
return pars
|
|
14
14
|
|
|
15
|
-
def main(argv, outp=
|
|
16
|
-
|
|
17
|
-
if outp is None: # pragma: no cover
|
|
18
|
-
outp = s_output.OutPut()
|
|
19
|
-
|
|
15
|
+
def main(argv, outp=s_output.stdout):
|
|
20
16
|
pars = getArgParser()
|
|
21
17
|
opts = pars.parse_args(argv)
|
|
22
18
|
|
synapse/tools/livebackup.py
CHANGED
|
@@ -1,10 +1,6 @@
|
|
|
1
|
-
import sys
|
|
2
|
-
import asyncio
|
|
3
|
-
import argparse
|
|
4
|
-
|
|
5
1
|
import synapse.telepath as s_telepath
|
|
6
2
|
|
|
7
|
-
import synapse.lib.
|
|
3
|
+
import synapse.lib.cmd as s_cmd
|
|
8
4
|
import synapse.lib.output as s_output
|
|
9
5
|
|
|
10
6
|
descr = '''
|
|
@@ -19,8 +15,7 @@ Examples:
|
|
|
19
15
|
|
|
20
16
|
async def main(argv, outp=s_output.stdout):
|
|
21
17
|
|
|
22
|
-
pars =
|
|
23
|
-
formatter_class=argparse.RawDescriptionHelpFormatter)
|
|
18
|
+
pars = s_cmd.Parser(prog='synapse.tools.livebackup', outp=outp, description=descr)
|
|
24
19
|
|
|
25
20
|
pars.add_argument('--url', default='cell:///vertex/storage', help='The telepath URL of the Synapse service.')
|
|
26
21
|
pars.add_argument('--name', default=None, help='Specify a name for the backup. Defaults to an automatically generated timestamp.')
|
|
@@ -35,10 +30,5 @@ async def main(argv, outp=s_output.stdout):
|
|
|
35
30
|
outp.printf(f'...backup created: {name}')
|
|
36
31
|
return 0
|
|
37
32
|
|
|
38
|
-
async def _main(argv, outp=s_output.stdout): # pragma: no cover
|
|
39
|
-
ret = await main(argv, outp=outp)
|
|
40
|
-
await asyncio.wait_for(s_coro.await_bg_tasks(), timeout=60)
|
|
41
|
-
return ret
|
|
42
|
-
|
|
43
33
|
if __name__ == '__main__': # pragma: no cover
|
|
44
|
-
|
|
34
|
+
s_cmd.exitmain(main)
|
synapse/tools/modrole.py
CHANGED
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
import sys
|
|
2
|
-
import asyncio
|
|
3
|
-
import argparse
|
|
4
|
-
|
|
5
1
|
import synapse.common as s_common
|
|
6
2
|
import synapse.telepath as s_telepath
|
|
7
3
|
|
|
8
|
-
import synapse.lib.
|
|
4
|
+
import synapse.lib.cmd as s_cmd
|
|
9
5
|
import synapse.lib.output as s_output
|
|
10
6
|
|
|
11
7
|
descr = '''
|
|
@@ -30,7 +26,7 @@ def printrole(role, outp):
|
|
|
30
26
|
|
|
31
27
|
async def main(argv, outp=s_output.stdout):
|
|
32
28
|
|
|
33
|
-
pars =
|
|
29
|
+
pars = s_cmd.Parser(prog='synapse.tools.modrole', outp=outp, description=descr)
|
|
34
30
|
pars.add_argument('--svcurl', default='cell:///vertex/storage', help='The telepath URL of the Synapse service.')
|
|
35
31
|
pars.add_argument('--add', default=False, action='store_true', help='Add the role if they do not already exist.')
|
|
36
32
|
pars.add_argument('--del', dest='delete', default=False, action='store_true', help='Delete the role if it exists.')
|
|
@@ -116,10 +112,5 @@ async def main(argv, outp=s_output.stdout):
|
|
|
116
112
|
await cell.addRoleRule(roleiden, (False, perm), indx=0, gateiden=opts.gate)
|
|
117
113
|
return 0
|
|
118
114
|
|
|
119
|
-
async def _main(argv, outp=s_output.stdout): # pragma: no cover
|
|
120
|
-
ret = await main(argv, outp=outp)
|
|
121
|
-
await asyncio.wait_for(s_coro.await_bg_tasks(), timeout=60)
|
|
122
|
-
return ret
|
|
123
|
-
|
|
124
115
|
if __name__ == '__main__': # pragma: no cover
|
|
125
|
-
|
|
116
|
+
s_cmd.exitmain(main)
|
synapse/tools/moduser.py
CHANGED
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
import sys
|
|
2
|
-
import asyncio
|
|
3
|
-
import argparse
|
|
4
|
-
|
|
5
1
|
import synapse.common as s_common
|
|
6
2
|
import synapse.telepath as s_telepath
|
|
7
3
|
|
|
8
|
-
import synapse.lib.
|
|
4
|
+
import synapse.lib.cmd as s_cmd
|
|
9
5
|
import synapse.lib.output as s_output
|
|
10
6
|
|
|
11
7
|
descr = '''
|
|
@@ -41,7 +37,7 @@ def printuser(user, outp):
|
|
|
41
37
|
|
|
42
38
|
async def main(argv, outp=s_output.stdout):
|
|
43
39
|
|
|
44
|
-
pars =
|
|
40
|
+
pars = s_cmd.Parser(prog='synapse.tools.moduser', outp=outp, description=descr)
|
|
45
41
|
pars.add_argument('--svcurl', default='cell:///vertex/storage', help='The telepath URL of the Synapse service.')
|
|
46
42
|
pars.add_argument('--add', default=False, action='store_true', help='Add the user if they do not already exist.')
|
|
47
43
|
pars.add_argument('--del', dest='delete', default=False, action='store_true', help='Delete the user if they exist.')
|
|
@@ -187,10 +183,5 @@ async def main(argv, outp=s_output.stdout):
|
|
|
187
183
|
await cell.addUserRule(useriden, (False, perm), indx=0, gateiden=opts.gate)
|
|
188
184
|
return 0
|
|
189
185
|
|
|
190
|
-
async def _main(argv, outp=s_output.stdout): # pragma: no cover
|
|
191
|
-
ret = await main(argv, outp=outp)
|
|
192
|
-
await asyncio.wait_for(s_coro.await_bg_tasks(), timeout=60)
|
|
193
|
-
return ret
|
|
194
|
-
|
|
195
186
|
if __name__ == '__main__': # pragma: no cover
|
|
196
|
-
|
|
187
|
+
s_cmd.exitmain(main)
|
synapse/tools/pkgs/gendocs.py
CHANGED
|
@@ -28,7 +28,7 @@ def hasPandoc():
|
|
|
28
28
|
return True
|
|
29
29
|
return False
|
|
30
30
|
|
|
31
|
-
async def buildPkgDocs(outp
|
|
31
|
+
async def buildPkgDocs(outp, pkgpath: str, rst_only: bool =False):
|
|
32
32
|
|
|
33
33
|
logger.info(f'Building pkg for {pkgpath}')
|
|
34
34
|
pkgdef = s_common.yamlload(pkgpath)
|
synapse/tools/promote.py
CHANGED
|
@@ -1,12 +1,8 @@
|
|
|
1
|
-
import sys
|
|
2
|
-
import asyncio
|
|
3
|
-
import argparse
|
|
4
|
-
|
|
5
1
|
import synapse.exc as s_exc
|
|
6
2
|
|
|
7
3
|
import synapse.telepath as s_telepath
|
|
8
4
|
|
|
9
|
-
import synapse.lib.
|
|
5
|
+
import synapse.lib.cmd as s_cmd
|
|
10
6
|
import synapse.lib.output as s_output
|
|
11
7
|
import synapse.lib.urlhelp as s_urlhelp
|
|
12
8
|
|
|
@@ -19,8 +15,7 @@ Example (being run from a Cortex mirror docker container):
|
|
|
19
15
|
|
|
20
16
|
async def main(argv, outp=s_output.stdout):
|
|
21
17
|
|
|
22
|
-
pars =
|
|
23
|
-
formatter_class=argparse.RawDescriptionHelpFormatter)
|
|
18
|
+
pars = s_cmd.Parser(prog='synapse.tools.promote', outp=outp, description=descr)
|
|
24
19
|
|
|
25
20
|
pars.add_argument('--svcurl', default='cell:///vertex/storage',
|
|
26
21
|
help='The telepath URL of the Synapse service.')
|
|
@@ -49,10 +44,5 @@ async def main(argv, outp=s_output.stdout):
|
|
|
49
44
|
|
|
50
45
|
return 0
|
|
51
46
|
|
|
52
|
-
async def _main(argv, outp=s_output.stdout): # pragma: no cover
|
|
53
|
-
ret = await main(argv, outp=outp)
|
|
54
|
-
await asyncio.wait_for(s_coro.await_bg_tasks(), timeout=60)
|
|
55
|
-
return ret
|
|
56
|
-
|
|
57
47
|
if __name__ == '__main__': # pragma: no cover
|
|
58
|
-
|
|
48
|
+
s_cmd.exitmain(main)
|
synapse/tools/pullfile.py
CHANGED
|
@@ -1,23 +1,16 @@
|
|
|
1
|
-
import sys
|
|
2
|
-
import asyncio
|
|
3
1
|
import pathlib
|
|
4
|
-
import argparse
|
|
5
2
|
|
|
6
3
|
import synapse.common as s_common
|
|
7
4
|
import synapse.telepath as s_telepath
|
|
8
5
|
|
|
9
|
-
import synapse.lib.
|
|
6
|
+
import synapse.lib.cmd as s_cmd
|
|
10
7
|
import synapse.lib.output as s_output
|
|
11
8
|
|
|
12
9
|
|
|
13
|
-
async def main(argv, outp=
|
|
14
|
-
|
|
15
|
-
pars = setup()
|
|
10
|
+
async def main(argv, outp=s_output.stdout):
|
|
11
|
+
pars = getArgParser(outp)
|
|
16
12
|
opts = pars.parse_args(argv)
|
|
17
13
|
|
|
18
|
-
if outp is None: # pragma: no cover
|
|
19
|
-
outp = s_output.OutPut()
|
|
20
|
-
|
|
21
14
|
if opts.output is None:
|
|
22
15
|
opts.output = '.'
|
|
23
16
|
|
|
@@ -55,9 +48,9 @@ async def main(argv, outp=None):
|
|
|
55
48
|
return 0
|
|
56
49
|
|
|
57
50
|
|
|
58
|
-
def
|
|
51
|
+
def getArgParser(outp):
|
|
59
52
|
desc = 'Fetches file from the given axon'
|
|
60
|
-
pars =
|
|
53
|
+
pars = s_cmd.Parser(prog='synapse.tools.pullfile', outp=outp, description=desc)
|
|
61
54
|
pars.add_argument('-a', '--axon', type=str, dest='axon', required=True,
|
|
62
55
|
help='URL to the axon blob store')
|
|
63
56
|
pars.add_argument('-o', '--output', type=str, dest='output',
|
|
@@ -67,10 +60,5 @@ def setup():
|
|
|
67
60
|
|
|
68
61
|
return pars
|
|
69
62
|
|
|
70
|
-
async def _main(argv, outp=s_output.stdout): # pragma: no cover
|
|
71
|
-
ret = await main(argv, outp=outp)
|
|
72
|
-
await asyncio.wait_for(s_coro.await_bg_tasks(), timeout=60)
|
|
73
|
-
return ret
|
|
74
|
-
|
|
75
63
|
if __name__ == '__main__': # pragma: no cover
|
|
76
|
-
|
|
64
|
+
s_cmd.exitmain(main)
|
synapse/tools/pushfile.py
CHANGED
|
@@ -1,27 +1,20 @@
|
|
|
1
1
|
import os
|
|
2
|
-
import sys
|
|
3
2
|
import glob
|
|
4
|
-
import asyncio
|
|
5
3
|
import logging
|
|
6
|
-
import argparse
|
|
7
4
|
|
|
8
5
|
import synapse.exc as s_exc
|
|
9
6
|
import synapse.common as s_common
|
|
10
7
|
import synapse.telepath as s_telepath
|
|
11
8
|
|
|
12
|
-
import synapse.lib.
|
|
9
|
+
import synapse.lib.cmd as s_cmd
|
|
13
10
|
import synapse.lib.output as s_output
|
|
14
11
|
import synapse.lib.hashset as s_hashset
|
|
15
12
|
|
|
16
13
|
logger = logging.getLogger(__name__)
|
|
17
14
|
|
|
18
15
|
|
|
19
|
-
async def main(argv, outp=
|
|
20
|
-
|
|
21
|
-
if outp is None: # pragma: no cover
|
|
22
|
-
outp = s_output.OutPut()
|
|
23
|
-
|
|
24
|
-
pars = makeargparser()
|
|
16
|
+
async def main(argv, outp=s_output.stdout):
|
|
17
|
+
pars = getArgParser(outp)
|
|
25
18
|
opts = pars.parse_args(argv)
|
|
26
19
|
|
|
27
20
|
async with s_telepath.withTeleEnv():
|
|
@@ -111,10 +104,10 @@ async def main(argv, outp=None):
|
|
|
111
104
|
|
|
112
105
|
return 0
|
|
113
106
|
|
|
114
|
-
def
|
|
107
|
+
def getArgParser(outp):
|
|
115
108
|
desc = 'Command line tool for uploading files to an Axon and making ' \
|
|
116
109
|
'file:bytes in a Cortex.'
|
|
117
|
-
pars =
|
|
110
|
+
pars = s_cmd.Parser(prog='synapse.tools.pushfile', outp=outp, description=desc)
|
|
118
111
|
pars.add_argument('-a', '--axon', required=True, type=str, dest='axon',
|
|
119
112
|
help='URL for a target Axon to store files at.')
|
|
120
113
|
pars.add_argument('-c', '--cortex', default=None, type=str, dest='cortex',
|
|
@@ -125,10 +118,5 @@ def makeargparser():
|
|
|
125
118
|
pars.add_argument('-t', '--tags', help='comma separated list of tags to add to the nodes')
|
|
126
119
|
return pars
|
|
127
120
|
|
|
128
|
-
async def _main(argv, outp=s_output.stdout): # pragma: no cover
|
|
129
|
-
ret = await main(argv, outp=outp)
|
|
130
|
-
await asyncio.wait_for(s_coro.await_bg_tasks(), timeout=60)
|
|
131
|
-
return ret
|
|
132
|
-
|
|
133
121
|
if __name__ == '__main__': # pragma: no cover
|
|
134
|
-
|
|
122
|
+
s_cmd.exitmain(main)
|
synapse/tools/reload.py
CHANGED
|
@@ -1,10 +1,6 @@
|
|
|
1
|
-
import sys
|
|
2
|
-
import asyncio
|
|
3
|
-
import argparse
|
|
4
|
-
|
|
5
1
|
import synapse.telepath as s_telepath
|
|
6
2
|
|
|
7
|
-
import synapse.lib.
|
|
3
|
+
import synapse.lib.cmd as s_cmd
|
|
8
4
|
import synapse.lib.output as s_output
|
|
9
5
|
import synapse.lib.urlhelp as s_urlhelp
|
|
10
6
|
|
|
@@ -14,7 +10,7 @@ List or execute reload subsystems on a Synapse service.
|
|
|
14
10
|
|
|
15
11
|
async def main(argv, outp=s_output.stdout):
|
|
16
12
|
|
|
17
|
-
pars = getArgParser()
|
|
13
|
+
pars = getArgParser(outp)
|
|
18
14
|
opts = pars.parse_args(argv)
|
|
19
15
|
|
|
20
16
|
async with s_telepath.withTeleEnv():
|
|
@@ -55,8 +51,8 @@ async def main(argv, outp=s_output.stdout):
|
|
|
55
51
|
outp.printf(f'{name.ljust(40)}{result.ljust(10)}{mesg}')
|
|
56
52
|
return 0
|
|
57
53
|
|
|
58
|
-
def getArgParser():
|
|
59
|
-
pars =
|
|
54
|
+
def getArgParser(outp):
|
|
55
|
+
pars = s_cmd.Parser(prog='synapse.tools.reload', outp=outp, description=descr)
|
|
60
56
|
pars.add_argument('--svcurl', default='cell:///vertex/storage', help='The telepath URL of the Synapse service.')
|
|
61
57
|
|
|
62
58
|
subpars = pars.add_subparsers(required=True,
|
|
@@ -68,10 +64,5 @@ def getArgParser():
|
|
|
68
64
|
|
|
69
65
|
return pars
|
|
70
66
|
|
|
71
|
-
async def _main(argv, outp=s_output.stdout): # pragma: no cover
|
|
72
|
-
ret = await main(argv, outp=outp)
|
|
73
|
-
await asyncio.wait_for(s_coro.await_bg_tasks(), timeout=60)
|
|
74
|
-
return ret
|
|
75
|
-
|
|
76
67
|
if __name__ == '__main__': # pragma: no cover
|
|
77
|
-
|
|
68
|
+
s_cmd.exitmain(main)
|
synapse/tools/rstorm.py
CHANGED
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
import sys
|
|
2
|
-
import asyncio
|
|
3
1
|
import logging
|
|
4
|
-
import argparse
|
|
5
2
|
|
|
6
3
|
import synapse.common as s_common
|
|
7
4
|
|
|
8
|
-
import synapse.lib.
|
|
5
|
+
import synapse.lib.cmd as s_cmd
|
|
9
6
|
import synapse.lib.output as s_output
|
|
10
7
|
import synapse.lib.rstorm as s_rstorm
|
|
11
8
|
|
|
@@ -16,7 +13,7 @@ descr = 'An RST pre-processor that allows you to embed storm directives.'
|
|
|
16
13
|
|
|
17
14
|
async def main(argv, outp=s_output.stdout):
|
|
18
15
|
|
|
19
|
-
pars =
|
|
16
|
+
pars = s_cmd.Parser(prog=prog, outp=outp, description=descr)
|
|
20
17
|
pars.add_argument('rstfile', help='Input RST file with storm directives.')
|
|
21
18
|
pars.add_argument('--save', help='Output file to save (default: stdout)')
|
|
22
19
|
|
|
@@ -33,11 +30,6 @@ async def main(argv, outp=s_output.stdout):
|
|
|
33
30
|
for line in lines:
|
|
34
31
|
outp.printf(line, addnl=False)
|
|
35
32
|
|
|
36
|
-
|
|
33
|
+
if __name__ == '__main__': # pragma: no cover
|
|
37
34
|
s_common.setlogging(logger)
|
|
38
|
-
|
|
39
|
-
await asyncio.wait_for(s_coro.await_bg_tasks(), timeout=60)
|
|
40
|
-
return ret
|
|
41
|
-
|
|
42
|
-
if __name__ == '__main__':
|
|
43
|
-
sys.exit(asyncio.run(_main(sys.argv[1:])))
|
|
35
|
+
s_cmd.exitmain(main)
|
synapse/tools/shutdown.py
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import synapse.exc as s_exc
|
|
2
|
-
import synapse.common as s_common
|
|
3
2
|
import synapse.telepath as s_telepath
|
|
4
3
|
|
|
5
4
|
import synapse.lib.cmd as s_cmd
|
|
@@ -22,7 +21,7 @@ NOTE: This will also demote the service if run on a leader with mirrors.
|
|
|
22
21
|
|
|
23
22
|
async def main(argv, outp=s_output.stdout):
|
|
24
23
|
|
|
25
|
-
pars = s_cmd.Parser('synapse.tools.shutdown', outp=outp, description=desc)
|
|
24
|
+
pars = s_cmd.Parser(prog='synapse.tools.shutdown', outp=outp, description=desc)
|
|
26
25
|
|
|
27
26
|
pars.add_argument('--url', default='cell:///vertex/storage',
|
|
28
27
|
help='The telepath URL to connect to the service.')
|
synapse/tools/snapshot.py
CHANGED
|
@@ -1,12 +1,8 @@
|
|
|
1
|
-
import sys
|
|
2
|
-
import asyncio
|
|
3
1
|
import logging
|
|
4
|
-
import argparse
|
|
5
|
-
|
|
6
2
|
import synapse.exc as s_exc
|
|
7
3
|
import synapse.telepath as s_telepath
|
|
8
4
|
|
|
9
|
-
import synapse.lib.
|
|
5
|
+
import synapse.lib.cmd as s_cmd
|
|
10
6
|
import synapse.lib.output as s_output
|
|
11
7
|
|
|
12
8
|
logger = logging.getLogger(__name__)
|
|
@@ -29,9 +25,7 @@ The tool will set the process exit code to 0 on success.
|
|
|
29
25
|
|
|
30
26
|
async def main(argv, outp=s_output.stdout):
|
|
31
27
|
|
|
32
|
-
pars =
|
|
33
|
-
description=desc,
|
|
34
|
-
formatter_class=argparse.RawDescriptionHelpFormatter)
|
|
28
|
+
pars = s_cmd.Parser(prog='synapse.tools.snapshot', outp=outp, description=desc)
|
|
35
29
|
|
|
36
30
|
subs = pars.add_subparsers(required=True, title='commands', dest='cmd')
|
|
37
31
|
|
|
@@ -66,10 +60,5 @@ async def main(argv, outp=s_output.stdout):
|
|
|
66
60
|
outp.printf(f'ERROR {e.__class__.__name__}: {mesg}')
|
|
67
61
|
return 1
|
|
68
62
|
|
|
69
|
-
async def _main(argv, outp=s_output.stdout): # pragma: no cover
|
|
70
|
-
ret = await main(argv, outp=outp)
|
|
71
|
-
await asyncio.wait_for(s_coro.await_bg_tasks(), timeout=60)
|
|
72
|
-
return ret
|
|
73
|
-
|
|
74
63
|
if __name__ == '__main__': # pragma: no cover
|
|
75
|
-
|
|
64
|
+
s_cmd.exitmain(main)
|
synapse/tools/storm.py
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
1
|
import os
|
|
2
|
-
import sys
|
|
3
2
|
import copy
|
|
4
3
|
import asyncio
|
|
5
4
|
import logging
|
|
6
|
-
import argparse
|
|
7
5
|
|
|
8
6
|
import regex
|
|
9
7
|
import prompt_toolkit
|
|
@@ -14,7 +12,6 @@ import synapse.telepath as s_telepath
|
|
|
14
12
|
|
|
15
13
|
import synapse.lib.cli as s_cli
|
|
16
14
|
import synapse.lib.cmd as s_cmd
|
|
17
|
-
import synapse.lib.coro as s_coro
|
|
18
15
|
import synapse.lib.node as s_node
|
|
19
16
|
import synapse.lib.output as s_output
|
|
20
17
|
import synapse.lib.parser as s_parser
|
|
@@ -613,8 +610,8 @@ class StormCli(s_cli.Cli):
|
|
|
613
610
|
|
|
614
611
|
return ret
|
|
615
612
|
|
|
616
|
-
def getArgParser():
|
|
617
|
-
pars =
|
|
613
|
+
def getArgParser(outp):
|
|
614
|
+
pars = s_cmd.Parser(prog='synapse.tools.storm', outp=outp)
|
|
618
615
|
pars.add_argument('cortex', help='A telepath URL for the Cortex.')
|
|
619
616
|
pars.add_argument('onecmd', nargs='?', help='A single storm command to run and exit.')
|
|
620
617
|
pars.add_argument('--view', default=None, help='The view iden to work in.')
|
|
@@ -623,7 +620,7 @@ def getArgParser():
|
|
|
623
620
|
|
|
624
621
|
async def main(argv, outp=s_output.stdout):
|
|
625
622
|
|
|
626
|
-
pars = getArgParser()
|
|
623
|
+
pars = getArgParser(outp=outp)
|
|
627
624
|
opts = pars.parse_args(argv)
|
|
628
625
|
|
|
629
626
|
async with s_telepath.withTeleEnv():
|
|
@@ -649,10 +646,5 @@ async def main(argv, outp=s_output.stdout):
|
|
|
649
646
|
await cli.addSignalHandlers()
|
|
650
647
|
await cli.runCmdLoop()
|
|
651
648
|
|
|
652
|
-
async def _main(argv, outp=s_output.stdout): # pragma: no cover
|
|
653
|
-
ret = await main(argv, outp=outp)
|
|
654
|
-
await asyncio.wait_for(s_coro.await_bg_tasks(), timeout=60)
|
|
655
|
-
return ret
|
|
656
|
-
|
|
657
649
|
if __name__ == '__main__': # pragma: no cover
|
|
658
|
-
|
|
650
|
+
s_cmd.exitmain(main)
|