sideloader 2.2.0__py3-none-any.whl → 2.3.2__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.
- sideloader/cli.py +7 -0
- {sideloader-2.2.0.dist-info → sideloader-2.3.2.dist-info}/METADATA +30 -6
- {sideloader-2.2.0.dist-info → sideloader-2.3.2.dist-info}/RECORD +5 -5
- {sideloader-2.2.0.dist-info → sideloader-2.3.2.dist-info}/WHEEL +0 -0
- {sideloader-2.2.0.dist-info → sideloader-2.3.2.dist-info}/entry_points.txt +0 -0
sideloader/cli.py
CHANGED
|
@@ -41,6 +41,7 @@ class SideloadClient:
|
|
|
41
41
|
key_type: str = "master",
|
|
42
42
|
hookdeck_source_id: str | None = None,
|
|
43
43
|
hookdeck_api_key: str | None = None,
|
|
44
|
+
hookdeck_verify_ssl: bool = True,
|
|
44
45
|
):
|
|
45
46
|
self.collection_id = collection_id
|
|
46
47
|
self.connector = JSONBinConnector(
|
|
@@ -49,6 +50,7 @@ class SideloadClient:
|
|
|
49
50
|
self.manager = SideloadBinManager(self.connector)
|
|
50
51
|
self.hookdeck_source_id = hookdeck_source_id
|
|
51
52
|
self.hookdeck_api_key = hookdeck_api_key
|
|
53
|
+
self.hookdeck_verify_ssl = hookdeck_verify_ssl
|
|
52
54
|
|
|
53
55
|
def __enter__(self):
|
|
54
56
|
return self
|
|
@@ -68,6 +70,7 @@ class SideloadClient:
|
|
|
68
70
|
headers={"x-hookdeck-source-id": self.hookdeck_source_id},
|
|
69
71
|
auth=(self.hookdeck_api_key, ""),
|
|
70
72
|
json={"request_id": bin_id, "event_type": event_type},
|
|
73
|
+
verify=self.hookdeck_verify_ssl,
|
|
71
74
|
)
|
|
72
75
|
response.raise_for_status()
|
|
73
76
|
console.print(
|
|
@@ -794,6 +797,9 @@ Examples:
|
|
|
794
797
|
hookdeck_api_key = getattr(args, "hookdeck_api_key", None) or os.environ.get(
|
|
795
798
|
"HOOKDECK_API_KEY"
|
|
796
799
|
)
|
|
800
|
+
hookdeck_verify_ssl = os.environ.get("HOOKDECK_VERIFY_SSL", "true").lower() in (
|
|
801
|
+
"true", "1", "yes"
|
|
802
|
+
)
|
|
797
803
|
|
|
798
804
|
try:
|
|
799
805
|
with SideloadClient(
|
|
@@ -803,6 +809,7 @@ Examples:
|
|
|
803
809
|
key_type,
|
|
804
810
|
hookdeck_source_id,
|
|
805
811
|
hookdeck_api_key,
|
|
812
|
+
hookdeck_verify_ssl,
|
|
806
813
|
) as client:
|
|
807
814
|
if args.resume:
|
|
808
815
|
# Resume an existing request
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: sideloader
|
|
3
|
-
Version: 2.2
|
|
3
|
+
Version: 2.3.2
|
|
4
4
|
Summary: Download large files via PyPI packages
|
|
5
5
|
Author: Null Void
|
|
6
6
|
Author-email: Null Void <nullvoid@nullvoid.com>
|
|
@@ -123,16 +123,40 @@ export JSONBIN_TOKEN="your_token"
|
|
|
123
123
|
export PYPI_TOKEN="your_pypi_token"
|
|
124
124
|
|
|
125
125
|
# Run the server
|
|
126
|
-
uv run python src/
|
|
126
|
+
uv run python src/sideloader/main.py
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### Kubernetes Deployment
|
|
130
|
+
|
|
131
|
+
Before installing the Helm chart, create the required secret in your namespace:
|
|
132
|
+
|
|
133
|
+
```bash
|
|
134
|
+
kubectl create secret generic sideload-secrets \
|
|
135
|
+
--namespace <namespace> \
|
|
136
|
+
--from-literal=jsonbin-token="YOUR_JSONBIN_TOKEN" \
|
|
137
|
+
--from-literal=pypi-token="YOUR_PYPI_TOKEN" \
|
|
138
|
+
--from-literal=pypi-user="YOUR_PYPI_USERNAME" \
|
|
139
|
+
--from-literal=pypi-password="YOUR_PYPI_PASSWORD" \
|
|
140
|
+
--from-literal=pypi-totp="YOUR_PYPI_TOTP_SECRET" # optional, omit if not using TOTP
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
Then install the chart:
|
|
144
|
+
|
|
145
|
+
```bash
|
|
146
|
+
helm install sideload ./helm --namespace <namespace>
|
|
127
147
|
```
|
|
128
148
|
|
|
129
149
|
### Project Structure
|
|
130
150
|
|
|
131
151
|
```
|
|
132
|
-
src/
|
|
133
|
-
├── __init__.py
|
|
134
|
-
├──
|
|
135
|
-
|
|
152
|
+
src/sideloader/
|
|
153
|
+
├── __init__.py # Package initialization
|
|
154
|
+
├── cli.py # CLI client
|
|
155
|
+
├── server.py # Server component
|
|
156
|
+
├── jsonbin_connector.py # JSONBin API wrapper
|
|
157
|
+
├── pypi_cleanup.py # PyPI package deletion via Playwright
|
|
158
|
+
└── scripts/
|
|
159
|
+
└── cleanup_pypi.py # Admin script to delete all sideload packages
|
|
136
160
|
```
|
|
137
161
|
|
|
138
162
|
## License
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
sideloader/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
-
sideloader/cli.py,sha256=
|
|
2
|
+
sideloader/cli.py,sha256=Qh5qrI-vccTdKSjuJAM_fPU8lO8C-SaLlFC3Gib35Oc,38540
|
|
3
3
|
sideloader/jsonbin_connector.py,sha256=rgaynojjVT3zK-me_IGssWMDt43w98IOnH8yLBX_HOk,10014
|
|
4
4
|
sideloader/pypi_cleanup.py,sha256=hDscgtn8voCgNSSiiVq7vWtCuWve1OlJ0slhmSe1tYs,7390
|
|
5
5
|
sideloader/scripts/cleanup_pypi.py,sha256=_70DnlUpSe6_3dv7t9eVLAjW6gLWDlqePDysI9gqalQ,3714
|
|
6
6
|
sideloader/server.py,sha256=FyhcaX87PpXSMcEOlhxrclRMmwx3D1SMt6tyLy-bMQI,14348
|
|
7
|
-
sideloader-2.2.
|
|
8
|
-
sideloader-2.2.
|
|
9
|
-
sideloader-2.2.
|
|
10
|
-
sideloader-2.2.
|
|
7
|
+
sideloader-2.3.2.dist-info/WHEEL,sha256=Jb20R3Ili4n9P1fcwuLup21eQ5r9WXhs4_qy7VTrgPI,79
|
|
8
|
+
sideloader-2.3.2.dist-info/entry_points.txt,sha256=XIfbsCo-UMQvQwAuocZo7d7o9YMJ6yNy1P2sK5OeGA0,106
|
|
9
|
+
sideloader-2.3.2.dist-info/METADATA,sha256=AWvUuJ-brA9fYroxLd3OwrI3joafQZodk_jzZZledrI,5126
|
|
10
|
+
sideloader-2.3.2.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|