Compare commits

...

1 Commits

Author SHA1 Message Date
Gergő Jedlicska d4513d75f9 feat(automate): application ids in result metadata 2025-02-28 19:04:05 +01:00
2 changed files with 17 additions and 14 deletions
+16 -13
View File
@@ -332,7 +332,7 @@ class AutomationContext:
def attach_error_to_objects( def attach_error_to_objects(
self, self,
category: str, category: str,
object_ids: Union[str, List[str]], objects: Union[Base, List[Base]],
message: Optional[str] = None, message: Optional[str] = None,
metadata: Optional[Dict[str, Any]] = None, metadata: Optional[Dict[str, Any]] = None,
visual_overrides: Optional[Dict[str, Any]] = None, visual_overrides: Optional[Dict[str, Any]] = None,
@@ -351,7 +351,7 @@ class AutomationContext:
self.attach_result_to_objects( self.attach_result_to_objects(
ObjectResultLevel.ERROR, ObjectResultLevel.ERROR,
category, category,
object_ids, objects,
message, message,
metadata, metadata,
visual_overrides, visual_overrides,
@@ -360,7 +360,7 @@ class AutomationContext:
def attach_warning_to_objects( def attach_warning_to_objects(
self, self,
category: str, category: str,
object_ids: Union[str, List[str]], objects: Union[Base, List[Base]],
message: Optional[str] = None, message: Optional[str] = None,
metadata: Optional[Dict[str, Any]] = None, metadata: Optional[Dict[str, Any]] = None,
visual_overrides: Optional[Dict[str, Any]] = None, visual_overrides: Optional[Dict[str, Any]] = None,
@@ -369,7 +369,7 @@ class AutomationContext:
self.attach_result_to_objects( self.attach_result_to_objects(
ObjectResultLevel.WARNING, ObjectResultLevel.WARNING,
category, category,
object_ids, objects,
message, message,
metadata, metadata,
visual_overrides, visual_overrides,
@@ -378,7 +378,7 @@ class AutomationContext:
def attach_success_to_objects( def attach_success_to_objects(
self, self,
category: str, category: str,
object_ids: Union[str, List[str]], objects: Union[Base, List[Base]],
message: Optional[str] = None, message: Optional[str] = None,
metadata: Optional[Dict[str, Any]] = None, metadata: Optional[Dict[str, Any]] = None,
visual_overrides: Optional[Dict[str, Any]] = None, visual_overrides: Optional[Dict[str, Any]] = None,
@@ -387,7 +387,7 @@ class AutomationContext:
self.attach_result_to_objects( self.attach_result_to_objects(
ObjectResultLevel.SUCCESS, ObjectResultLevel.SUCCESS,
category, category,
object_ids, objects,
message, message,
metadata, metadata,
visual_overrides, visual_overrides,
@@ -396,7 +396,7 @@ class AutomationContext:
def attach_info_to_objects( def attach_info_to_objects(
self, self,
category: str, category: str,
object_ids: Union[str, List[str]], objects: Union[Base, List[Base]],
message: Optional[str] = None, message: Optional[str] = None,
metadata: Optional[Dict[str, Any]] = None, metadata: Optional[Dict[str, Any]] = None,
visual_overrides: Optional[Dict[str, Any]] = None, visual_overrides: Optional[Dict[str, Any]] = None,
@@ -405,7 +405,7 @@ class AutomationContext:
self.attach_result_to_objects( self.attach_result_to_objects(
ObjectResultLevel.INFO, ObjectResultLevel.INFO,
category, category,
object_ids, objects,
message, message,
metadata, metadata,
visual_overrides, visual_overrides,
@@ -415,19 +415,22 @@ class AutomationContext:
self, self,
level: ObjectResultLevel, level: ObjectResultLevel,
category: str, category: str,
object_ids: Union[str, List[str]], objects: Union[Base, List[Base]],
message: Optional[str] = None, message: Optional[str] = None,
metadata: Optional[Dict[str, Any]] = None, metadata: Optional[Dict[str, Any]] = None,
visual_overrides: Optional[Dict[str, Any]] = None, visual_overrides: Optional[Dict[str, Any]] = None,
) -> None: ) -> None:
if isinstance(object_ids, list): if isinstance(objects, list):
if len(object_ids) < 1: if len(objects) < 1:
raise ValueError( raise ValueError(
f"Need atleast one object_id to report a(n) {level.value.upper()}" f"Need atleast one object_id to report a(n) {level.value.upper()}"
) )
id_list = object_ids id_list = [o.id for o in objects]
application_ids = [o.applicationId for o in objects]
else: else:
id_list = [object_ids] id_list = [objects.id]
application_ids = [objects.applicationId]
metadata["applicationIds"] = application_ids
print( print(
f"Created new {level.value.upper()}" f"Created new {level.value.upper()}"
f" category: {category} caused by: {message}" f" category: {category} caused by: {message}"
@@ -133,7 +133,7 @@ def automate_function(
raise ValueError("Cannot operate on objects without their id's.") raise ValueError("Cannot operate on objects without their id's.")
automation_context.attach_error_to_objects( automation_context.attach_error_to_objects(
"Forbidden speckle_type", "Forbidden speckle_type",
version_root_object.id, version_root_object,
"This project should not contain the type: " "This project should not contain the type: "
f"{function_inputs.forbidden_speckle_type}", f"{function_inputs.forbidden_speckle_type}",
) )