summaryrefslogtreecommitdiff
path: root/signatrust_bin.patch
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2025-03-21 17:37:41 +0000
committerCoprDistGit <infra@openeuler.org>2025-03-21 17:37:41 +0000
commitbed3ab1ed2c9a92b20bae1d0f11f17d9051bfff9 (patch)
tree76779ef5ca00cab259eb516c4c44eef0b3048cc9 /signatrust_bin.patch
parent2132b310609fdedcd5427676a98f1174869b3a82 (diff)
automatic import of copr-backend
Diffstat (limited to 'signatrust_bin.patch')
-rw-r--r--signatrust_bin.patch105
1 files changed, 105 insertions, 0 deletions
diff --git a/signatrust_bin.patch b/signatrust_bin.patch
new file mode 100644
index 0000000..fcba220
--- /dev/null
+++ b/signatrust_bin.patch
@@ -0,0 +1,105 @@
+diff --git a/run/copr_fix_gpg.py b/run/copr_fix_gpg.py
+index 24edf74e..bfa70c05 100755
+--- a/run/copr_fix_gpg.py
++++ b/run/copr_fix_gpg.py
+@@ -9,7 +9,7 @@ from urllib.parse import urlparse
+ import pwd
+
+ from copr_backend.helpers import BackendConfigReader, call_copr_repo, run_cmd
+-from copr_backend.sign import get_pubkey, unsign_rpms_in_dir, sign_rpms_in_dir, create_user_keys, create_gpg_email
++from copr_backend.sign import new_signer, create_gpg_email
+
+ logging.basicConfig(
+ filename="/var/log/copr-backend/fix_gpg.log",
+@@ -69,12 +69,14 @@ def fix_copr(args, opts, copr_full_name):
+ log.info('Ignoring %s. Directory does not exist.', copr_path)
+ return
+
++ signer = new_signer(opts)
++
+ log.info("Generate key-pair on copr-keygen (if not generated) for email %s",
+ create_gpg_email(owner, coprname, opts.sign_domain))
+- create_user_keys(owner, coprname, opts)
++ signer.create_user_keys(owner, coprname, opts)
+
+ log.info("Regenerate pubkey.gpg in copr %s", copr_path)
+- get_pubkey(owner, coprname, log, opts.sign_domain, os.path.join(copr_path, 'pubkey.gpg'))
++ signer.get_pubkey(owner, coprname, log, opts.sign_domain, os.path.join(copr_path, 'pubkey.gpg'))
+
+ # Match the "00001231-anycharacer" directory names. Compile once, use many.
+ builddir_matcher = re.compile(r"\d{8,}-")
+@@ -111,8 +113,8 @@ def fix_copr(args, opts, copr_full_name):
+
+ log.info("Processing rpms in builddir %s", builddir_path)
+ try:
+- unsign_rpms_in_dir(builddir_path, opts, log) # first we need to unsign by using rpm-sign before we sign with obs-sign
+- sign_rpms_in_dir(owner, coprname, builddir_path, chroot, opts, log)
++ signer.unsign_rpms_in_dir(builddir_path, opts, log) # first we need to unsign by using rpm-sign before we sign with obs-sign
++ signer.sign_rpms_in_dir(owner, coprname, builddir_path, chroot, opts, log)
+ except Exception as e:
+ log.exception(str(e))
+ continue
+diff --git a/run/copr_sign_unsigned.py b/run/copr_sign_unsigned.py
+index 33eaeae3..e17e65bb 100755
+--- a/run/copr_sign_unsigned.py
++++ b/run/copr_sign_unsigned.py
+@@ -12,7 +12,7 @@ import pwd
+
+ from copr_backend.helpers import (BackendConfigReader, create_file_logger,
+ uses_devel_repo, call_copr_repo)
+-from copr_backend.sign import get_pubkey, sign_rpms_in_dir, create_user_keys
++from copr_backend.sign import new_signer
+ from copr_backend.exceptions import CoprSignNoKeyError
+
+
+@@ -26,10 +26,11 @@ log = logging.getLogger(__name__)
+ def check_signed_rpms_in_pkg_dir(pkg_dir, user, project, opts, chroot_dir, devel):
+ success = True
+
++ signer = new_signer(opts)
+ logger = create_file_logger("run.check_signed_rpms_in_pkg_dir",
+ "/tmp/copr_check_signed_rpms.log")
+ try:
+- sign_rpms_in_dir(user, project, pkg_dir, chroot_dir, opts, log=logger)
++ signer.sign_rpms_in_dir(user, project, pkg_dir, chroot_dir, opts, log=logger)
+ log.info("running createrepo for %s", pkg_dir)
+ call_copr_repo(directory=chroot_dir, devel=devel, logger=log)
+ except Exception as err:
+@@ -80,9 +81,10 @@ def check_pubkey(pubkey_path, user, project, opts):
+ log.info("Pubkey for %s/%s exists: %s", user, project, pubkey_path)
+ return True
+ else:
++ signer = new_signer(opts)
+ log.info("Missing pubkey for %s/%s", user, project)
+ try:
+- get_pubkey(user, project, log, opts.sign_domain, pubkey_path)
++ signer.get_pubkey(user, project, log, opts.sign_domain, pubkey_path)
+ return True
+ except Exception as err:
+ log.exception(err)
+@@ -102,6 +104,8 @@ def main():
+ opts = BackendConfigReader().read()
+ log.info("Starting pubkey fill, destdir: %s", opts.destdir)
+
++ signer = new_signer(opts)
++
+ log.debug("list dir: %s", os.listdir(opts.destdir))
+ for user_name in os.listdir(opts.destdir):
+ if user_name in users_done_old:
+@@ -116,13 +120,13 @@ def main():
+ log.info("Checking project dir: %s", project_name)
+
+ try:
+- get_pubkey(user_name, project_name, log, opts.sign_domain)
++ signer.get_pubkey(user_name, project_name, log, opts.sign_domain)
+ log.info("Key-pair exists for %s/%s", user_name, project_name)
+ except CoprSignNoKeyError:
+- create_user_keys(user_name, project_name, opts)
++ signer.create_user_keys(user_name, project_name, opts)
+ log.info("Created new key-pair for %s/%s", user_name, project_name)
+ except Exception as err:
+- log.error("Failed to get pubkey for {}/{}, mark as failed, skipping")
++ log.error("Failed to get pubkey for {}/{}, mark as failed, skipping".format(user_name, project_name))
+ log.exception(err)
+ failed = True
+ continue