diff --git a/pagure/hooks/files/repospannerhook b/pagure/hooks/files/repospannerhook index 663cb26..4d6ac5e 100755 --- a/pagure/hooks/files/repospannerhook +++ b/pagure/hooks/files/repospannerhook @@ -8,12 +8,13 @@ Patrick Uiterwijk """ +from __future__ import print_function import os import sys # These fields get filled in by upload-repospanner-hooks -os.environ['PAGURE_CONFIG'] = '${config}' +os.environ["PAGURE_CONFIG"] = "${config}" PYPATH = "${pypath}" # Prepare code imports @@ -27,17 +28,17 @@ from pagure.config import config as pagure_config # Get information from the environment -hooktype = os.environ.get('HOOKTYPE') +hooktype = os.path.basename(sys.argv[0]) -is_internal = os.environ.get('extra_internal', False) == 'yes' -pushuser = os.environ['extra_username'] -repotype = os.environ['extra_repotype'] -project_name = os.environ['extra_project_name'] -project_user = os.environ.get('extra_project_user', None) -project_namespace = os.environ.get('extra_project_namespace', None) -pruid = os.environ.get('extra_pull_request_uid', None) +is_internal = os.environ.get("extra_internal", False) == "yes" +pushuser = os.environ["extra_username"] +repotype = os.environ["extra_repotype"] +project_name = os.environ["extra_project_name"] +project_user = os.environ.get("extra_project_user", None) or None +project_namespace = os.environ.get("extra_project_namespace", None) or None +pruid = os.environ.get("extra_pull_request_uid", None) -changes = extract_changes(from_stdin=hooktype != 'update') +changes = extract_changes(from_stdin=hooktype != "update") session = pagure.lib.create_session(pagure_config["DB_URL"]) if not session: @@ -48,6 +49,9 @@ gitdir = os.path.abspath(os.environ["GIT_DIR"]) project = pagure.lib._get_project( session, project_name, project_user, project_namespace ) +if not project: + print("No project found") + sys.exit(1) pull_request = None if pruid: @@ -64,5 +68,5 @@ run_project_hooks( gitdir, changes, is_internal, - pull_request + pull_request, )