@@ -386,7 +386,7 @@ def get_cached_job(job_name: str) -> dict:
386386 return workflow_config ["cache_jobs" ].get (job_name , {})
387387
388388
389- def get_cves (pr_number , commit_sha ):
389+ def get_cves (pr_number , commit_sha , branch ):
390390 """
391391 Fetch Grype results from S3.
392392
@@ -395,19 +395,33 @@ def get_cves(pr_number, commit_sha):
395395 s3_client = boto3 .client ("s3" , endpoint_url = os .getenv ("S3_URL" ))
396396 prefixes_to_check = set ()
397397
398+ def format_prefix (pr_number , commit_sha , branch ):
399+ if pr_number == 0 :
400+ return f"REFs/{ branch } /{ commit_sha } /grype/"
401+ else :
402+ return f"PRs/{ pr_number } /{ commit_sha } /grype/"
403+
398404 cached_server_job = get_cached_job ("Docker server image" )
399405 if cached_server_job :
400406 prefixes_to_check .add (
401- f"{ cached_server_job ['pr_number' ]} /{ cached_server_job ['sha' ]} /grype/"
407+ format_prefix (
408+ cached_server_job ["pr_number" ],
409+ cached_server_job ["sha" ],
410+ cached_server_job ["branch" ],
411+ )
402412 )
403413 cached_keeper_job = get_cached_job ("Docker keeper image" )
404414 if cached_keeper_job :
405415 prefixes_to_check .add (
406- f"{ cached_keeper_job ['pr_number' ]} /{ cached_keeper_job ['sha' ]} /grype/"
416+ format_prefix (
417+ cached_keeper_job ["pr_number" ],
418+ cached_keeper_job ["sha" ],
419+ cached_keeper_job ["branch" ],
420+ )
407421 )
408422
409423 if not prefixes_to_check :
410- prefixes_to_check = {f" { pr_number } / { commit_sha } /grype/" }
424+ prefixes_to_check = {format_prefix ( pr_number , commit_sha , branch ) }
411425
412426 grype_result_dirs = []
413427 for s3_prefix in prefixes_to_check :
@@ -690,7 +704,7 @@ def create_workflow_report(
690704 "checks_errors" : get_checks_errors (db_client , commit_sha , branch_name ),
691705 "regression_fails" : get_regression_fails (db_client , actions_run_url ),
692706 "docker_images_cves" : (
693- [] if not check_cves else get_cves (pr_number , commit_sha )
707+ [] if not check_cves else get_cves (pr_number , commit_sha , branch_name )
694708 ),
695709 }
696710
@@ -809,7 +823,10 @@ def create_workflow_report(
809823 print (f"Report saved to { report_path } " )
810824 exit (0 )
811825
812- report_destination_key = f"{ pr_number } /{ commit_sha } /{ report_name } "
826+ if pr_number == 0 :
827+ report_destination_key = f"REFs/{ branch_name } /{ commit_sha } /{ report_name } "
828+ else :
829+ report_destination_key = f"PRs/{ pr_number } /{ commit_sha } /{ report_name } "
813830
814831 # Upload the report to S3
815832 s3_client = boto3 .client ("s3" , endpoint_url = os .getenv ("S3_URL" ))
0 commit comments