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 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.0
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/sideload/main.py
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/sideload/
133
- ├── __init__.py # Package initialization
134
- ├── main.py # Server component
135
- └── cli.py # CLI client
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=RTJxHC7X5v_s8Nqcw1d52ThA6u_DmZ0APjMlqCK-i9A,38227
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.0.dist-info/WHEEL,sha256=Jb20R3Ili4n9P1fcwuLup21eQ5r9WXhs4_qy7VTrgPI,79
8
- sideloader-2.2.0.dist-info/entry_points.txt,sha256=XIfbsCo-UMQvQwAuocZo7d7o9YMJ6yNy1P2sK5OeGA0,106
9
- sideloader-2.2.0.dist-info/METADATA,sha256=QmlpmYX6eeASmRa9sv9VptkDbY3M0QAGbrzMDgA4MwM,4299
10
- sideloader-2.2.0.dist-info/RECORD,,
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,,