@@ -72,6 +72,7 @@ class UploadState(str, Enum):
72
72
REPORTING = "REPORTING"
73
73
SUCCESS = "SUCCESS"
74
74
FAILED = "FAILED"
75
+ CANCELED = "CANCELED"
75
76
76
77
77
78
class Level (str , Enum ):
@@ -150,13 +151,14 @@ def log(self, level: Level, message: str) -> None:
150
151
self .stack .append (UploadReportEntry (level = level , message = message ))
151
152
self ._update_task (message )
152
153
153
- def final (self , archive_name ):
154
- if self .upload_state == UploadState .PROCESSING :
155
- self .upload_state = UploadState .SUCCESS
156
- message = f"{ archive_name } uploaded successfully."
154
+ def final (self , message , upload_state = None ):
155
+ if upload_state :
156
+ self .upload_state = upload_state
157
157
else :
158
- self .upload_state = UploadState .FAILED
159
- message = f"Uploading { archive_name } failed."
158
+ if self .upload_state == UploadState .PROCESSING :
159
+ self .upload_state = UploadState .SUCCESS
160
+ else :
161
+ self .upload_state = UploadState .FAILED
160
162
161
163
self .stack .append (UploadReportEntry (message = message ))
162
164
self ._update_task (self .json ())
@@ -167,6 +169,7 @@ def json(self):
167
169
def _update_task (self , message : str | list ) -> None :
168
170
if self .task :
169
171
try :
172
+ logger .debug ("taskstuff %s" , dir (self .task ))
170
173
self .task .update_state (
171
174
state = self .upload_state ,
172
175
meta = {
@@ -1134,7 +1137,9 @@ def process_metadata(
1134
1137
# moved this bit from init
1135
1138
self .target , target_created = Target .objects .get_or_create (
1136
1139
title = self .target_name ,
1137
- display_name = self .target_name ,
1140
+ defaults = {
1141
+ "display_name" : self .target_name ,
1142
+ },
1138
1143
)
1139
1144
1140
1145
# TODO: original target loader's function get_create_projects
@@ -1153,7 +1158,7 @@ def process_metadata(
1153
1158
# remove uploaded file
1154
1159
Path (self .bundle_path ).unlink ()
1155
1160
msg = f"{ self .bundle_name } already uploaded, skipping."
1156
- self .report .log ( Level . INFO , msg )
1161
+ self .report .final ( msg , upload_state = UploadState . CANCELED )
1157
1162
raise FileExistsError (msg )
1158
1163
1159
1164
if project_created and committer .pk == settings .ANONYMOUS_USER :
@@ -1596,7 +1601,7 @@ def load_target(
1596
1601
)
1597
1602
except IntegrityError as exc :
1598
1603
logger .error (exc , exc_info = True )
1599
- target_loader .report .final (target_loader .data_bundle )
1604
+ target_loader .report .final (f"Uploading { target_loader .data_bundle } failed" )
1600
1605
target_loader .experiment_upload .message = target_loader .report .json ()
1601
1606
raise IntegrityError from exc
1602
1607
@@ -1618,7 +1623,7 @@ def load_target(
1618
1623
1619
1624
set_directory_permissions (target_loader .abs_final_path , 0o755 )
1620
1625
1621
- target_loader .report .final (target_loader .data_bundle )
1626
+ target_loader .report .final (f" { target_loader .data_bundle } uploaded successfully" )
1622
1627
target_loader .experiment_upload .message = target_loader .report .json ()
1623
1628
1624
1629
# logger.debug("%s", upload_report)
0 commit comments