pyntcli 0.1.82__py3-none-any.whl → 0.1.83__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.
- pyntcli/__init__.py +1 -1
- pyntcli/commands/root.py +4 -12
- pyntcli/main.py +19 -1
- pyntcli/store/store.py +4 -4
- {pyntcli-0.1.82.dist-info → pyntcli-0.1.83.dist-info}/METADATA +1 -1
- {pyntcli-0.1.82.dist-info → pyntcli-0.1.83.dist-info}/RECORD +9 -9
- {pyntcli-0.1.82.dist-info → pyntcli-0.1.83.dist-info}/WHEEL +0 -0
- {pyntcli-0.1.82.dist-info → pyntcli-0.1.83.dist-info}/entry_points.txt +0 -0
- {pyntcli-0.1.82.dist-info → pyntcli-0.1.83.dist-info}/top_level.txt +0 -0
pyntcli/__init__.py
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
__version__ = "0.1.
|
|
1
|
+
__version__ = "0.1.83"
|
pyntcli/commands/root.py
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import argparse
|
|
2
|
-
import sys
|
|
3
|
-
|
|
4
2
|
from os import environ
|
|
5
3
|
|
|
6
4
|
from pyntcli.auth import login
|
|
@@ -15,22 +13,16 @@ def root_usage():
|
|
|
15
13
|
.with_line("\tpynt [COMMAND] [OPTIONS]")
|
|
16
14
|
.with_line("")
|
|
17
15
|
.with_line("Commands:", style=ui_thread.PrinterText.HEADER)
|
|
18
|
-
.with_line(
|
|
19
|
-
"\tpostman - integration with postman, run scan from pynt postman collection"
|
|
20
|
-
)
|
|
16
|
+
.with_line("\tpostman - integration with postman, run scan from pynt postman collection")
|
|
21
17
|
.with_line("\tnewman - run postman collection from the CLI")
|
|
22
18
|
.with_line("\thar - run scan on static har file")
|
|
23
19
|
.with_line("\tcommand - run scan with a given command")
|
|
24
20
|
.with_line("\tlisten - run scan with a routed traffic")
|
|
25
21
|
.with_line("\tburp - run scan on a burp xml output file")
|
|
26
|
-
.with_line(
|
|
27
|
-
|
|
28
|
-
)
|
|
22
|
+
.with_line("\tpynt-id - view your pynt-id to use when running pynt in CI pipeline")
|
|
23
|
+
.with_line("\tlogout - log out from your user")
|
|
29
24
|
.with_line("")
|
|
30
|
-
.with_line(
|
|
31
|
-
"Run pynt [COMMAND] -h to get help on a specific command",
|
|
32
|
-
style=ui_thread.PrinterText.INFO,
|
|
33
|
-
)
|
|
25
|
+
.with_line("Run pynt [COMMAND] -h to get help on a specific command", style=ui_thread.PrinterText.INFO,)
|
|
34
26
|
)
|
|
35
27
|
|
|
36
28
|
|
pyntcli/main.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from sys import argv, exit
|
|
2
2
|
import signal
|
|
3
|
-
|
|
3
|
+
import os
|
|
4
4
|
import pyntcli.log.log as log
|
|
5
5
|
from pyntcli.commands import pynt_cmd
|
|
6
6
|
from pyntcli.pynt_docker import pynt_container
|
|
@@ -16,6 +16,8 @@ from pyntcli.commands.util import SomeFindingsOrWarningsException
|
|
|
16
16
|
from pyntcli.commands.postman import PyntWebSocketException
|
|
17
17
|
from pyntcli import __version__
|
|
18
18
|
|
|
19
|
+
from pyntcli.store import CredStore
|
|
20
|
+
|
|
19
21
|
|
|
20
22
|
def shutdown_cli():
|
|
21
23
|
analytics.stop()
|
|
@@ -48,9 +50,25 @@ def start_analytics():
|
|
|
48
50
|
log.add_user_details(user_id)
|
|
49
51
|
|
|
50
52
|
|
|
53
|
+
def logout():
|
|
54
|
+
creds_path = CredStore().get_path()
|
|
55
|
+
try:
|
|
56
|
+
if os.path.isfile(creds_path):
|
|
57
|
+
os.remove(creds_path)
|
|
58
|
+
ui_thread.print("you have successfully logged out")
|
|
59
|
+
return
|
|
60
|
+
except Exception:
|
|
61
|
+
ui_thread.print(f"not able to log out - try to manually delete the {creds_path} file")
|
|
62
|
+
|
|
63
|
+
ui_thread.print("you are not logged in. run pynt --help and choose the required command")
|
|
64
|
+
|
|
65
|
+
|
|
51
66
|
def main():
|
|
52
67
|
print_header()
|
|
53
68
|
try:
|
|
69
|
+
if argv[1] == "logout":
|
|
70
|
+
logout()
|
|
71
|
+
return
|
|
54
72
|
log.set_source(__version__)
|
|
55
73
|
start_analytics()
|
|
56
74
|
check_for_dependecies()
|
pyntcli/store/store.py
CHANGED
|
@@ -10,8 +10,8 @@ class Store():
|
|
|
10
10
|
self.file_location = file_location
|
|
11
11
|
self.connector: StoreConnector = None
|
|
12
12
|
self._file = None
|
|
13
|
-
self.
|
|
14
|
-
|
|
13
|
+
self._connector_type = connector_type
|
|
14
|
+
|
|
15
15
|
def _get_file_data(self):
|
|
16
16
|
if self.connector:
|
|
17
17
|
return
|
|
@@ -22,11 +22,11 @@ class Store():
|
|
|
22
22
|
|
|
23
23
|
if not os.path.exists(self.file_location):
|
|
24
24
|
with open(self.file_location, "w") as f:
|
|
25
|
-
self.connector = self.
|
|
25
|
+
self.connector = self._connector_type(self._connector_type.default_value())
|
|
26
26
|
return
|
|
27
27
|
|
|
28
28
|
with open(self.file_location, "r+") as f:
|
|
29
|
-
self.connector = self.
|
|
29
|
+
self.connector = self._connector_type(f.read())
|
|
30
30
|
|
|
31
31
|
def get(self, key):
|
|
32
32
|
self._get_file_data()
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
pyntcli/__init__.py,sha256=
|
|
2
|
-
pyntcli/main.py,sha256=
|
|
1
|
+
pyntcli/__init__.py,sha256=YNVbuQj-JrlVU3yGuccLkZ5P-L-37tQUcshGno0Ijlo,23
|
|
2
|
+
pyntcli/main.py,sha256=wg2Is1ckRCb3EwsLFshDsbPKvntPOR7sDB2Nq-DW4wk,5689
|
|
3
3
|
pyntcli/analytics/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
4
4
|
pyntcli/analytics/send.py,sha256=pJOyOWl3g_Vm9apKK3LzNVqsnC6zsWA1bCK3ZegbLpc,3637
|
|
5
5
|
pyntcli/auth/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -13,7 +13,7 @@ pyntcli/commands/listen.py,sha256=JoDo3BirYf9f3Fr21qAQ7kIDmLbM5cuFzQtf8RQ_nhs,84
|
|
|
13
13
|
pyntcli/commands/newman.py,sha256=y0KolwMgsvoqPz2mp0QRug_qNr-ftOZbu_tN7h4bH7I,4826
|
|
14
14
|
pyntcli/commands/postman.py,sha256=GWq4NJJ_9WdFiXk5rv2nTyMM27w50XLh4LKkuuWpw4I,4721
|
|
15
15
|
pyntcli/commands/pynt_cmd.py,sha256=KOl9guUtesO2JcMM5nPKKkjnK6F9HV4jHHcoUk4KVhw,2825
|
|
16
|
-
pyntcli/commands/root.py,sha256=
|
|
16
|
+
pyntcli/commands/root.py,sha256=dmgdzoFuf5LkwrkwvWf1MtlwTBgsVpS85Yr_cQCVuGA,3291
|
|
17
17
|
pyntcli/commands/sub_command.py,sha256=GF3-rE_qk2L4jGPFqHLm9SdGINmu3EakhjJTFyWjRms,374
|
|
18
18
|
pyntcli/commands/util.py,sha256=NJBJk4tKzrWmilYdo-7CROH5IXKl0UQAPKaMzRZtxm8,2827
|
|
19
19
|
pyntcli/log/__init__.py,sha256=cOGwOYzMoshEbZiiasBGkj6wF0SBu3Jdpl-AuakDesw,19
|
|
@@ -23,7 +23,7 @@ pyntcli/pynt_docker/container_utils.py,sha256=_Onn7loInzyJAG2-Uk6CGpsuRyelmUFHOv
|
|
|
23
23
|
pyntcli/pynt_docker/pynt_container.py,sha256=y4m8wZU16gqFPaMzEJKKHut4DbjPxr_du8g7I4-AcHk,8761
|
|
24
24
|
pyntcli/store/__init__.py,sha256=xuS9OB21F6B1sUx5XPGxz_6WpG6-KTMbuq50RrZS5OY,29
|
|
25
25
|
pyntcli/store/json_connector.py,sha256=UGs3uORw3iyn0YJ8kzab-veEZToA6d-ByXYuqEleWsA,560
|
|
26
|
-
pyntcli/store/store.py,sha256=
|
|
26
|
+
pyntcli/store/store.py,sha256=9KwalOd1EA1VtYwr9oJgBsPgUYakX5uyif_sNXGQ614,1917
|
|
27
27
|
pyntcli/store/store_connector.py,sha256=w4LzcpRZesUZL1f63RmLlWEFRtJ6Y6rcS6PkkGtO4MA,357
|
|
28
28
|
pyntcli/transport/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
29
29
|
pyntcli/transport/pynt_requests.py,sha256=KiEG3hNcwY7DLIJDCq-7LIPq54yYQcDBhHe3KhpqRTc,1563
|
|
@@ -35,8 +35,8 @@ pyntcli/ui/ui_thread.py,sha256=OVTbiIFMg2KgxAvHf7yy86xGm4RVS2vj_VYZkMi-SRY,4956
|
|
|
35
35
|
tests/conftest.py,sha256=gToq5K74GtgeGQXjFvXSzMaE6axBYxAzcFG5XJPOXjI,427
|
|
36
36
|
tests/auth/test_login.py,sha256=KFlzWhXBAuwdi7GXf16gCB3ya94LQG2wjcSChE149rQ,3798
|
|
37
37
|
tests/store/test_cred_store.py,sha256=_7-917EtNC9eKEumO2_lt-7KuDmCwOZFaowCm7DbA_A,254
|
|
38
|
-
pyntcli-0.1.
|
|
39
|
-
pyntcli-0.1.
|
|
40
|
-
pyntcli-0.1.
|
|
41
|
-
pyntcli-0.1.
|
|
42
|
-
pyntcli-0.1.
|
|
38
|
+
pyntcli-0.1.83.dist-info/METADATA,sha256=XcLyBCUa_7GOUyGDqDBpGeWC5M-i1C4DM1CoWtCL7ok,463
|
|
39
|
+
pyntcli-0.1.83.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
|
40
|
+
pyntcli-0.1.83.dist-info/entry_points.txt,sha256=kcGmqAxXDttNk2EPRcqunc_LTVp61gzakz0v-GEE2SY,43
|
|
41
|
+
pyntcli-0.1.83.dist-info/top_level.txt,sha256=u9MDStwVHB7UG8PUcODeWCul_NvzL2EzoLvSlgwLHFs,30
|
|
42
|
+
pyntcli-0.1.83.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|