diff --git a/builder/kojid b/builder/kojid index 08fbfff..be9dfca 100755 --- a/builder/kojid +++ b/builder/kojid @@ -243,6 +243,17 @@ class BuildRoot(object): opts['target_arch'] = self.target_arch if 'mock.package_manager' in self.config['extra']: opts['package_manager'] = self.config['extra']['mock.package_manager'] + + # Append opts['plugin_conf'] to enable Mock package signing + if 'mock.plugin_conf.sign_enable' in self.config['extra']: + opts['plugin_conf'] = {} + opts['plugin_conf']['sign_opts'] = {} + opts['plugin_conf']['sign_enable'] = self.config['extra']['mock.plugin_conf.sign_enable'] + if 'mock.plugin_conf.sign_opts.cmd' in self.config['extra']: + opts['plugin_conf']['sign_opts']['cmd'] = self.config['extra']['mock.plugin_conf.sign_opts.cmd'] + if 'mock.plugin_conf.sign_opts.opts' in self.config['extra']: + opts['plugin_conf']['sign_opts']['opts'] = self.config['extra']['mock.plugin_conf.sign_opts.opts'] + output = koji.genMockConfig(self.name, self.br_arch, managed=True, **opts) #write config diff --git a/koji/__init__.py b/koji/__init__.py index b453017..8178c10 100644 --- a/koji/__init__.py +++ b/koji/__init__.py @@ -1388,6 +1388,14 @@ name=build parts.append("config_opts['plugin_conf'][%r] = %r\n" % (key, value)) parts.append("\n") + # Append config_opts['plugin_conf'] to enable Mock package signing + append_plugin_conf = opts.get('plugin_conf') + parts.append("config_opts['plugin_conf']['sign_enable'] = %s\n" % append_plugin_conf['sign_enable']) + parts.append("config_opts['plugin_conf']['sign_opts'] = {}\n") + for key, value in append_plugin_conf['sign_opts'].iteritems(): + parts.append("config_opts['plugin_conf']['sign_opts'][%r] = %r\n" % (key, value)) + parts.append("\n") + if bind_opts: # This line is REQUIRED for mock to work if bind_opts defined. parts.append("config_opts['internal_dev_setup'] = False\n")