Update to 1.18.0.

epel9
Kevin Fenzi 6 years ago
parent dceb664858
commit 648230526f

1
.gitignore vendored

@ -17,3 +17,4 @@ koji-1.4.0.tar.bz2
/koji-1.16.1.tar.bz2
/koji-1.16.2.tar.bz2
/koji-1.17.0.tar.bz2
/koji-1.18.0.tar.bz2

@ -1,224 +0,0 @@
From 3590ab0a355adaf63c7a5f068f7a6ac0eb5e8b05 Mon Sep 17 00:00:00 2001
From: Mikolaj Izdebski <mizdebsk@redhat.com>
Date: Feb 21 2019 12:42:18 +0000
Subject: Allow generating separate src repo for build repos
Fixes #1266
---
diff --git a/builder/kojid b/builder/kojid
index 27fe523..0fffb89 100755
--- a/builder/kojid
+++ b/builder/kojid
@@ -4990,13 +4990,15 @@ class NewRepoTask(BaseTaskHandler):
Methods = ['newRepo']
_taskWeight = 0.1
- def handler(self, tag, event=None, src=False, debuginfo=False):
+ def handler(self, tag, event=None, src=False, debuginfo=False, separate_src=False):
tinfo = self.session.getTag(tag, strict=True, event=event)
kwargs = {}
if event is not None:
kwargs['event'] = event
if src:
kwargs['with_src'] = True
+ if separate_src:
+ kwargs['with_separate_src'] = True
if debuginfo:
kwargs['with_debuginfo'] = True
repo_id, event_id = self.session.host.repoInit(tinfo['id'], **kwargs)
diff --git a/cli/koji_cli/commands.py b/cli/koji_cli/commands.py
index a2b2b2b..1a2ace6 100644
--- a/cli/koji_cli/commands.py
+++ b/cli/koji_cli/commands.py
@@ -7011,7 +7011,8 @@ def handle_regen_repo(options, session, args):
parser.add_option("--target", action="store_true", help=_("Interpret the argument as a build target name"))
parser.add_option("--nowait", action="store_true", help=_("Don't wait on for regen to finish"))
parser.add_option("--debuginfo", action="store_true", help=_("Include debuginfo rpms in repo"))
- parser.add_option("--source", "--src", action="store_true", help=_("Include source rpms in the repo"))
+ parser.add_option("--source", "--src", action="store_true", help=_("Include source rpms in each of repos"))
+ parser.add_option("--separate-source", "--separate-src", action="store_true", help=_("Include source rpms in separate src repo"))
(suboptions, args) = parser.parse_args(args)
if len(args) == 0:
parser.error(_("A tag name must be specified"))
@@ -7047,6 +7048,8 @@ def handle_regen_repo(options, session, args):
repo_opts['debuginfo'] = True
if suboptions.source:
repo_opts['src'] = True
+ if suboptions.separate_source:
+ repo_opts['separate_src'] = True
task_id = session.newRepo(tag, **repo_opts)
print("Regenerating repo for tag: %s" % tag)
print("Created task: %d" % task_id)
diff --git a/hub/kojihub.py b/hub/kojihub.py
index 46b8f3e..9844861 100644
--- a/hub/kojihub.py
+++ b/hub/kojihub.py
@@ -2345,7 +2345,7 @@ def maven_tag_archives(tag_id, event_id=None, inherit=True):
yield archive
return _iter_archives()
-def repo_init(tag, with_src=False, with_debuginfo=False, event=None):
+def repo_init(tag, with_src=False, with_debuginfo=False, event=None, with_separate_src=False):
"""Create a new repo entry in the INIT state, return full repo data
Returns a dictionary containing
@@ -2355,9 +2355,11 @@ def repo_init(tag, with_src=False, with_debuginfo=False, event=None):
state = koji.REPO_INIT
tinfo = get_tag(tag, strict=True, event=event)
koji.plugin.run_callbacks('preRepoInit', tag=tinfo, with_src=with_src, with_debuginfo=with_debuginfo,
- event=event, repo_id=None)
+ event=event, repo_id=None, with_separate_src=with_separate_src)
tag_id = tinfo['id']
repo_arches = {}
+ if with_separate_src:
+ repo_arches['src'] = 1
if tinfo['arches']:
for arch in tinfo['arches'].split():
arch = koji.canonArch(arch)
@@ -2420,6 +2422,8 @@ def repo_init(tag, with_src=False, with_debuginfo=False, event=None):
if with_src:
for repoarch in repo_arches:
pkglist[repoarch].write(relpath)
+ if with_separate_src:
+ pkglist[arch].write(relpath)
elif arch == 'noarch':
for repoarch in repo_arches:
pkglist[repoarch].write(relpath)
@@ -2474,7 +2478,7 @@ def repo_init(tag, with_src=False, with_debuginfo=False, event=None):
_write_maven_repo_metadata(artifact_dir, artifacts)
koji.plugin.run_callbacks('postRepoInit', tag=tinfo, with_src=with_src, with_debuginfo=with_debuginfo,
- event=event, repo_id=repo_id)
+ event=event, repo_id=repo_id, with_separate_src=with_separate_src)
return [repo_id, event_id]
def _write_maven_repo_metadata(destdir, artifacts):
@@ -2519,7 +2523,8 @@ def dist_repo_init(tag, keys, task_opts):
# note: we need to match args from the other preRepoInit callback
koji.plugin.run_callbacks('preRepoInit', tag=tinfo, with_src=False,
with_debuginfo=False, event=event, repo_id=None,
- dist=True, keys=keys, arches=arches, task_opts=task_opts)
+ dist=True, keys=keys, arches=arches, task_opts=task_opts,
+ with_separate_src=False)
if not event:
event = get_event()
repo_id = nextval('repo_id_seq')
@@ -2540,7 +2545,7 @@ def dist_repo_init(tag, keys, task_opts):
koji.plugin.run_callbacks('postRepoInit', tag=tinfo, with_src=False,
with_debuginfo=False, event=event, repo_id=repo_id,
dist=True, keys=keys, arches=arches, task_opts=task_opts,
- repodir=repodir)
+ repodir=repodir, with_reparate_src=False)
return repo_id, event
@@ -10521,7 +10526,7 @@ class RootExports(object):
task_opts['event'] = event_id
return make_task('distRepo', [tag, repo_id, keys, task_opts], priority=15, channel='createrepo')
- def newRepo(self, tag, event=None, src=False, debuginfo=False):
+ def newRepo(self, tag, event=None, src=False, debuginfo=False, separate_src=False):
"""Create a newRepo task. returns task id"""
if context.session.hasPerm('regen-repo'):
pass
@@ -10532,6 +10537,8 @@ class RootExports(object):
opts['event'] = event
if src:
opts['src'] = True
+ if separate_src:
+ opts['separate_src'] = True
if debuginfo:
opts['debuginfo'] = True
args = koji.encode_args(tag, **opts)
@@ -12699,11 +12706,11 @@ class HostExports(object):
return br.updateArchiveList(archives, project)
- def repoInit(self, tag, with_src=False, with_debuginfo=False, event=None):
+ def repoInit(self, tag, with_src=False, with_debuginfo=False, event=None, with_separate_src=False):
"""Initialize a new repo for tag"""
host = Host()
host.verify()
- return repo_init(tag, with_src=with_src, with_debuginfo=with_debuginfo, event=event)
+ return repo_init(tag, with_src=with_src, with_debuginfo=with_debuginfo, event=event, with_separate_src=with_separate_src)
def repoAddRPM(self, repo_id, path):
"""Add an uploaded rpm to a repo"""
diff --git a/koji/tasks.py b/koji/tasks.py
index ba4cd31..90656b8 100644
--- a/koji/tasks.py
+++ b/koji/tasks.py
@@ -200,7 +200,7 @@ LEGACY_SIGNATURES = {
[['builds', 'target', 'opts'], None, None, (None,)],
],
'newRepo' : [
- [['tag', 'event', 'src', 'debuginfo'], None, None, (None, False, False)],
+ [['tag', 'event', 'src', 'debuginfo', 'separate_src'], None, None, (None, False, False, False)],
],
'createImage' : [
[['name', 'version', 'release', 'arch', 'target_info', 'build_tag', 'repo_info', 'inst_tree', 'opts'], None, None, (None,)],
diff --git a/tests/test_cli/test_regen_repo.py b/tests/test_cli/test_regen_repo.py
index 43eff0b..90f16b1 100644
--- a/tests/test_cli/test_regen_repo.py
+++ b/tests/test_cli/test_regen_repo.py
@@ -168,11 +168,13 @@ class TestRegenRepo(utils.CliTestCase):
(Specify the --help global option for a list of other help options)
Options:
- -h, --help show this help message and exit
- --target Interpret the argument as a build target name
- --nowait Don't wait on for regen to finish
- --debuginfo Include debuginfo rpms in repo
- --source, --src Include source rpms in the repo
+ -h, --help show this help message and exit
+ --target Interpret the argument as a build target name
+ --nowait Don't wait on for regen to finish
+ --debuginfo Include debuginfo rpms in repo
+ --source, --src Include source rpms in each of repos
+ --separate-source, --separate-src
+ Include source rpms in separate src repo
""" % self.progname)
diff --git a/util/kojira b/util/kojira
index 8e68cfd..a93d966 100755
--- a/util/kojira
+++ b/util/kojira
@@ -671,6 +671,7 @@ class RepoManager(object):
debuginfo_pat = self.options.debuginfo_tags.split()
src_pat = self.options.source_tags.split()
+ separate_src_pat = self.options.separate_source_tags.split()
order = sorted(self.needed_tags.values(), key=lambda t: t['score'])
for tag in order:
if running_tasks >= self.options.max_repo_tasks:
@@ -699,6 +700,8 @@ class RepoManager(object):
taskopts['debuginfo'] = True
if koji.util.multi_fnmatch(tagname, src_pat):
taskopts['src'] = True
+ if koji.util.multi_fnmatch(tagname, separate_src_pat):
+ taskopts['separate_src'] = True
maven = tag['taginfo']['maven_support']
if maven:
if running_tasks_maven >= self.options.max_repo_tasks_maven:
@@ -836,6 +839,7 @@ def get_options():
defaults = {'with_src': False,
'debuginfo_tags': '',
'source_tags': '',
+ 'separate_source_tags': '',
'ignore_tags': '',
'verbose': False,
'debug': False,
@@ -876,7 +880,7 @@ def get_options():
'recent_tasks_lifetime')
str_opts = ('topdir', 'server', 'user', 'password', 'logfile', 'principal', 'keytab', 'krbservice',
'cert', 'ca', 'serverca', 'debuginfo_tags',
- 'source_tags', 'ignore_tags') # FIXME: remove ca here
+ 'source_tags', 'separate_source_tags', 'ignore_tags') # FIXME: remove ca here
bool_opts = ('with_src','verbose','debug','ignore_stray_repos', 'offline_retry',
'krb_rdns', 'krb_canon_host', 'no_ssl_verify')
for name in config.options(section):

@ -1,30 +0,0 @@
From a66b4ddfb4399cdc03ccc6f66acd634c692ee88f Mon Sep 17 00:00:00 2001
From: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
Date: Apr 17 2019 05:38:03 +0000
Subject: kojid: Download only 'repomd.xml'
We have pretty slow connection from s390x koji which helped to uncover
this part. Kojid downloads all files from repomd.xml (incl. filelists)
which is really big. What we really want is just find location of
'origin' (used later in the code).
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
---
diff --git a/builder/kojid b/builder/kojid
index 75f8a7d..5110d04 100755
--- a/builder/kojid
+++ b/builder/kojid
@@ -739,6 +739,9 @@ class BuildRoot(object):
h.setopt(librepo.LRO_REPOTYPE, librepo.LR_YUMREPO)
h.setopt(librepo.LRO_URLS, [repo_url])
h.setopt(librepo.LRO_DESTDIR, tmpdir)
+ # We are using this just to find out location of 'origin',
+ # we don't even need to download it since we use openRemoteFile
+ h.setopt(librepo.LRO_YUMDLIST, [])
h.perform(r)
pkgorigins = r.getinfo(librepo.LRR_YUM_REPOMD)['origin']['location_href']
koji.util.rmtree(tmpdir)

@ -1,61 +0,0 @@
From 3c5ddb8dab9a5736f03b6d60593adc9170304af3 Mon Sep 17 00:00:00 2001
From: Mike McLean <mikem@redhat.com>
Date: May 03 2019 14:57:43 +0000
Subject: [PATCH 1/2] handle bare merge mode
Fixes https://pagure.io/koji/issue/1404
---
diff --git a/builder/kojid b/builder/kojid
index 5110d04..e176266 100755
--- a/builder/kojid
+++ b/builder/kojid
@@ -5186,6 +5186,10 @@ class CreaterepoTask(BaseTaskHandler):
cmd = ['/usr/libexec/kojid/mergerepos',
'--mode', 'simple',
'--tempdir', self.workdir]
+ elif merge_mode == 'bare':
+ # "bare" merge mode for repos with modular metadata
+ # forces use of mergerepo_c
+ cmd = ['/usr/bin/mergerepo_c', '--pkgorigins']
elif self.options.use_createrepo_c:
cmd = ['/usr/bin/mergerepo_c', '--koji']
else:
diff --git a/koji/__init__.py b/koji/__init__.py
index 6e667ce..9c7101c 100644
--- a/koji/__init__.py
+++ b/koji/__init__.py
@@ -236,7 +236,7 @@ REPO_EXPIRED = REPO_STATES['EXPIRED']
REPO_DELETED = REPO_STATES['DELETED']
REPO_PROBLEM = REPO_STATES['PROBLEM']
-REPO_MERGE_MODES = set(['koji', 'simple'])
+REPO_MERGE_MODES = set(['koji', 'simple', 'dumb'])
# buildroot states
BR_STATES = Enum((
From 0da20019456c386aa44589c3f0529926fb426541 Mon Sep 17 00:00:00 2001
From: Mike McLean <mikem@redhat.com>
Date: May 03 2019 16:54:54 +0000
Subject: [PATCH 2/2] fix mode name
---
diff --git a/koji/__init__.py b/koji/__init__.py
index 9c7101c..0b9b5bc 100644
--- a/koji/__init__.py
+++ b/koji/__init__.py
@@ -236,7 +236,7 @@ REPO_EXPIRED = REPO_STATES['EXPIRED']
REPO_DELETED = REPO_STATES['DELETED']
REPO_PROBLEM = REPO_STATES['PROBLEM']
-REPO_MERGE_MODES = set(['koji', 'simple', 'dumb'])
+REPO_MERGE_MODES = set(['koji', 'simple', 'bare'])
# buildroot states
BR_STATES = Enum((

@ -1,36 +0,0 @@
From 403f0f8a44c8ee0fd44326ae4d11bafe79e1809a Mon Sep 17 00:00:00 2001
From: Patrick Uiterwijk <patrick@puiterwijk.org>
Date: May 29 2019 15:31:52 +0000
Subject: Allow builder to attempt krb if gssapi is available
Signed-off-by: Patrick Uiterwijk <patrick@puiterwijk.org>
---
diff --git a/builder/kojid b/builder/kojid
index be1cb26..91d4d69 100755
--- a/builder/kojid
+++ b/builder/kojid
@@ -69,6 +69,11 @@ except ImportError: # pragma: no cover
krbV = None
try:
+ import requests_kerberos
+except ImportError: # pragma: no cover
+ requests_kerberos = None
+
+try:
import librepo
import io
except ImportError:
@@ -6137,7 +6142,7 @@ if __name__ == "__main__":
quit("Error: Unable to log in. Bad credentials?")
except six.moves.xmlrpc_client.ProtocolError:
quit("Error: Unable to connect to server %s" % (options.server))
- elif krbV:
+ elif krbV or requests_kerberos:
krb_principal = options.krb_principal
if krb_principal is None:
krb_principal = options.host_principal_format % socket.getfqdn()

@ -0,0 +1,34 @@
From ad0da60a380499e7b1ed8ca84ce606b183f79e39 Mon Sep 17 00:00:00 2001
From: Kevin Fenzi <kevin@scrye.com>
Date: Jul 19 2019 23:27:30 +0000
Subject: builder/kojid: revert using only 2 processors for xz compression and lower preset to 6
In c360c791ec24b567a16553dca38b24645dd80a36 we changed xz to use only
2 cpus for compression. That commit notes that xz threads are really
memory hungry. However, preset -9 is many times as memory hungry as
preset -6. If we switch to preset 6, xz compressed artifacts will be
a little bit larger, but will compress (and decompress!) a lot larger.
This is obviously a trade off, but I think lowering the preset and
using more cpus will be a better tradeoff.
This commit moves xz to preset 6 and using all cpus the builder has.
Signed-off-by: Kevin Fenzi <kevin@scrye.com>
---
diff --git a/builder/kojid b/builder/kojid
index 3f84887..09a48a9 100755
--- a/builder/kojid
+++ b/builder/kojid
@@ -3989,7 +3989,7 @@ class BaseImageTask(OzImageTask):
'xz-cp-%s-%s.log' % (format, self.arch))
log_output(self.session, cmd[0], cmd, conlog, self.getUploadDir(),
logerror=1)
- cmd = ['/usr/bin/xz', '-z9T2', rawimg]
+ cmd = ['/usr/bin/xz', '-z6T0', rawimg]
conlog = os.path.join(self.workdir,
'xz-%s-%s.log' % (format, self.arch))
log_output(self.session, cmd[0], cmd, conlog, self.getUploadDir(),

@ -0,0 +1,76 @@
From 88e92b61a4a4eacf5ccd14566ecfa473d6719a8f Mon Sep 17 00:00:00 2001
From: Patrick Uiterwijk <patrick@puiterwijk.org>
Date: Aug 13 2019 11:35:14 +0000
Subject: [PATCH 1/2] Allow builder to attempt krb if gssapi is available
Signed-off-by: Patrick Uiterwijk <patrick@puiterwijk.org>
---
diff --git a/builder/kojid b/builder/kojid
index 142a440..86af4e5 100755
--- a/builder/kojid
+++ b/builder/kojid
@@ -69,6 +69,11 @@ except ImportError: # pragma: no cover
krbV = None
try:
+ import requests_kerberos
+except ImportError: # pragma: no cover
+ requests_kerberos = None
+
+try:
import librepo
import io
except ImportError:
@@ -6264,7 +6269,7 @@ if __name__ == "__main__":
quit("Error: Unable to log in. Bad credentials?")
except six.moves.xmlrpc_client.ProtocolError:
quit("Error: Unable to connect to server %s" % (options.server))
- elif krbV:
+ elif krbV or requests_kerberos:
krb_principal = options.krb_principal
if krb_principal is None:
krb_principal = options.host_principal_format % socket.getfqdn()
From 8b76e0d1af3b4e6d1faf04cbc9142c277c2cd613 Mon Sep 17 00:00:00 2001
From: Tomas Kopecek <tkopecek@redhat.com>
Date: Aug 13 2019 11:53:16 +0000
Subject: [PATCH 2/2] fix krbV error handling
Fixes: https://pagure.io/koji/issue/1575
---
diff --git a/builder/kojid b/builder/kojid
index 86af4e5..73c2bf7 100755
--- a/builder/kojid
+++ b/builder/kojid
@@ -65,11 +65,13 @@ from koji.util import parseStatus, isSuccess, dslice, dslice_ex, to_list
try:
import krbV
+ Krb5Error = krbV.Krb5Error
except ImportError: # pragma: no cover
krbV = None
try:
import requests_kerberos
+ Krb5Error = requests_kerberos.exceptions.RequestException
except ImportError: # pragma: no cover
requests_kerberos = None
@@ -6277,8 +6279,8 @@ if __name__ == "__main__":
session.krb_login(principal=krb_principal,
keytab=options.keytab,
ccache=options.ccache)
- except krbV.Krb5Error as e:
- quit("Kerberos authentication failed: '%s' (%s)" % (e.args[1], e.args[0]))
+ except Krb5Error as e:
+ quit("Kerberos authentication failed: %s" % e.args)
except socket.error as e:
quit("Could not connect to Kerberos authentication service: '%s'" % e.args[1])
else:

@ -1,96 +0,0 @@
From 9828bc3dd8ed0679159aceb902409600b21f803c Mon Sep 17 00:00:00 2001
From: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
Date: May 30 2019 18:45:46 +0000
Subject: Expose 'dynamic_buildrequires' mock setting
We need it in order to enable this feature in rawhide and any module
builds which depend on rpm:4.15 (by request in modulemd).
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
---
diff --git a/0001-Expose-dynamic_buildrequires-mock-setting.patch b/0001-Expose-dynamic_buildrequires-mock-setting.patch
new file mode 100644
index 0000000..914b5a4
--- /dev/null
+++ b/0001-Expose-dynamic_buildrequires-mock-setting.patch
@@ -0,0 +1,77 @@
+From cdecc416ec4cc5a5f29d0ff16318f68b562fcfd0 Mon Sep 17 00:00:00 2001
+From: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
+Date: Wed, 29 May 2019 08:13:01 +0200
+Subject: [PATCH] Expose 'dynamic_buildrequires' mock setting
+
+Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
+---
+ builder/kojid | 2 ++
+ docs/source/using_the_koji_build_system.rst | 2 ++
+ koji/__init__.py | 2 ++
+ tests/test_cli/test_add_tag.py | 4 +++-
+ 4 files changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/builder/kojid b/builder/kojid
+index d6714258..5fc64638 100755
+--- a/builder/kojid
++++ b/builder/kojid
+@@ -272,6 +272,8 @@ 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']
++ if 'mock.dynamic_buildrequires' in self.config['extra']:
++ opts['dynamic_buildrequires'] = self.config['extra']['mock.dynamic_buildrequires']
+ if self.internal_dev_setup is not None:
+ opts['internal_dev_setup'] = bool(self.internal_dev_setup)
+ output = koji.genMockConfig(self.name, self.br_arch, managed=True, **opts)
+diff --git a/docs/source/using_the_koji_build_system.rst b/docs/source/using_the_koji_build_system.rst
+index c3d5981b..d4664527 100644
+--- a/docs/source/using_the_koji_build_system.rst
++++ b/docs/source/using_the_koji_build_system.rst
+@@ -456,6 +456,8 @@ environment follows:
+ * `mock.new_chroot` - 0/1 value. If it is set, `--new-chroot` or
+ `--old-chroot` option is appended to any mock call. If it is not set,
+ mock's default behavior is used.
++* `mock.dynamic_buildrequires` - 0/1 value. If this is set, it will override
++ mock's default setting of `dynamic_buildrequires`.
+
+ Using Koji to control tasks
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^
+diff --git a/koji/__init__.py b/koji/__init__.py
+index 64ab90d6..e105f7ee 100644
+--- a/koji/__init__.py
++++ b/koji/__init__.py
+@@ -1458,6 +1458,8 @@ def genMockConfig(name, arch, managed=False, repoid=None, tag_name=None, **opts)
+ }
+ if opts.get('package_manager'):
+ config_opts['package_manager'] = opts['package_manager']
++ if 'dynamic_buildrequires' in opts:
++ config_opts['dynamic_buildrequires'] = opts['dynamic_buildrequires']
+
+ # bind_opts are used to mount parts (or all of) /dev if needed.
+ # See kojid::LiveCDTask for a look at this option in action.
+diff --git a/tests/test_cli/test_add_tag.py b/tests/test_cli/test_add_tag.py
+index 422b9245..47112c51 100644
+--- a/tests/test_cli/test_add_tag.py
++++ b/tests/test_cli/test_add_tag.py
+@@ -56,7 +56,8 @@ class TestAddTag(utils.CliTestCase):
+ '--maven-support', '--include-all']
+ # extra fields,
+ arguments += ['--extra', 'mock.package_manager=dnf',
+- '--extra', 'mock.new_chroot=0']
++ '--extra', 'mock.new_chroot=0',
++ '--extra', 'mock.dynamic_buildrequires=1']
+
+ opts = {
+ 'parent': 'parent',
+@@ -67,6 +68,7 @@ class TestAddTag(utils.CliTestCase):
+ {
+ 'mock.package_manager': 'dnf',
+ 'mock.new_chroot': 0,
++ 'mock.dynamic_buildrequires': 1,
+ }
+ }
+
+--
+2.22.0.rc1
+

@ -1,65 +1,49 @@
From e28b662b29f688954a8ebe772e21cb7025ba47b6 Mon Sep 17 00:00:00 2001
From: Patrick Uiterwijk <patrick@puiterwijk.org>
Date: Thu, 7 Mar 2019 12:22:12 +0100
Subject: [PATCH] Apply Fedora instance configuration
Signed-off-by: Patrick Uiterwijk <patrick@puiterwijk.org>
---
cli/koji.conf | 25 +++++++++++--------------
1 file changed, 11 insertions(+), 14 deletions(-)
diff --git a/cli/koji.conf b/cli/koji.conf
index addd4e3..3588c19 100644
--- a/cli/koji.conf
+++ b/cli/koji.conf
@@ -3,18 +3,23 @@
;configuration for koji cli tool
diff -Nur koji-1.18.0.orig/cli/koji.conf koji-1.18.0/cli/koji.conf
--- koji-1.18.0.orig/cli/koji.conf 2019-08-09 11:07:07.000000000 -0700
+++ koji-1.18.0/cli/koji.conf 2019-08-16 08:14:51.834690613 -0700
@@ -4,17 +4,22 @@
;url of XMLRPC server
-;server = http://hub.example.com/kojihub
;server = http://hub.example.com/kojihub
+server = https://koji.fedoraproject.org/kojihub
;url of web interface
-;weburl = http://www.example.com/koji
;weburl = http://www.example.com/koji
+weburl = https://koji.fedoraproject.org/koji
;url of package download site
-;pkgurl = http://www.example.com/packages
+topurl = https://kojipkgs.fedoraproject.org/
;pkgurl = http://www.example.com/packages
+pkgurl = https://kojipkgs.fedoraproject.org/
;path to the koji top directory
;topdir = /mnt/koji
+; use the fast upload feature of koji by default
+use_fast_upload = yes
+
;configuration for Kerberos authentication
+authtype = kerberos
+krb_rdns = false
;the service name of the principal being used by the hub
;krbservice = host
@@ -28,17 +33,9 @@
@@ -28,7 +33,6 @@
;enable to lookup dns canonical hostname for krb auth
;krb_canon_host = no
-
-;configuration for SSL authentication
-
-;client certificate
-;cert = ~/.koji/client.crt
-
-;certificate of the CA that issued the HTTP server certificate
-;serverca = ~/.koji/serverca.crt
-
-;enabled plugins for CLI, runroot and save_failed_tree are available
-;plugins =
+;enabled plugins for CLI, runroot is enabled by default for fedora
+;save_failed_tree is available
;configuration for SSL authentication
;client certificate
@@ -45,9 +49,14 @@
;[not_implemented_yet]
;enabled plugins for CLI, runroot and save_failed_tree are available
;plugins =
+; runroot plugin is enabled by default in fedora
+plugins = runroot
;timeout of XMLRPC requests by seconds, default: 60 * 60 * 12 = 43200
;timeout = 43200
--
2.20.1
;timeout of GSSAPI/SSL authentication by seconds, default: 60
;auth_timeout = 60
+
+; use the fast upload feature of koji by default
+use_fast_upload = yes

@ -1,37 +0,0 @@
From 781a09a9750a18b77208e58eaa960b1b0d3f7dac Mon Sep 17 00:00:00 2001
From: Tomas Kopecek <tkopecek@redhat.com>
Date: Feb 25 2019 13:50:30 +0000
Subject: createrepo_c is used by default now
Fixes: https://pagure.io/koji/issue/716
---
diff --git a/builder/kojid b/builder/kojid
index e7c87f9..5e97615 100755
--- a/builder/kojid
+++ b/builder/kojid
@@ -5975,7 +5975,7 @@ def get_options():
'timeout': None,
'no_ssl_verify': False,
'use_fast_upload': True,
- 'use_createrepo_c': False,
+ 'use_createrepo_c': True,
'createrepo_skip_stat': True,
'createrepo_update': True,
'pkgurl': None,
diff --git a/builder/kojid.conf b/builder/kojid.conf
index 7bc235d..b9f0851 100644
--- a/builder/kojid.conf
+++ b/builder/kojid.conf
@@ -50,7 +50,7 @@ server=http://hub.example.com/kojihub
topurl=http://hub.example.com/kojifiles
; use createrepo_c rather than createrepo
-; use_createrepo_c=False
+; use_createrepo_c=True
; A space-separated list of tuples from which kojid is allowed to checkout.
; The format of those tuples is:

@ -78,35 +78,20 @@
%endif
Name: koji
Version: 1.17.0
Release: 8%{?dist}
Version: 1.18.0
Release: 1%{?dist}
# the included arch lib from yum's rpmUtils is GPLv2+
License: LGPLv2 and GPLv2+
Summary: Build system tools
URL: https://pagure.io/koji/
Source0: https://releases.pagure.org/koji/koji-%{version}.tar.bz2
# Patches proposed upstream
## Use createrepo_c by default now (we already do this in Fedora infra anyway)
## From: https://pagure.io/koji/pull-request/1278
Patch10: koji-PR1278-use-createrepo_c-by-default.patch
# Patches already upstream
# Already merged patch to fix kojid kerberos auth
Patch1: https://pagure.io/koji/pull-request/1613.patch
# Download only the repomd.xml instead of all the repodata
Patch11: https://pagure.io/koji/pull-request/1398.patch
# Allow generating seperate srpm repos in buildroot repos
Patch12: https://pagure.io/koji/pull-request/1273.patch
# Handle 'bare' merge mode for repos
Patch13: https://pagure.io/koji/pull-request/1411.patch
# Expose dynamic_buildrequires mock setting
# Upstream: https://pagure.io/koji/pull-request/1466.patch
# Rebased for 1.17.0 in https://src.fedoraproject.org/rpms/koji/pull-request/6
Patch14: https://src.fedoraproject.org/rpms/koji/c/9828bc3dd8ed0679159aceb902409600b21f803c.patch
# Patch to fix kerberos auth in kojid with python3
Patch15: https://pagure.io/koji/pull-request/1468.patch
# Adjust xz params to favor speed
Patch15: https://pagure.io/koji/pull-request/1576.patch
# Not upstreamable
Patch100: fedora-config.patch
@ -712,6 +697,9 @@ fi
%endif
%changelog
* Fri Aug 16 2019 Kevin Fenzi <kevin@scrye.com> - 1.18.0-1
- Update to 1.18.0.
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.17.0-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild

@ -1 +1 @@
SHA512 (koji-1.17.0.tar.bz2) = 6f5da6d10ca3d2c01aa9251d5fa01221a89eb80a24b6b933197f359d9bc348d8e2f8b18d66d886454bdf89e8269a6a9652c44f1858b1c75d6540e32898e76f89
SHA512 (koji-1.18.0.tar.bz2) = 6229ddde6b0d792d3a8d71ab5cdf7cbed525d64c58b41e779ceac56ae0608ca2eac1346e86ba2e0ce5d64126cc57a50e6ab89253b2c1862ed6f5ca02e1591f6d

Loading…
Cancel
Save