mirror of
https://github.com/dashpay/dash.git
synced 2024-12-26 12:32:48 +01:00
2fa480a878
excluded: - f26a496dfd0a7ce3833a10075027d7d5b0345e32 (change in glob pattern) We still have shell scripts that end in `.sh`, so we can't restrict the glob to only cover files that end in `.py`.
37 lines
1.1 KiB
Python
Executable File
37 lines
1.1 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
#
|
|
# Copyright (c) 2017-2022 The Bitcoin Core developers
|
|
# Distributed under the MIT software license, see the accompanying
|
|
# file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|
#
|
|
# This script runs all test/lint/lint-* files, and fails if any exit
|
|
# with a non-zero status code.
|
|
|
|
from glob import glob
|
|
from os import path as os_path, remove
|
|
from pathlib import Path
|
|
from shutil import which
|
|
from subprocess import run
|
|
|
|
exit_code = 0
|
|
mod_path = Path(__file__).parent
|
|
lints = glob(f"{mod_path}/lint-*")
|
|
if which("parallel") and which("column"):
|
|
logfile = "parallel_out.log"
|
|
command = ["parallel", "--jobs", "100%", "--will-cite", "--joblog", logfile, ":::"] + lints
|
|
result = run(command)
|
|
if result.returncode != 0:
|
|
print(f"^---- failure generated")
|
|
exit_code = result.returncode
|
|
result = run(["column", "-t", logfile])
|
|
if os_path.isfile(logfile):
|
|
remove(logfile)
|
|
else:
|
|
for lint in lints:
|
|
result = run([lint])
|
|
if result.returncode != 0:
|
|
print(f"^---- failure generated from {lint.split('/')[-1]}")
|
|
exit_code |= result.returncode
|
|
|
|
exit(exit_code)
|