spaceforge 0.0.6__py3-none-any.whl → 0.0.8__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.
- spaceforge/_version_scm.py +2 -2
- spaceforge/generator.py +2 -1
- spaceforge/plugin.py +34 -19
- {spaceforge-0.0.6.dist-info → spaceforge-0.0.8.dist-info}/METADATA +1 -1
- {spaceforge-0.0.6.dist-info → spaceforge-0.0.8.dist-info}/RECORD +9 -9
- {spaceforge-0.0.6.dist-info → spaceforge-0.0.8.dist-info}/WHEEL +0 -0
- {spaceforge-0.0.6.dist-info → spaceforge-0.0.8.dist-info}/entry_points.txt +0 -0
- {spaceforge-0.0.6.dist-info → spaceforge-0.0.8.dist-info}/licenses/LICENSE +0 -0
- {spaceforge-0.0.6.dist-info → spaceforge-0.0.8.dist-info}/top_level.txt +0 -0
spaceforge/_version_scm.py
CHANGED
|
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
|
|
|
28
28
|
commit_id: COMMIT_ID
|
|
29
29
|
__commit_id__: COMMIT_ID
|
|
30
30
|
|
|
31
|
-
__version__ = version = '0.0.
|
|
32
|
-
__version_tuple__ = version_tuple = (0, 0,
|
|
31
|
+
__version__ = version = '0.0.8'
|
|
32
|
+
__version_tuple__ = version_tuple = (0, 0, 8)
|
|
33
33
|
|
|
34
34
|
__commit_id__ = commit_id = None
|
spaceforge/generator.py
CHANGED
|
@@ -84,7 +84,8 @@ class PluginGenerator:
|
|
|
84
84
|
self.plugin_class = plugin_class
|
|
85
85
|
self.plugin_instance = plugin_class()
|
|
86
86
|
self.plugin_working_directory = (
|
|
87
|
-
"/mnt/workspace/plugins/"
|
|
87
|
+
"/mnt/workspace/plugins/"
|
|
88
|
+
+ plugin_class.__plugin_name__.lower().replace(" ", "_")
|
|
88
89
|
)
|
|
89
90
|
self.config = {
|
|
90
91
|
"setup_virtual_env": (
|
spaceforge/plugin.py
CHANGED
|
@@ -8,6 +8,7 @@ import logging
|
|
|
8
8
|
import os
|
|
9
9
|
import subprocess
|
|
10
10
|
import urllib.request
|
|
11
|
+
from urllib.error import HTTPError
|
|
11
12
|
from abc import ABC
|
|
12
13
|
from typing import Any, Dict, List, Optional, Tuple
|
|
13
14
|
|
|
@@ -48,14 +49,14 @@ class SpaceforgePlugin(ABC):
|
|
|
48
49
|
if self.spacelift_domain and isinstance(self.spacelift_domain, str):
|
|
49
50
|
# this must occur after we check if spacelift domain is false
|
|
50
51
|
# because the domain could be set but not start with https://
|
|
51
|
-
if self.spacelift_domain.startswith("https://"):
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
else:
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
52
|
+
# if self.spacelift_domain.startswith("https://"):
|
|
53
|
+
# if self.spacelift_domain.endswith("/"):
|
|
54
|
+
# self.spacelift_domain = self.spacelift_domain[:-1]
|
|
55
|
+
# else:
|
|
56
|
+
# self.logger.warning(
|
|
57
|
+
# "SPACELIFT_DOMAIN does not start with https://, api calls will fail."
|
|
58
|
+
# )
|
|
59
|
+
# self._api_enabled = False
|
|
59
60
|
|
|
60
61
|
if self._api_enabled:
|
|
61
62
|
self._spacelift_markdown_endpoint = self.spacelift_domain.replace(
|
|
@@ -204,8 +205,17 @@ class SpaceforgePlugin(ABC):
|
|
|
204
205
|
json.dumps(data).encode("utf-8"),
|
|
205
206
|
headers,
|
|
206
207
|
)
|
|
207
|
-
|
|
208
|
-
|
|
208
|
+
|
|
209
|
+
try:
|
|
210
|
+
with urllib.request.urlopen(req) as response:
|
|
211
|
+
resp: Dict[str, Any] = json.loads(response.read().decode("utf-8"))
|
|
212
|
+
except urllib.error.HTTPError as e:
|
|
213
|
+
if hasattr(e, 'read'):
|
|
214
|
+
resp = json.loads(e.read().decode('utf-8'))
|
|
215
|
+
else:
|
|
216
|
+
# We should not get here, but if we do re-raise the exception
|
|
217
|
+
self.logger.error(f"HTTP error occurred: ({e.code}) {e.reason} {e.msg}")
|
|
218
|
+
raise e
|
|
209
219
|
|
|
210
220
|
if "errors" in resp:
|
|
211
221
|
self.logger.error(f"Error: {resp['errors']}")
|
|
@@ -287,8 +297,8 @@ class SpaceforgePlugin(ABC):
|
|
|
287
297
|
headers = resp["headers"]
|
|
288
298
|
headers["Content-Type"] = "text/markdown"
|
|
289
299
|
headers["Content-Length"] = str(len(markdown))
|
|
290
|
-
except
|
|
291
|
-
self.logger.error(f"HTTP error occurred: {e.code}
|
|
300
|
+
except HTTPError as e:
|
|
301
|
+
self.logger.error(f"HTTP error occurred: ({e.code}) {e.reason} {e.msg}")
|
|
292
302
|
return False
|
|
293
303
|
|
|
294
304
|
# Now we upload the markdown content to the signed URL
|
|
@@ -299,13 +309,18 @@ class SpaceforgePlugin(ABC):
|
|
|
299
309
|
method="PUT",
|
|
300
310
|
)
|
|
301
311
|
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
312
|
+
try:
|
|
313
|
+
with urllib.request.urlopen(req) as put_response:
|
|
314
|
+
if put_response.status != 200:
|
|
315
|
+
self.logger.error(
|
|
316
|
+
f"Error uploading markdown content: {put_response.status}"
|
|
317
|
+
)
|
|
318
|
+
return False
|
|
319
|
+
self.logger.debug("Markdown content uploaded successfully.")
|
|
320
|
+
except HTTPError as e:
|
|
321
|
+
self.logger.error(f"HTTP error occurred during upload: ({e.code}) {e.reason} {e.msg}")
|
|
322
|
+
return False
|
|
323
|
+
|
|
309
324
|
return True
|
|
310
325
|
|
|
311
326
|
def add_to_policy_input(self, input_name: str, data: Dict[str, Any]) -> None:
|
|
@@ -2,11 +2,11 @@ spaceforge/README.md,sha256=8o1Nuyasb4OxX3E7ZycyducOrR4J19bZcHrLvFeoFNg,7730
|
|
|
2
2
|
spaceforge/__init__.py,sha256=TU-vvm15dK1ucixNW0V42eTT72x3_hmKSyxP4MC1Occ,589
|
|
3
3
|
spaceforge/__main__.py,sha256=c3nAw4WBnHXIcfMlRV6Ja7r87pEhSeK-SAqiSYIasIY,643
|
|
4
4
|
spaceforge/_version.py,sha256=RP_LfUd4ODnrfwn9nam8wB6bR3lM4VwmoRxK08Tkiiw,2155
|
|
5
|
-
spaceforge/_version_scm.py,sha256=
|
|
5
|
+
spaceforge/_version_scm.py,sha256=j-ar4gJGiWIawqKXhvv9hGJWLfwu0tISl-0GV97B7a0,704
|
|
6
6
|
spaceforge/cls.py,sha256=lCGtlMv-rFFVnvfFaq36-GRqLiINswLD78amZigZo7I,6068
|
|
7
7
|
spaceforge/conftest.py,sha256=U-xCavCsgRAQXqflIIOMeq9pcGbeqRviUNkEXgZol8g,2141
|
|
8
|
-
spaceforge/generator.py,sha256
|
|
9
|
-
spaceforge/plugin.py,sha256
|
|
8
|
+
spaceforge/generator.py,sha256=7tt0zpqrD2pZsoVxQa0BfzBH1ZtGr6o3r_LmpBjrOJk,16739
|
|
9
|
+
spaceforge/plugin.py,sha256=-T52w2akah5ebCTvjEEvbEf_b35zuMUgeTr-9BGNX90,13933
|
|
10
10
|
spaceforge/runner.py,sha256=aBQQLG8MFVrqCzM0X8HgERYbhLKbmlOHUPKjV7-xvpA,3163
|
|
11
11
|
spaceforge/schema.json,sha256=scQyV71IlbB5kipAhc880n-PG-FH8BeVk9FWFoA3Wtw,10483
|
|
12
12
|
spaceforge/test_cls.py,sha256=nXAgbnFnGdFxrtA7vNXiePjNUASuoYW-lEuQGx9WMGs,468
|
|
@@ -25,9 +25,9 @@ spaceforge/test_runner_core.py,sha256=eNR9YOwJwv7LsMtNQ4WXXMPIW6RE_A7hUp4bCpzz1R
|
|
|
25
25
|
spaceforge/test_runner_execution.py,sha256=BRlOApCmlpjE9YYvqHc8creSRu2vyPubzOCVXv-on0w,5335
|
|
26
26
|
spaceforge/templates/binary_install.sh.j2,sha256=UjP_kAdvkkATKds2nqk4ouqLhuIfCgM_x0WQIl1hbIo,477
|
|
27
27
|
spaceforge/templates/ensure_spaceforge_and_run.sh.j2,sha256=g5BldIEve0IkZ-mCzTXfB_rFvyWqUJqymRRaaMrpp0s,550
|
|
28
|
-
spaceforge-0.0.
|
|
29
|
-
spaceforge-0.0.
|
|
30
|
-
spaceforge-0.0.
|
|
31
|
-
spaceforge-0.0.
|
|
32
|
-
spaceforge-0.0.
|
|
33
|
-
spaceforge-0.0.
|
|
28
|
+
spaceforge-0.0.8.dist-info/licenses/LICENSE,sha256=wyljRrfnWY2ggQKkSCg3Nw2hxwPMmupopaKs9Kpgys8,1065
|
|
29
|
+
spaceforge-0.0.8.dist-info/METADATA,sha256=7as3acsLiULbIUuK11a6lpeQt5K2DmeGiR8WRdxlYEI,16803
|
|
30
|
+
spaceforge-0.0.8.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
31
|
+
spaceforge-0.0.8.dist-info/entry_points.txt,sha256=qawuuKBSNTGg-njnQnhxxFldFvXYAPej6bF_f3iyQ48,56
|
|
32
|
+
spaceforge-0.0.8.dist-info/top_level.txt,sha256=eVw-Lw4Th0oHM8Gx1Y8YetyNgbNbMBU00yWs-kwGeSs,11
|
|
33
|
+
spaceforge-0.0.8.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|