in report/firefox_code_coverage/codecoverage.py [0:0]
def generate_report(grcov_path, output_format, src_dir, output_path, artifact_paths):
mod_env = os.environ.copy()
if is_taskcluster_loaner():
one_click_loaner_gcc = "/home/worker/workspace/build/src/gcc/bin"
i = 0
while (
not os.path.isdir(one_click_loaner_gcc)
or len(os.listdir(one_click_loaner_gcc)) == 0
):
print("Waiting one-click loaner to be ready... " + str(i))
i += 1
time.sleep(60)
mod_env["PATH"] = one_click_loaner_gcc + ":" + mod_env["PATH"]
cmd = [
grcov_path,
"-t",
output_format,
"-o",
output_path,
]
if src_dir is not None:
cmd += ["-s", src_dir, "--ignore-not-existing"]
if output_format in ["coveralls", "coveralls+"]:
cmd += ["--token", "UNUSED", "--commit-sha", "UNUSED"]
cmd.extend(artifact_paths)
proc = subprocess.Popen(cmd, stderr=subprocess.PIPE, env=mod_env)
i = 0
while proc.poll() is None:
if i % 60 == 0:
sys.stdout.write("\rRunning grcov... {} seconds".format(i))
sys.stdout.flush()
i += 1
time.sleep(1)
print("")
if proc.poll() != 0:
raise Exception("Error while running grcov: {}\n".format(proc.stderr.read()))