sthenos 0.1.0__tar.gz
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.
- sthenos-0.1.0/PKG-INFO +10 -0
- sthenos-0.1.0/pyproject.toml +22 -0
- sthenos-0.1.0/setup.cfg +4 -0
- sthenos-0.1.0/setup.py +11 -0
- sthenos-0.1.0/sthenos/__init__.py +21 -0
- sthenos-0.1.0/sthenos/bin/sthenos-linux +0 -0
- sthenos-0.1.0/sthenos/bin/sthenos-mac +0 -0
- sthenos-0.1.0/sthenos/bin/sthenos.exe +0 -0
- sthenos-0.1.0/sthenos/cli.py +44 -0
- sthenos-0.1.0/sthenos.egg-info/PKG-INFO +10 -0
- sthenos-0.1.0/sthenos.egg-info/SOURCES.txt +12 -0
- sthenos-0.1.0/sthenos.egg-info/dependency_links.txt +1 -0
- sthenos-0.1.0/sthenos.egg-info/entry_points.txt +2 -0
- sthenos-0.1.0/sthenos.egg-info/top_level.txt +1 -0
sthenos-0.1.0/PKG-INFO
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: sthenos
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: A Python-scriptable load testing tool (Go binary wrapper)
|
|
5
|
+
Author-email: Aldo Richard Santillán Echevarría <richard.24.se@gmail.com>
|
|
6
|
+
License: MIT
|
|
7
|
+
Classifier: Programming Language :: Python :: 3
|
|
8
|
+
Classifier: Operating System :: OS Independent
|
|
9
|
+
Requires-Python: >=3.7
|
|
10
|
+
Description-Content-Type: text/markdown
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["setuptools>=42", "wheel"]
|
|
3
|
+
build-backend = "setuptools.build_meta"
|
|
4
|
+
|
|
5
|
+
[project]
|
|
6
|
+
name = "sthenos"
|
|
7
|
+
version = "0.1.0"
|
|
8
|
+
description = "A Python-scriptable load testing tool (Go binary wrapper)"
|
|
9
|
+
authors = [
|
|
10
|
+
{name = "Aldo Richard Santillán Echevarría", email = "richard.24.se@gmail.com"},
|
|
11
|
+
]
|
|
12
|
+
readme = "README.md"
|
|
13
|
+
license = {text = "MIT"}
|
|
14
|
+
classifiers = [
|
|
15
|
+
"Programming Language :: Python :: 3",
|
|
16
|
+
"Operating System :: OS Independent",
|
|
17
|
+
]
|
|
18
|
+
requires-python = ">=3.7"
|
|
19
|
+
dependencies = []
|
|
20
|
+
|
|
21
|
+
[project.scripts]
|
|
22
|
+
sthenos = "sthenos.cli:main"
|
sthenos-0.1.0/setup.cfg
ADDED
sthenos-0.1.0/setup.py
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Sthenos API Stubs
|
|
2
|
+
# These definitions exist purely for IDE autocompletion.
|
|
3
|
+
# The actual logic is executed by the Go runtime.
|
|
4
|
+
|
|
5
|
+
from typing import Dict, Optional, Any, Union
|
|
6
|
+
|
|
7
|
+
ENV: Dict[str, str] = {}
|
|
8
|
+
|
|
9
|
+
class HTTPResponse:
|
|
10
|
+
status: int
|
|
11
|
+
def json(self) -> Any: ...
|
|
12
|
+
|
|
13
|
+
class HTTP:
|
|
14
|
+
def get(self, url: str, params: Optional[Dict] = None) -> HTTPResponse: ...
|
|
15
|
+
def post(self, url: str, body: Optional[str] = None, params: Optional[Dict] = None) -> HTTPResponse: ...
|
|
16
|
+
|
|
17
|
+
http = HTTP()
|
|
18
|
+
|
|
19
|
+
def check(val: Any, checks: Dict[str, Any]) -> bool: ...
|
|
20
|
+
|
|
21
|
+
def sleep(seconds: Union[int, float]): ...
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import sys
|
|
2
|
+
import os
|
|
3
|
+
import subprocess
|
|
4
|
+
import platform
|
|
5
|
+
|
|
6
|
+
def main():
|
|
7
|
+
# Detect Source Directory
|
|
8
|
+
base_dir = os.path.dirname(os.path.abspath(__file__))
|
|
9
|
+
bin_dir = os.path.join(base_dir, "bin")
|
|
10
|
+
|
|
11
|
+
# Detect OS
|
|
12
|
+
system = platform.system().lower()
|
|
13
|
+
|
|
14
|
+
binary_name = "sthenos"
|
|
15
|
+
if system == "windows":
|
|
16
|
+
binary_name = "sthenos.exe"
|
|
17
|
+
elif system == "linux":
|
|
18
|
+
binary_name = "sthenos-linux"
|
|
19
|
+
elif system == "darwin":
|
|
20
|
+
binary_name = "sthenos-mac"
|
|
21
|
+
else:
|
|
22
|
+
print(f"Warning: Unknown operating system '{system}'. Trying default 'sthenos' binary.")
|
|
23
|
+
|
|
24
|
+
binary_path = os.path.join(bin_dir, binary_name)
|
|
25
|
+
|
|
26
|
+
if not os.path.exists(binary_path):
|
|
27
|
+
print(f"Error: Sthenos binary not found at {binary_path}")
|
|
28
|
+
print("Please ensure the package was installed correctly.")
|
|
29
|
+
sys.exit(1)
|
|
30
|
+
|
|
31
|
+
# Forward arguments to the binary
|
|
32
|
+
# We use subprocess to hand over control
|
|
33
|
+
try:
|
|
34
|
+
# Pass all args except the first one (which is the script name 'sthenos')
|
|
35
|
+
cmd = [binary_path] + sys.argv[1:]
|
|
36
|
+
subprocess.call(cmd)
|
|
37
|
+
except KeyboardInterrupt:
|
|
38
|
+
pass
|
|
39
|
+
except Exception as e:
|
|
40
|
+
print(f"Error launching sthenos: {e}")
|
|
41
|
+
sys.exit(1)
|
|
42
|
+
|
|
43
|
+
if __name__ == "__main__":
|
|
44
|
+
main()
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: sthenos
|
|
3
|
+
Version: 0.1.0
|
|
4
|
+
Summary: A Python-scriptable load testing tool (Go binary wrapper)
|
|
5
|
+
Author-email: Aldo Richard Santillán Echevarría <richard.24.se@gmail.com>
|
|
6
|
+
License: MIT
|
|
7
|
+
Classifier: Programming Language :: Python :: 3
|
|
8
|
+
Classifier: Operating System :: OS Independent
|
|
9
|
+
Requires-Python: >=3.7
|
|
10
|
+
Description-Content-Type: text/markdown
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
pyproject.toml
|
|
2
|
+
setup.py
|
|
3
|
+
sthenos/__init__.py
|
|
4
|
+
sthenos/cli.py
|
|
5
|
+
sthenos.egg-info/PKG-INFO
|
|
6
|
+
sthenos.egg-info/SOURCES.txt
|
|
7
|
+
sthenos.egg-info/dependency_links.txt
|
|
8
|
+
sthenos.egg-info/entry_points.txt
|
|
9
|
+
sthenos.egg-info/top_level.txt
|
|
10
|
+
sthenos/bin/sthenos-linux
|
|
11
|
+
sthenos/bin/sthenos-mac
|
|
12
|
+
sthenos/bin/sthenos.exe
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
sthenos
|