Skip to content

Commit 35c763f

Browse files
committed
include commithash in failures and check if still on failing commit
1 parent 22cbf2d commit 35c763f

File tree

3 files changed

+15
-4
lines changed

3 files changed

+15
-4
lines changed

bin/lib/fortran_library_builder.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -491,6 +491,7 @@ def save_build_logging(self, builtok, buildfolder, extralogtext):
491491

492492
buildparameters_copy = self.current_buildparameters_obj.copy()
493493
buildparameters_copy["logging"] = logging_data + "\n\n" + extralogtext
494+
buildparameters_copy["commithash"] = self.get_commit_hash()
494495

495496
headers = {"Content-Type": "application/json", "Authorization": "Bearer " + self.conanserverproxy_token}
496497

@@ -528,13 +529,17 @@ def get_commit_hash(self) -> str:
528529
return self.target_name
529530

530531
def has_failed_before(self):
531-
url = f"{conanserver_url}/hasfailedbefore"
532+
url = f"{conanserver_url}/whathasfailedbefore"
532533
request = self.resil_post(url, json_data=json.dumps(self.current_buildparameters_obj))
533534
if not request.ok:
534535
raise RuntimeError(f"Post failure for {url}: {request}")
535536
else:
536537
response = json.loads(request.content)
537-
return response["response"]
538+
current_commit = self.get_commit_hash()
539+
if response["response"]["commithash"] == current_commit:
540+
return response["response"]["failedbefore"]
541+
else:
542+
return False
538543

539544
def is_already_uploaded(self, buildfolder):
540545
annotations = self.get_build_annotations(buildfolder)

bin/lib/library_builder.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -740,6 +740,7 @@ def save_build_logging(self, builtok, buildfolder, extralogtext):
740740

741741
buildparameters_copy = self.current_buildparameters_obj.copy()
742742
buildparameters_copy["logging"] = logging_data + "\n\n" + extralogtext
743+
buildparameters_copy["commithash"] = self.get_commit_hash()
743744

744745
headers = {"Content-Type": "application/json", "Authorization": "Bearer " + self.conanserverproxy_token}
745746

@@ -777,13 +778,17 @@ def get_commit_hash(self) -> str:
777778
return self.target_name
778779

779780
def has_failed_before(self):
780-
url = f"{conanserver_url}/hasfailedbefore"
781+
url = f"{conanserver_url}/whathasfailedbefore"
781782
request = self.resil_post(url, json_data=json.dumps(self.current_buildparameters_obj))
782783
if not request.ok:
783784
raise RuntimeError(f"Post failure for {url}: {request}")
784785
else:
785786
response = json.loads(request.content)
786-
return response["response"]
787+
current_commit = self.get_commit_hash()
788+
if response["response"]["commithash"] == current_commit:
789+
return response["response"]["failedbefore"]
790+
else:
791+
return False
787792

788793
def is_already_uploaded(self, buildfolder):
789794
annotations = self.get_build_annotations(buildfolder)

bin/lib/rust_library_builder.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -323,6 +323,7 @@ def save_build_logging(self, builtok, logfolder, source_folder, build_method):
323323

324324
buildparameters_copy = self.current_buildparameters_obj.copy()
325325
buildparameters_copy["logging"] = logging_data
326+
buildparameters_copy["commithash"] = self.get_commit_hash()
326327

327328
if builtok != BuildStatus.Ok:
328329
buildparameters_copy["flagcollection"] = build_method["build_method"]

0 commit comments

Comments
 (0)