From d77daaec63fae39815d43588f7a6c1eefb7cb031 Mon Sep 17 00:00:00 2001 From: Tomas Kopecek Date: Jan 10 2025 09:09:15 +0000 Subject: PR#4126: consistent daemon exit codes Merges #4126 https://pagure.io/koji/pull-request/4126 Fixes: #4131 https://pagure.io/koji/issue/4131 consistent daemon exit codes --- diff --git a/util/kojira b/util/kojira index b0ec6e2..27c9e82 100755 --- a/util/kojira +++ b/util/kojira @@ -704,6 +704,7 @@ def main(options, session): regen_thread = start_regen_loop(session, repomgr) rmtree_thread = start_rmtree_loop(session, repomgr) logger.info("Entering main loop") + exit_code = 0 while True: try: repomgr.updateRepos() @@ -726,9 +727,11 @@ def main(options, session): break except koji.AuthExpired: logger.warning("Session expired") + exit_code = 1 break except koji.AuthError: logger.warning("Authentication error") + exit_code = 1 break except SystemExit: logger.warning("Shutting down") @@ -746,6 +749,7 @@ def main(options, session): repomgr.killChildren() finally: session.logout() + sys.exit(exit_code) def get_options(): diff --git a/vm/kojivmd b/vm/kojivmd index c19de1f..45eab81 100755 --- a/vm/kojivmd +++ b/vm/kojivmd @@ -252,6 +252,7 @@ def main(options, session): tm.restart_pending = True signal.signal(signal.SIGTERM, shutdown) signal.signal(signal.SIGUSR1, restart) + exit_code = 0 taken = False tm.cleanupAllVMs() while True: @@ -270,6 +271,11 @@ def main(options, session): raise except koji.AuthExpired: logger.error('Session expired') + exit_code = 1 + break + except koji.AuthError: + logger.error('Authentication error') + exit_code = 1 break except Exception: # XXX - this is a little extreme @@ -287,7 +293,7 @@ def main(options, session): logger.warning("Shutting down, please wait...") tm.shutdown() session.logout() - sys.exit(0) + sys.exit(exit_code) ####################