mirror of
https://pagure.io/fedora-qa/createhdds.git
synced 2024-11-25 08:13:07 +00:00
CLI commands should exit-fail if no jobs scheduled
Summary: Have the backing functions always raise TriggerExceptions if no jobs could be scheduled, and have the CLI command functions just quit (with exit code 1) immediately when this happens. I don't see any value to logging the errors and continuing to run, nothing useful is going to happen with no jobs. This allows us to have the 'current' cronjob run the compose report: we just have it do: openqa_trigger.py current && check-compose then it won't generate a compose report every time it runs, but only when the current compose changed and some jobs ran. Test Plan: Well, just make sure things quit or run as intended, I guess. Reviewers: jskladan, garretraziel Reviewed By: garretraziel Differential Revision: https://phab.qadevel.cloud.fedoraproject.org/D541
This commit is contained in:
parent
0396d70de0
commit
2c09f465e1
@ -119,7 +119,9 @@ def jobs_from_current(wiki, client):
|
|||||||
|
|
||||||
jobs = []
|
jobs = []
|
||||||
|
|
||||||
try:
|
if not runarches:
|
||||||
|
raise TriggerException("Skipped all arches, nothing to do.")
|
||||||
|
|
||||||
jobs = jobs_from_fedfind(currev.ff_release, client, runarches)
|
jobs = jobs_from_fedfind(currev.ff_release, client, runarches)
|
||||||
logging.info("planned jobs: %s", ' '.join(str(j) for j in jobs))
|
logging.info("planned jobs: %s", ' '.join(str(j) for j in jobs))
|
||||||
|
|
||||||
@ -128,8 +130,6 @@ def jobs_from_current(wiki, client):
|
|||||||
f.write(json.dumps(json_parsed))
|
f.write(json.dumps(json_parsed))
|
||||||
f.close()
|
f.close()
|
||||||
logging.debug("written info about newest version")
|
logging.debug("written info about newest version")
|
||||||
except TriggerException as e:
|
|
||||||
logging.error("cannot run jobs: %s", e)
|
|
||||||
|
|
||||||
return jobs
|
return jobs
|
||||||
|
|
||||||
@ -210,7 +210,11 @@ def run_current(args, client, wiki):
|
|||||||
not already done it.
|
not already done it.
|
||||||
"""
|
"""
|
||||||
logging.info("running on current release")
|
logging.info("running on current release")
|
||||||
|
try:
|
||||||
jobs = jobs_from_current(wiki, client)
|
jobs = jobs_from_current(wiki, client)
|
||||||
|
except TriggerException as e:
|
||||||
|
logging.debug("No jobs run: %s", e)
|
||||||
|
sys.exit(1)
|
||||||
# wait for jobs to finish and display results
|
# wait for jobs to finish and display results
|
||||||
if jobs:
|
if jobs:
|
||||||
logging.info("waiting for jobs: %s", ' '.join(str(j) for j in jobs))
|
logging.info("waiting for jobs: %s", ' '.join(str(j) for j in jobs))
|
||||||
@ -260,7 +264,8 @@ def run_compose(args, client, wiki=None):
|
|||||||
else:
|
else:
|
||||||
jobs = jobs_from_fedfind(ff_release, client)
|
jobs = jobs_from_fedfind(ff_release, client)
|
||||||
except TriggerException as e:
|
except TriggerException as e:
|
||||||
logging.error("cannot run jobs: %s", e)
|
logging.debug("No jobs run: %s", e)
|
||||||
|
sys.exit(1)
|
||||||
logging.info("planned jobs: %s", ' '.join(str(j) for j in jobs))
|
logging.info("planned jobs: %s", ' '.join(str(j) for j in jobs))
|
||||||
if args.submit_results:
|
if args.submit_results:
|
||||||
report_results(jobs, client)
|
report_results(jobs, client)
|
||||||
|
Loading…
Reference in New Issue
Block a user