Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 9 additions & 4 deletions scripts/plinth-certifier-tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -173,15 +173,20 @@ def cmd_build(args: argparse.Namespace) -> int:

cert_dir.mkdir(parents=True, exist_ok=True)

print("--- cabal update ---")
update = subprocess.run(["cabal", "update"])
if update.returncode != 0:
die(f"cabal update failed (exit code {update.returncode})")
print()

print(f"--- cabal build {' '.join(targets)} ---")
result = subprocess.run(
["cabal", "build", *targets,
f"--ghc-options=\"-fplugin-opt=Plinth.Plugin:certify={cert_dir}\""],
)

if result.returncode != 0:
print(f"WARNING: cabal build exited with code {result.returncode}", file=sys.stderr)
print("Continuing to check any certificates that were produced...", file=sys.stderr)
die(f"cabal build failed (exit code {result.returncode})")
print()
return result.returncode

Expand Down Expand Up @@ -434,8 +439,8 @@ def cmd_run(args: argparse.Namespace) -> int:
clean=args.clean,
targets=args.targets,
)
build_rc = cmd_build(build_ns)
# Continue even if build had warnings
# cmd_build aborts the script (via die) if cabal update or cabal build fails
cmd_build(build_ns)

# Check phase
check_ns = argparse.Namespace(
Expand Down
Loading