pywebexec 0.0.4__py3-none-any.whl → 0.0.6__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.
- pywebexec/pywebexec.py +2 -1
- pywebexec/templates/index.html +5 -0
- pywebexec/version.py +2 -2
- {pywebexec-0.0.4.dist-info → pywebexec-0.0.6.dist-info}/METADATA +5 -4
- {pywebexec-0.0.4.dist-info → pywebexec-0.0.6.dist-info}/RECORD +9 -9
- {pywebexec-0.0.4.dist-info → pywebexec-0.0.6.dist-info}/WHEEL +1 -1
- {pywebexec-0.0.4.dist-info → pywebexec-0.0.6.dist-info}/LICENSE +0 -0
- {pywebexec-0.0.4.dist-info → pywebexec-0.0.6.dist-info}/entry_points.txt +0 -0
- {pywebexec-0.0.4.dist-info → pywebexec-0.0.6.dist-info}/top_level.txt +0 -0
pywebexec/pywebexec.py
CHANGED
|
@@ -16,7 +16,7 @@ app = Flask(__name__)
|
|
|
16
16
|
auth = HTTPBasicAuth()
|
|
17
17
|
|
|
18
18
|
# Directory to store the script status and output
|
|
19
|
-
SCRIPT_STATUS_DIR = '
|
|
19
|
+
SCRIPT_STATUS_DIR = '.web_status'
|
|
20
20
|
|
|
21
21
|
if not os.path.exists(SCRIPT_STATUS_DIR):
|
|
22
22
|
os.makedirs(SCRIPT_STATUS_DIR)
|
|
@@ -48,6 +48,7 @@ def start_gunicorn():
|
|
|
48
48
|
options = {
|
|
49
49
|
'bind': '%s:%s' % (args.listen, args.port),
|
|
50
50
|
'workers': 4,
|
|
51
|
+
'timeout': 600,
|
|
51
52
|
'certfile': args.cert,
|
|
52
53
|
'keyfile': args.key,
|
|
53
54
|
}
|
pywebexec/templates/index.html
CHANGED
|
@@ -82,6 +82,9 @@
|
|
|
82
82
|
input {
|
|
83
83
|
width: 50%
|
|
84
84
|
}
|
|
85
|
+
.currentscript {
|
|
86
|
+
background-color: #eef;
|
|
87
|
+
}
|
|
85
88
|
</style>
|
|
86
89
|
</head>
|
|
87
90
|
<body>
|
|
@@ -139,6 +142,7 @@
|
|
|
139
142
|
scriptsTbody.innerHTML = '';
|
|
140
143
|
scripts.forEach(script => {
|
|
141
144
|
const scriptRow = document.createElement('tr');
|
|
145
|
+
scriptRow.className = script.script_id === currentScriptId ? 'currentscript' : '';
|
|
142
146
|
scriptRow.innerHTML = `
|
|
143
147
|
<td class="monospace">
|
|
144
148
|
<span class="copy_clip" onclick="copyToClipboard('${script.script_id}', this)">${script.script_id.slice(0, 8)}</span>
|
|
@@ -197,6 +201,7 @@
|
|
|
197
201
|
} else {
|
|
198
202
|
fetchOutput(script_id);
|
|
199
203
|
}
|
|
204
|
+
fetchScripts(); // Refresh the script list to highlight the current script
|
|
200
205
|
}
|
|
201
206
|
|
|
202
207
|
async function relaunchScript(script_id) {
|
pywebexec/version.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.2
|
|
2
2
|
Name: pywebexec
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.6
|
|
4
4
|
Summary: Simple Python HTTP Exec Server
|
|
5
5
|
Home-page: https://github.com/joknarf/pywebexec
|
|
6
6
|
Author: Franck Jouvanceau
|
|
@@ -78,12 +78,13 @@ $ pip install pywebexec
|
|
|
78
78
|
$ pywebexec
|
|
79
79
|
```
|
|
80
80
|
|
|
81
|
-
* Launch commands with params/view live output/Status using browser
|
|
81
|
+
* Launch commands with params/view live output/Status using browser
|
|
82
|
+

|
|
82
83
|
|
|
83
84
|
## features
|
|
84
85
|
|
|
85
86
|
* Serve executables in current directory
|
|
86
|
-
* Launch commands with params from web browser
|
|
87
|
+
* Launch commands with params from web browser or API call
|
|
87
88
|
* Follow live output
|
|
88
89
|
* Stop command
|
|
89
90
|
* Relaunch command
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
pywebexec/__init__.py,sha256=4spIsVaF8RJt8S58AG_wWoORRNkws9Iwqprj27C3ljM,99
|
|
2
|
-
pywebexec/pywebexec.py,sha256=
|
|
3
|
-
pywebexec/version.py,sha256=
|
|
2
|
+
pywebexec/pywebexec.py,sha256=1LUPOuZXoXqM17-Cu-rYL05lOJy_5HqtIGqhxVyzdZY,10306
|
|
3
|
+
pywebexec/version.py,sha256=c6ZQWSJeXXzGZ3WoZWjkA-MiNkBFXMIRV9kZPo4MQ_M,411
|
|
4
4
|
pywebexec/static/images/aborted.svg,sha256=_mP43hU5QdRLFZIknBgjx-dIXrHgQG23-QV27ApXK2A,381
|
|
5
5
|
pywebexec/static/images/copy.svg,sha256=d9OwtGh5GzzZHzYcDrLfNxZYLth1Q64x7bRyYxu4Px0,622
|
|
6
6
|
pywebexec/static/images/copy_ok.svg,sha256=mEqUVUhSq8xaJK2msQkxRawnz_KwlCZ-tok8QS6hJ3g,451
|
|
@@ -8,10 +8,10 @@ pywebexec/static/images/failed.svg,sha256=ADZ7IKrUyOXtqpivnz3VcH0-Wru-I5MOi3OJAk
|
|
|
8
8
|
pywebexec/static/images/running.svg,sha256=vBpiG6ClNUNCArkwsyqK7O-qhIKJX1NI7MSjclNSp_8,1537
|
|
9
9
|
pywebexec/static/images/success.svg,sha256=PJDcCSTevJh7rkfSFLtc7P0pbeh8PVQBS8DaOLQemmc,489
|
|
10
10
|
pywebexec/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
11
|
-
pywebexec/templates/index.html,sha256=
|
|
12
|
-
pywebexec-0.0.
|
|
13
|
-
pywebexec-0.0.
|
|
14
|
-
pywebexec-0.0.
|
|
15
|
-
pywebexec-0.0.
|
|
16
|
-
pywebexec-0.0.
|
|
17
|
-
pywebexec-0.0.
|
|
11
|
+
pywebexec/templates/index.html,sha256=2peDmBnxZQSw6OjDCjNqRCx1_grDlI_Xr1NMgAGv2OI,10163
|
|
12
|
+
pywebexec-0.0.6.dist-info/LICENSE,sha256=gRJf0JPT_wsZJsUGlWPTS8Vypfl9vQ1qjp6sNbKykuA,1064
|
|
13
|
+
pywebexec-0.0.6.dist-info/METADATA,sha256=DQZhxqwFQhVWYOnPU6CmyNgIPZm4owp5O4AJx_ZSZWQ,4698
|
|
14
|
+
pywebexec-0.0.6.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
|
15
|
+
pywebexec-0.0.6.dist-info/entry_points.txt,sha256=-6--c27U7RARJe0BiW5CkTuKljf6pRtnDzE0wfmD9TM,65
|
|
16
|
+
pywebexec-0.0.6.dist-info/top_level.txt,sha256=vHoHyzngrfGdm_nM7Xn_5iLmaCrf10XO1EhldgNLEQ8,10
|
|
17
|
+
pywebexec-0.0.6.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|