update to upstream 1.13.0

remove old  changelog entries

Signed-off-by: Dennis Gilmore <dennis@ausil.us>
epel9
Dennis Gilmore 8 years ago
parent ea2a52e86a
commit 734acdb982

1
.gitignore vendored

@ -9,3 +9,4 @@ koji-1.4.0.tar.bz2
/koji-1.10.1.tar.bz2 /koji-1.10.1.tar.bz2
/koji-1.11.0.tar.bz2 /koji-1.11.0.tar.bz2
/koji-1.12.0.tar.bz2 /koji-1.12.0.tar.bz2
/koji-1.13.0.tar.bz2

@ -1,36 +0,0 @@
From 952465a544a0243b6112a10bfcfdffb1ad081fab Mon Sep 17 00:00:00 2001
From: Dennis Gilmore <dennis@ausil.us>
Date: Wed, 19 Apr 2017 14:51:19 -0500
Subject: [PATCH] allow kojid to start when not using ssl cert auth
kojid in koji 1.12.0 fails to start when not using ssl cert auth
Traceback (most recent call last):
File "/usr/sbin/kojid", line 5627, in <module>
if os.path.isfile(options.cert):
File "/usr/lib64/python2.7/genericpath.py", line 37, in isfile
st = os.stat(path)
TypeError: coercing to Unicode: need string or buffer, NoneType found
if you do not have a cert option defined we should move on. so add
to the if statement a check that the option is actually defined
Signed-off-by: Dennis Gilmore <dennis@ausil.us>
---
builder/kojid | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/builder/kojid b/builder/kojid
index 6f3837a..dd46d4a 100755
--- a/builder/kojid
+++ b/builder/kojid
@@ -5624,7 +5624,7 @@ if __name__ == "__main__":
#start a session and login
session_opts = koji.grab_session_options(options)
session = koji.ClientSession(options.server, session_opts)
- if os.path.isfile(options.cert):
+ if options.cert and os.path.isfile(options.cert):
try:
# authenticate using SSL client certificates
session.ssl_login(options.cert, None,
--
2.12.2

@ -1,226 +0,0 @@
From 2ed39c5e95a16fbc5d6c3fed7c7d7ff54d973e4c Mon Sep 17 00:00:00 2001
From: Tomas Kopecek <tkopecek@redhat.com>
Date: May 12 2017 07:52:42 +0000
Subject: [PATCH 1/5] remove non-printable characters in fixEncoding
Some real-world changelogs contains non-printable characters or invalid
unicode ones. xmlrpc fails on such strings, so we sanitize changelog
strings before passing it to client.
Related: https://pagure.io/koji/issue/349
---
diff --git a/hub/kojihub.py b/hub/kojihub.py
index 8c344f1..e7ad99f 100644
--- a/hub/kojihub.py
+++ b/hub/kojihub.py
@@ -9376,7 +9376,8 @@ class RootExports(object):
else:
results.append({'date': cldate, 'date_ts': cltime, 'author': clname, 'text': cltext})
- return _applyQueryOpts(results, queryOpts)
+ results = _applyQueryOpts(results, queryOpts)
+ return koji.fixEncodingRecurse(results)
def cancelBuild(self, buildID):
"""Cancel the build with the given buildID
diff --git a/koji/__init__.py b/koji/__init__.py
index 7bafee7..f3cc50f 100644
--- a/koji/__init__.py
+++ b/koji/__init__.py
@@ -2894,7 +2894,12 @@ def _taskLabel(taskInfo):
else:
return '%s (%s)' % (method, arch)
-def fixEncoding(value, fallback='iso8859-15'):
+NONPRINTABLE = ''.join([chr(x) for x in range(10) + range(11, 13) + range(14, 32) + [127]])
+def removeNonprintable(value):
+ # expects raw-encoded string, not unicode
+ return value.translate(None, NONPRINTABLE)
+
+def fixEncoding(value, fallback='iso8859-15', remove_nonprintable=True):
"""
Convert value to a 'str' object encoded as UTF-8.
If value is not valid UTF-8 to begin with, assume it is
@@ -2906,18 +2911,22 @@ def fixEncoding(value, fallback='iso8859-15'):
if isinstance(value, unicode):
# value is already unicode, so just convert it
# to a utf8-encoded str
- return value.encode('utf8')
+ s = value.encode('utf8')
else:
# value is a str, but may be encoded in utf8 or some
# other non-ascii charset. Try to verify it's utf8, and if not,
# decode it using the fallback encoding.
try:
- return value.decode('utf8').encode('utf8')
+ s = value.decode('utf8').encode('utf8')
except UnicodeDecodeError:
- return value.decode(fallback).encode('utf8')
+ s = value.decode(fallback).encode('utf8')
+ if remove_nonprintable:
+ return removeNonprintable(s)
+ else:
+ return s
-def fixEncodingRecurse(value, fallback='iso8859-15'):
+def fixEncodingRecurse(value, fallback='iso8859-15', remove_nonprintable=True):
"""Recursively fix string encoding in an object
Similar behavior to fixEncoding, but recursive
@@ -2934,15 +2943,22 @@ def fixEncodingRecurse(value, fallback='iso8859-15'):
ret[k] = v
return ret
elif isinstance(value, unicode):
- return value.encode('utf8')
+ if remove_nonprintable:
+ return removeNonprintable(value.encode('utf8'))
+ else:
+ return value.encode('utf8')
elif isinstance(value, str):
# value is a str, but may be encoded in utf8 or some
# other non-ascii charset. Try to verify it's utf8, and if not,
# decode it using the fallback encoding.
try:
- return value.decode('utf8').encode('utf8')
- except UnicodeDecodeError, err:
- return value.decode(fallback).encode('utf8')
+ s = value.decode('utf8').encode('utf8')
+ except UnicodeDecodeError:
+ s = value.decode(fallback).encode('utf8')
+ if remove_nonprintable:
+ return removeNonprintable(s)
+ else:
+ return s
else:
return value
From 6a1ea7d1dcd297d47da7d81e88474c3b2ac11e47 Mon Sep 17 00:00:00 2001
From: Tomas Kopecek <tkopecek@redhat.com>
Date: May 12 2017 07:52:42 +0000
Subject: [PATCH 2/5] less restrictive filter
---
diff --git a/koji/__init__.py b/koji/__init__.py
index f3cc50f..d35db93 100644
--- a/koji/__init__.py
+++ b/koji/__init__.py
@@ -2894,10 +2894,11 @@ def _taskLabel(taskInfo):
else:
return '%s (%s)' % (method, arch)
-NONPRINTABLE = ''.join([chr(x) for x in range(10) + range(11, 13) + range(14, 32) + [127]])
+CONTROL_CHARS = [chr(i) for i in range(32)]
+NONPRINTABLE_CHARS = ''.join([c for c in CONTROL_CHARS if c not in '\r\n\t'])
def removeNonprintable(value):
# expects raw-encoded string, not unicode
- return value.translate(None, NONPRINTABLE)
+ return value.translate(None, NONPRINTABLE_CHARS)
def fixEncoding(value, fallback='iso8859-15', remove_nonprintable=True):
"""
From a7b4389b81cb66816d4d93e0a4af0685dae01a83 Mon Sep 17 00:00:00 2001
From: Tomas Kopecek <tkopecek@redhat.com>
Date: May 12 2017 07:52:42 +0000
Subject: [PATCH 3/5] don't remove nonprintable characters by default
---
diff --git a/hub/kojihub.py b/hub/kojihub.py
index e7ad99f..3258f03 100644
--- a/hub/kojihub.py
+++ b/hub/kojihub.py
@@ -9377,7 +9377,7 @@ class RootExports(object):
results.append({'date': cldate, 'date_ts': cltime, 'author': clname, 'text': cltext})
results = _applyQueryOpts(results, queryOpts)
- return koji.fixEncodingRecurse(results)
+ return koji.fixEncodingRecurse(results, remove_nonprintable=True)
def cancelBuild(self, buildID):
"""Cancel the build with the given buildID
diff --git a/koji/__init__.py b/koji/__init__.py
index d35db93..fc6456f 100644
--- a/koji/__init__.py
+++ b/koji/__init__.py
@@ -2900,7 +2900,7 @@ def removeNonprintable(value):
# expects raw-encoded string, not unicode
return value.translate(None, NONPRINTABLE_CHARS)
-def fixEncoding(value, fallback='iso8859-15', remove_nonprintable=True):
+def fixEncoding(value, fallback='iso8859-15', remove_nonprintable=False):
"""
Convert value to a 'str' object encoded as UTF-8.
If value is not valid UTF-8 to begin with, assume it is
@@ -2927,7 +2927,7 @@ def fixEncoding(value, fallback='iso8859-15', remove_nonprintable=True):
return s
-def fixEncodingRecurse(value, fallback='iso8859-15', remove_nonprintable=True):
+def fixEncodingRecurse(value, fallback='iso8859-15', remove_nonprintable=False):
"""Recursively fix string encoding in an object
Similar behavior to fixEncoding, but recursive
From 356c026367c4ac24de940cacb48eabc117b485bc Mon Sep 17 00:00:00 2001
From: Tomas Kopecek <tkopecek@redhat.com>
Date: May 12 2017 07:52:42 +0000
Subject: [PATCH 4/5] propagate parameters recursively
---
diff --git a/koji/__init__.py b/koji/__init__.py
index fc6456f..84aceb0 100644
--- a/koji/__init__.py
+++ b/koji/__init__.py
@@ -2933,14 +2933,14 @@ def fixEncodingRecurse(value, fallback='iso8859-15', remove_nonprintable=False):
Similar behavior to fixEncoding, but recursive
"""
if isinstance(value, tuple):
- return tuple([fixEncodingRecurse(x) for x in value])
+ return tuple([fixEncodingRecurse(x, fallback=fallback, remove_nonprintable=remove_nonprintable) for x in value])
elif isinstance(value, list):
- return list([fixEncodingRecurse(x) for x in value])
+ return list([fixEncodingRecurse(x, fallback=fallback, remove_nonprintable=remove_nonprintable) for x in value])
elif isinstance(value, dict):
ret = {}
for k in value:
- v = fixEncodingRecurse(value[k])
- k = fixEncodingRecurse(k)
+ v = fixEncodingRecurse(value[k], fallback=fallback, remove_nonprintable=remove_nonprintable)
+ k = fixEncodingRecurse(k, fallback=fallback, remove_nonprintable=remove_nonprintable)
ret[k] = v
return ret
elif isinstance(value, unicode):
From 4d37db92502dd8098ebcb77ba28fc5fc71214f55 Mon Sep 17 00:00:00 2001
From: Tomas Kopecek <tkopecek@redhat.com>
Date: May 12 2017 07:58:03 +0000
Subject: [PATCH 5/5] remove non-printable characters from getRPMHeaders result
---
diff --git a/hub/kojihub.py b/hub/kojihub.py
index 3258f03..e3afce1 100644
--- a/hub/kojihub.py
+++ b/hub/kojihub.py
@@ -9885,7 +9885,7 @@ class RootExports(object):
headers = koji.get_header_fields(rpm_path, headers)
for key, value in headers.items():
if isinstance(value, basestring):
- headers[key] = koji.fixEncoding(value)
+ headers[key] = koji.fixEncoding(value, remove_nonprintable=True)
return headers
queryRPMSigs = staticmethod(query_rpm_sigs)

@ -1,30 +0,0 @@
From 8c53aa3933cf51abd326ba5bc5811d04cf19488a Mon Sep 17 00:00:00 2001
From: Patrick Uiterwijk <puiterwijk@redhat.com>
Date: Jun 03 2017 23:17:44 +0000
Subject: Make sure to fix encoding all RPM Headers
The fix in #403 left some RPM Headers unfixed, most notably changelog* (because those are lists).
This patch makes use of fixEncodingRecurse to make sure all heades get encoded correctly.
Signed-off-by: Patrick Uiterwijk <puiterwijk@redhat.com>
---
diff --git a/hub/kojihub.py b/hub/kojihub.py
index 05dfb27..6257f20 100644
--- a/hub/kojihub.py
+++ b/hub/kojihub.py
@@ -9878,10 +9878,7 @@ class RootExports(object):
raise koji.GenericError('either rpmID or taskID and filepath must be specified')
headers = koji.get_header_fields(rpm_path, headers)
- for key, value in headers.items():
- if isinstance(value, basestring):
- headers[key] = koji.fixEncoding(value, remove_nonprintable=True)
- return headers
+ return koji.fixEncodingRecurse(headers, remove_nonprintable=True)
queryRPMSigs = staticmethod(query_rpm_sigs)

@ -1,58 +0,0 @@
From 5a23afaeeb1c54ccfb86e20b1f35c0215635536a Mon Sep 17 00:00:00 2001
From: Patrick Uiterwijk <puiterwijk@redhat.com>
Date: May 04 2017 14:02:58 +0000
Subject: Make proxyuser consistent between ssl and krb
Currently, krb would expect a krb principal where ssl expects a username.
This makes krb use the username, but also accept the krb_principal for
backwards compatibility.
Signed-off-by: Patrick Uiterwijk <puiterwijk@redhat.com>
---
diff --git a/koji/auth.py b/koji/auth.py
index 3cba331..105f998 100644
--- a/koji/auth.py
+++ b/koji/auth.py
@@ -328,10 +328,14 @@ class Session(object):
login_principal = cprinc.name
user_id = self.getUserIdFromKerberos(login_principal)
if not user_id:
- if context.opts.get('LoginCreatesUser'):
- user_id = self.createUserFromKerberos(login_principal)
- else:
- raise koji.AuthError('Unknown Kerberos principal: %s' % login_principal)
+ user_id = self.getUserId(login_principal)
+ if not user_id:
+ # Only do autocreate if we also couldn't find by username AND the proxyuser
+ # looks like a krb5 principal
+ if context.opts.get('LoginCreatesUser') and '@' in login_principal:
+ user_id = self.createUserFromKerberos(login_principal)
+ else:
+ raise koji.AuthError('Unknown Kerberos principal: %s' % login_principal)
self.checkLoginAllowed(user_id)
@@ -575,6 +579,19 @@ class Session(object):
#for compatibility
return self.host_id
+ def getUserId(self, username):
+ """Return the user ID associated with a particular username. If no user
+ with the given username if found, return None."""
+ c = context.cnx.cursor()
+ q = """SELECT id FROM users WHERE name = %(username)s"""
+ c.execute(q, locals())
+ r = c.fetchone()
+ c.close()
+ if r:
+ return r[0]
+ else:
+ return None
+
def getUserIdFromKerberos(self, krb_principal):
"""Return the user ID associated with a particular Kerberos principal.
If no user with the given princpal if found, return None."""

@ -1,22 +0,0 @@
From 5bcf029d037a673e013211445cc6ac892c6ed11e Mon Sep 17 00:00:00 2001
From: Tomas Kopecek <tkopecek@redhat.com>
Date: May 19 2017 10:47:51 +0000
Subject: don't inspect results for failed createImage tasks
---
diff --git a/builder/kojid b/builder/kojid
index 1a10483..235cbeb 100755
--- a/builder/kojid
+++ b/builder/kojid
@@ -2228,6 +2228,8 @@ class BuildBaseImageTask(BuildImageTask):
if 'kickstart' in opts:
saw_ks = False
for arch in results.keys():
+ if arch in ignored_arches:
+ continue
ks = os.path.basename(opts.get('kickstart'))
if ks in results[arch]['files']:
if saw_ks:

@ -1,32 +0,0 @@
From 7ec0e2c6b01f27f7a23546c64d775a1befd722e4 Mon Sep 17 00:00:00 2001
From: Patrick Uiterwijk <puiterwijk@redhat.com>
Date: May 04 2017 14:02:58 +0000
Subject: Make sslLogin use getUserId
Signed-off-by: Patrick Uiterwijk <puiterwijk@redhat.com>
---
diff --git a/koji/auth.py b/koji/auth.py
index 105f998..6044590 100644
--- a/koji/auth.py
+++ b/koji/auth.py
@@ -401,14 +401,8 @@ class Session(object):
else:
raise koji.AuthError('%s is not authorized to login other users' % client_dn)
- cursor = context.cnx.cursor()
- query = """SELECT id FROM users
- WHERE name = %(username)s"""
- cursor.execute(query, locals())
- result = cursor.fetchone()
- if result:
- user_id = result[0]
- else:
+ user_id = self.getUserId(username)
+ if not user_id:
if context.opts.get('LoginCreatesUser'):
user_id = self.createUser(username)
else:

@ -1,6 +1,6 @@
--- koji-1.12.0/cli/koji.conf.orig 2017-04-18 14:35:15.879593521 -0500 --- koji-1.13.0/cli/koji.conf.fedoraconfig 2017-06-30 14:00:26.000000000 -0500
+++ koji-1.12.0/cli/koji.conf 2017-04-18 14:37:45.818233378 -0500 +++ koji-1.13.0/cli/koji.conf 2017-07-03 12:41:55.615758878 -0500
@@ -3,18 +3,20 @@ @@ -3,18 +3,23 @@
;configuration for koji cli tool ;configuration for koji cli tool
;url of XMLRPC server ;url of XMLRPC server
@ -18,16 +18,19 @@
;path to the koji top directory ;path to the koji top directory
;topdir = /mnt/koji ;topdir = /mnt/koji
+; use the fast upload feature of koji by default
+use_fast_upload = yes
+
;configuration for Kerberos authentication ;configuration for Kerberos authentication
+authtype = kerberos +authtype = kerberos
+krb_rdns = false +krb_rdns = false
;the service name of the principal being used by the hub ;the service name of the principal being used by the hub
;krbservice = host ;krbservice = host
@@ -25,10 +27,4 @@ @@ -25,13 +30,6 @@
;the keytab to auth as for automated clients ;the keytab to auth as for automated clients
;keytab = /etc/krb5.keytab ;keytab = /etc/krb5.keytab
-;configuration for SSL authentication -;configuration for SSL authentication
- -
-;client certificate -;client certificate
@ -35,4 +38,9 @@
- -
-;certificate of the CA that issued the HTTP server certificate -;certificate of the CA that issued the HTTP server certificate
-;serverca = ~/.koji/serverca.crt -;serverca = ~/.koji/serverca.crt
+use_fast_upload = yes -
-;enabled plugins for CLI, runroot and save_failed_tree are available
-;plugins =
+;enabled plugins for CLI, runroot is enabled by deafult for fedora
+;save_failed_tree is available
+plugins = runroot

@ -1,4 +1,21 @@
%{!?python_sitelib: %define python_sitelib %(%{__python} -c "from %distutils.sysconfig import get_python_lib; print(get_python_lib())")} # Enable Python 3 builds for Fedora + EPEL >5
# NOTE: do **NOT** change 'epel' to 'rhel' here, as this spec is also
%if 0%{?fedora} || 0%{?epel} > 5
%bcond_without python3
# If the definition isn't available for python3_pkgversion, define it
%{?!python3_pkgversion:%global python3_pkgversion 3}
%else
%bcond_with python3
%endif
# Compatibility with RHEL. These macros have been added to EPEL but
# not yet to RHEL proper.
# https://bugzilla.redhat.com/show_bug.cgi?id=1307190
%{!?__python2: %global __python2 /usr/bin/python2}
%{!?python2_sitelib: %global python2_sitelib %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")}
%{!?python2_sitearch: %global python2_sitearch %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
%{!?py2_build: %global py2_build %{expand: CFLAGS="%{optflags}" %{__python2} setup.py %{?py_setup_args} build --executable="%{__python2} -s"}}
%{!?py2_install: %global py2_install %{expand: CFLAGS="%{optflags}" %{__python2} setup.py %{?py_setup_args} install -O1 --skip-build --root %{buildroot}}}
%if 0%{?fedora} || 0%{?rhel} >= 7 %if 0%{?fedora} || 0%{?rhel} >= 7
%global use_systemd 1 %global use_systemd 1
@ -8,8 +25,8 @@
%endif %endif
Name: koji Name: koji
Version: 1.12.0 Version: 1.13.0
Release: 6%{?dist} Release: 1%{?dist}
# koji.ssl libs (from plague) are GPLv2+ # koji.ssl libs (from plague) are GPLv2+
License: LGPLv2 and GPLv2+ License: LGPLv2 and GPLv2+
Summary: Build system tools Summary: Build system tools
@ -17,43 +34,85 @@ Group: Applications/System
URL: https://pagure.io/koji/ URL: https://pagure.io/koji/
Source0: https://releases.pagure.org/koji/koji-%{version}.tar.bz2 Source0: https://releases.pagure.org/koji/koji-%{version}.tar.bz2
Patch1: 0001-allow-kojid-to-start-when-not-using-ssl-cert-auth.patch
# https://pagure.io/koji/c/5a23afaeeb1c54ccfb86e20b1f35c0215635536a?branch=master
Patch2: 5a23afaeeb1c54ccfb86e20b1f35c0215635536a.patch
# https://pagure.io/koji/c/7ec0e2c6b01f27f7a23546c64d775a1befd722e4?branch=master
Patch3: 7ec0e2c6b01f27f7a23546c64d775a1befd722e4.patch
# https://pagure.io/koji/c/5bcf029d037a673e013211445cc6ac892c6ed11e?branch=master
Patch4: 5bcf029d037a673e013211445cc6ac892c6ed11e.patch
# https://pagure.io/koji/pull-request/403.patch
Patch5: 403.patch
# https://pagure.io/koji/pull-request/449.patch
Patch6: 449.patch
# Not upstreamable # Not upstreamable
Patch100: fedora-config.patch Patch100: fedora-config.patch
BuildArch: noarch BuildArch: noarch
Requires: python-krbV >= 1.0.13 %if 0%{with python3}
Requires: rpm-python Requires: python3-%{name} = %{version}-%{release}
Requires: pyOpenSSL Requires: python3-pycurl
Requires: python-requests Requires: python3-libcomps
Requires: python-requests-kerberos %else
Requires: python-urlgrabber Requires: python2-%{name} = %{version}-%{release}
Requires: python-dateutil Requires: python2-pycurl
%if 0%{?fedora} || 0%{?rhel} >= 7
Requires: python2-libcomps
%endif
%endif
BuildRequires: python BuildRequires: python
BuildRequires: python-sphinx BuildRequires: python-sphinx
%if %{use_systemd} %if %{use_systemd}
BuildRequires: systemd BuildRequires: systemd
BuildRequires: pkgconfig BuildRequires: pkgconfig
%endif %endif
%if 0%{?fedora} || 0%{?rhel} >= 7
Requires: python-libcomps
%endif
%description %description
Koji is a system for building and tracking RPMS. The base package Koji is a system for building and tracking RPMS. The base package
contains shared libraries and the command-line interface. contains shared libraries and the command-line interface.
%package -n python2-%{name}
Summary: Build system tools python library
%{?python_provide:%python_provide python2-%{name}}
BuildRequires: python2-devel
Requires: python-krbV >= 1.0.13
Requires: rpm-python
Requires: pyOpenSSL
Requires: python-requests
Requires: python-requests-kerberos
Requires: python-dateutil
Requires: python-six
%description -n python2-%{name}
Koji is a system for building and tracking RPMS. The base package
contains shared libraries and the command-line interface.
%if 0%{with python3}
%package -n python3-%{name}
Summary: Build system tools python library
%{?python_provide:%python_provide python3-%{name}}
BuildRequires: python3-devel
Requires: python3-rpm
Requires: python3-pyOpenSSL
Requires: python3-requests
Requires: python3-requests-kerberos
Requires: python3-dateutil
Requires: python3-six
%description -n python3-%{name}
Koji is a system for building and tracking RPMS. The base package
contains shared libraries and the command-line interface.
%endif
%package -n python2-%{name}-cli-plugins
Summary: Koji client plugins
Group: Applications/Internet
License: LGPLv2
Requires: %{name} = %{version}-%{release}
%description -n python2-%{name}-cli-plugins
Plugins to the koji command-line interface
%if 0%{with python3}
%package -n python3-%{name}-cli-plugins
Summary: Koji client plugins
Group: Applications/Internet
License: LGPLv2
Requires: %{name} = %{version}-%{release}
%description -n python3-%{name}-cli-plugins
Plugins to the koji command-line interface
%endif
%package hub %package hub
Summary: Koji XMLRPC interface Summary: Koji XMLRPC interface
Group: Applications/Internet Group: Applications/Internet
@ -166,12 +225,6 @@ koji-web is a web UI to the Koji system.
%prep %prep
%setup -q %setup -q
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch100 -p1 -b .fedoraconfig %patch100 -p1 -b .fedoraconfig
%build %build
@ -179,6 +232,16 @@ koji-web is a web UI to the Koji system.
%install %install
rm -rf $RPM_BUILD_ROOT rm -rf $RPM_BUILD_ROOT
make DESTDIR=$RPM_BUILD_ROOT %{?install_opt} install make DESTDIR=$RPM_BUILD_ROOT %{?install_opt} install
%if 0%{with python3}
cd koji
make DESTDIR=$RPM_BUILD_ROOT PYTHON=python3 %{?install_opt} install
cd ../cli
make DESTDIR=$RPM_BUILD_ROOT PYTHON=python3 %{?install_opt} install
cd ../plugins
make DESTDIR=$RPM_BUILD_ROOT PYTHON=python3 %{?install_opt} install
# alter python interpreter in koji CLI
sed -i 's/\#\!\/usr\/bin\/python/\#\!\/usr\/bin\/python3/' $RPM_BUILD_ROOT/usr/bin/koji
%endif
%clean %clean
rm -rf $RPM_BUILD_ROOT rm -rf $RPM_BUILD_ROOT
@ -186,11 +249,37 @@ rm -rf $RPM_BUILD_ROOT
%files %files
%defattr(-,root,root) %defattr(-,root,root)
%{_bindir}/* %{_bindir}/*
%{python_sitelib}/%{name}
%config(noreplace) /etc/koji.conf %config(noreplace) /etc/koji.conf
%dir /etc/koji.conf.d %dir /etc/koji.conf.d
%doc docs Authors COPYING LGPL %doc docs Authors COPYING LGPL
%files -n python2-%{name}
%defattr(-,root,root)
%{python2_sitelib}/%{name}
%{python2_sitelib}/koji_cli
%if 0%{with python3}
%files -n python%{python3_pkgversion}-koji
%{python3_sitelib}/%{name}
%{python3_sitelib}/koji_cli
%endif
%files -n python2-%{name}-cli-plugins
%defattr(-,root,root)
%{python2_sitelib}/koji_cli_plugins
# we don't have config files for default plugins yet
#%%dir %{_sysconfdir}/koji/plugins
#%%config(noreplace) %{_sysconfdir}/koji/plugins/*.conf
%if 0%{with python3}
%files -n python%{python3_pkgversion}-%{name}-cli-plugins
%defattr(-,root,root)
%{python3_sitelib}/koji_cli_plugins
# we don't have config files for default plugins yet
#%%dir %{_sysconfdir}/koji/plugins
#%%config(noreplace) %{_sysconfdir}/koji/plugins/*.conf
%endif
%files hub %files hub
%defattr(-,root,root) %defattr(-,root,root)
%{_datadir}/koji-hub %{_datadir}/koji-hub
@ -341,335 +430,6 @@ fi
%endif %endif
%changelog %changelog
* Wed Jun 14 2017 Dennis Gilmore <dennis@ausil.us> - 1.12.0-6 * Mon Jul 03 2017 Dennis Gilmore <dennis@ausil.us> - 1.13.0-1
- change koji-web requires from mod_auth_kerb to mod_auth_gssapi - update to upstream 1.13.0
- remove old changelog entries
* Sat Jun 03 2017 Patrick Uiterwijk <puiterwijk@redhat.com> - 1.12.0-5
- Add patch for completing #349 fix
* Sat Jun 03 2017 Patrick Uiterwijk <puiterwijk@redhat.com> - 1.12.0-4
- Add upstreamed patch for #349
* Tue May 23 2017 Dennis Gilmore <dennis@ausil.us> - 1.12.0-3
- add some upstreamed patches needed to fix some things in fedora
* Wed Apr 19 2017 Dennis Gilmore <dennis@ausil.us> - 1.12.0-2
- add patch so that kojid starts without ssl auth configured
* Tue Apr 18 2017 Dennis Gilmore <dennis@ausil.us> - 1.12.0-1
- update to upstream 1.12.0
- remove rhel 5 conditionals as its no longer supported in epel
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.11.0-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Sun Jan 08 2017 Till Maas <opensource@till.name> - 1.11.0-5
- Do not apply faulty CheckClientIP patch
* Sun Jan 08 2017 Till Maas <opensource@till.name> - 1.11.0-4
- Add patch for keytab kerberos client config
- Move non upstreamable Fedora patch to the end to ease rebasing to future
upstream release
- Move license comment before license tag
* Sat Jan 07 2017 Till Maas <opensource@till.name> - 1.11.0-3
- Add patches for proxy IP forwarding
* Fri Jan 06 2017 Till Maas <opensource@till.name> - 1.11.0-2
- Update upstream URLs
- Add upstream koji-gc kerberos patches
- Use Source0
* Fri Dec 09 2016 Dennis Gilmore <dennis@ausil.us> - 1.11.0-1
- update to 1.11.0
- setup fedora config for kerberos and flag day
* Wed Sep 28 2016 Adam Miller <maxamillion@fedoraproject.org> - 1.10.1-13
- Patch new-chroot functionality into runroot plugin
* Tue Aug 23 2016 Dennis Gilmore <dennis@ausil.us> - 1.10.1-12
- add patch to disable bind mounting into image tasks chroots
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10.1-11
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
* Thu May 26 2016 Dennis Gilmore <dennis@ausil.us> - 1.10.1-10
- add patch to enable dns in runroot chroots
* Tue May 24 2016 Dennis Gilmore <dennis@ausil.us> - 1.10.1-9
- update to git master upstream, add lmc cosmetic fixes
- add patch to disable login in koji-web
* Fri Apr 08 2016 Dennis Gilmore <dennis@ausil.us> - 1.10.1-8
- do not remove the - for project on livemedia
- fix the sending of messages on image completion
* Thu Apr 07 2016 Dennis Gilmore <dennis@ausil.us> - 1.10.1-7
- --product had to be --project
- add missing Requires for koji-builder on python2-multilib
* Wed Apr 06 2016 Dennis Gilmore <dennis@ausil.us> - 1.10.1-6
- add --product to livemedia-creator calls rhbz#1315110
* Wed Apr 06 2016 Dennis Gilmore <dennis@ausil.us> - 1.10.1-5
- enable dns in runroots
- add koji signed repo support
- Run plugin callbacks when image builds finish
* Thu Mar 03 2016 Dennis Gilmore <dennis@ausil.us> - 1.10.1-4
- add a patch to install the runroot builder plugin in the correct place
* Tue Mar 01 2016 Dennis Gilmore <dennis@ausil.us> - 1.10.1-3
- update to git e8201aac8294e6125a73504886b0800041b58868
- https://pagure.io/fork/ausil/koji/branch/fedora-infra
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.10.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Tue Nov 17 2015 Dennis Gilmore <dennis@ausil.us> - 1.10.1-1
- update to 1.10.1
- Requires yum in the cli rhbz#1230888
* Thu Sep 24 2015 Kalev Lember <klember@redhat.com> - 1.10.0-2
- Backport two patches to fix ClientSession SSL errors
* Thu Jul 16 2015 Dennis Gilmore <dennis@ausil.us> - 1.10.0=1
- update to 1.10.0 release
* Mon Jul 06 2015 Dennis Gilmore <dennis@ausil.us> - 1.9.0-13.20150607gitf426fdb
- update the git snapshot to latest head
- enable systemd units for f23 up
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.9.0-12.20150423git52a0188
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Thu Apr 23 2015 Dennis Gilmore <dennis@ausil.us> - 1.9.0-11.20150423git52a0188
- update to latest git
* Tue Jan 27 2015 Dennis Gilmore <dennis@ausil.us> - 1.9.0-10.gitcd45e886
- update to git tarball
* Thu Dec 11 2014 Dennis Gilmore <dennis@ausil.us> - 1.9.0-9
- add upstream patch switching to TLS1 from sslv3
* Tue Sep 30 2014 Dennis Gilmore <dennis@ausil.us> - 1.9.0-8
- don't exclude koji-vm from ppc and ppc64
* Fri Sep 26 2014 Till Maas <opensource@till.name> - 1.9.0-7
- Use https for kojipkgs
- Update URL
* Mon Aug 04 2014 Dennis Gilmore <dennis@ausil.us> - 1.9.0-6
- add patch to fix kickstart parsing
* Mon Aug 04 2014 Dennis Gilmore <dennis@ausil.us> - 1.9.0-5
- add upstream patches for better docker support
* Tue Jul 29 2014 Dennis Gilmore <dennis@ausil.us> - 1.9.0-4
- add upstream patch to compress docker images
* Thu Jun 12 2014 Dennis Gilmore <dennis@ausil.us> - 1.9.0-3
- add patch to move builder workdir to /var/tmp
- add support for making raw.xz images
* Sun Jun 08 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.9.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Mon Mar 24 2014 Dennis Gilmore <dennis@ausil.us> - 1.9.0-1
- update to upstream 1.9.0
* Wed Jul 31 2013 Dennis Gilmore <dennis@ausil.us> - 1.8.0-2
- update from git snapshot
* Mon Apr 01 2013 Dennis Gilmore <dennis@ausil.us> - 1.8.0-1
- update to upstream 1.8.0
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.7.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Sun Jan 20 2013 Dennis Gilmore <dennis@ausil.us> - 1.7.1-2
- revert "avoid baseurl option in createrepo" patch
- fix integer overflow issue in checkUpload handler
* Wed Nov 21 2012 Dennis Gilmore <dennis@ausil.us> - 1.7.1-1
- update to upstream 1.7.1 release
* Sat Sep 01 2012 Dennis Gilmore <dennis@ausil.us> - 1.7.0-7
- add patch to mount all of /dev on appliances and lives
* Fri Aug 31 2012 Dennis Gilmore <dennis@ausil.us> - 1.7.0-4
- add patch to only make /dev/urandom if it doesnt exist
- add upstream patch for taginfo fixes with older servers
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.7.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Tue Jun 05 2012 Dennis Gilmore <dennis@ausil.us> - 1.7.0-2
- use topurl not pkgurl in the fedora config
* Fri Jun 01 2012 Dennis Gilmore <dennis@ausil.us> - 1.7.0-1
- update to 1.7.0 many bugfixes and improvements
- now uses mod_wsgi
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Fri Dec 17 2010 Dennis Gilmore <dennis@ausil.us> - 1.6.0-1
- update to 1.6.0
* Wed Dec 01 2010 Dennis Gilmore <dennis@ausil.us> - 1.5.0-1
- update to 1.5.0
* Tue Aug 3 2010 David Malcolm <dmalcolm@redhat.com> - 1.4.0-4
- fix python 2.7 incompatibilities (rhbz 619276)
* Wed Jul 21 2010 David Malcolm <dmalcolm@redhat.com> - 1.4.0-3
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild
* Sat Jul 10 2010 Dennis Gilmore <dennis@ausil.us> - 1.4.0-2
- add missing Requires: python-cheetah from koji-builder
* Fri Jul 09 2010 Dennis Gilmore <dennis@ausil.us> - 1.4.0-1
- update to 1.4.0
- Merge mead branch: support for building jars with Maven *
- support for building appliance images *
- soft dependencies for LiveCD/Appliance features
- smarter prioritization of repo regenerations
- package list policy to determine if package list changes are allowed
- channel policy to determine which channel a task is placed in
- edit host data via webui
- description and comment fields for hosts *
- cleaner log entries for kojihub
- track user data in versioned tables *
- allow setting retry parameters for the cli
- track start time for tasks *
- allow packages built from the same srpm to span multiple external repos
- make the command used to fetch sources configuable per repo
- kojira: remove unexpected directories
- let kojid to decide if it can handle a noarch task
- avoid extraneous ssl handshakes
- schema changes to support starred items
* Fri Nov 20 2009 Dennis Gilmore <dennis@ausil.us> - 1.3.2-1
- update to 1.3.2
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Fri Feb 20 2009 Dennis Gilmore <dennis@ausil.us> - 1.3.1-1
- update to 1.3.1
* Wed Feb 18 2009 Dennis Gilmore <dennis@ausil.us> - 1.3.0-1
- update to 1.3.0
* Sat Nov 29 2008 Ignacio Vazquez-Abrams <ivazqueznet+rpm@gmail.com> - 1.2.6-2
- Rebuild for Python 2.6
* Mon Aug 25 2008 Dennis Gilmore <dennis@ausil.us> - 1.2.6-1
- update to 1.2.6
- make sure we have to correct version of createrepo on Fedora 8
* Tue Aug 5 2008 Tom "spot" Callaway <tcallawa@redhat.com> 1.2.5-2
- fix conditional (line 5)
- fix license tag
* Fri Jan 25 2008 jkeating <jkeating@redhat.com> 1.2.5-1
- Put createrepo arguments in correct order
* Thu Jan 24 2008 jkeating <jkeating@redhat.com> 1.2.4-1
- Use the --skip-stat flag in createrepo calls.
- canonicalize tag arches before using them (dgilmore)
- fix return value of delete_build
- Revert to getfile urls if the task is not successful in emails
- Pass --target instead of --arch to mock.
- ignore trashcan tag in prune-signed-copies command
- add the "allowed_scms" kojid parameter
- allow filtering builds by the person who built them
* Fri Dec 14 2007 jkeating <jkeating@redhat.com> 1.2.3-1
- New upstream release with lots of updates, bugfixes, and enhancements.
* Tue Jun 5 2007 Mike Bonnet <mikeb@redhat.com> - 1.2.2-1
- only allow admins to perform non-scratch builds from srpm
- bug fixes to the cmd-line and web UIs
* Thu May 31 2007 Mike Bonnet <mikeb@redhat.com> - 1.2.1-1
- don't allow ExclusiveArch to expand the archlist (bz#239359)
- add a summary line stating whether the task succeeded or failed to the end of the "watch-task" output
- add a search box to the header of every page in the web UI
- new koji download-build command (patch provided by Dan Berrange)
* Tue May 15 2007 Mike Bonnet <mikeb@redhat.com> - 1.2.0-1
- change version numbering to a 3-token scheme
- install the koji favicon
* Mon May 14 2007 Mike Bonnet <mikeb@redhat.com> - 1.1-5
- cleanup koji-utils Requires
- fix encoding and formatting in email notifications
- expand archlist based on ExclusiveArch/BuildArchs
- allow import of rpms without srpms
- commit before linking in prepRepo to release db locks
- remove exec bit from kojid logs and uploaded files (patch by Enrico Scholz)
* Tue May 1 2007 Mike Bonnet <mikeb@redhat.com> - 1.1-4
- remove spurious Requires: from the koji-utils package
* Tue May 1 2007 Mike Bonnet <mikeb@redhat.com> - 1.1-3
- fix typo in BuildNotificationTask (patch provided by Michael Schwendt)
- add the --changelog param to the buildinfo command
- always send email notifications to the package builder and package owner
- improvements to the web UI
* Tue Apr 17 2007 Mike Bonnet <mikeb@redhat.com> - 1.1-2
- re-enable use of the --update flag to createrepo
* Mon Apr 09 2007 Jesse Keating <jkeating@redhat.com> 1.1-1
- make the output listPackages() consistent regardless of with_dups
- prevent large batches of repo deletes from holding up regens
- allow sorting the host list by arches
* Mon Apr 02 2007 Jesse Keating <jkeating@redhat.com> 1.0-1
- Release 1.0!
* Wed Mar 28 2007 Mike Bonnet <mikeb@redhat.com> - 0.9.7-4
- set SSL connection timeout to 12 hours
* Wed Mar 28 2007 Mike Bonnet <mikeb@redhat.com> - 0.9.7-3
- avoid SSL renegotiation
- improve log file handling in kojid
- bug fixes in command-line and web UI
* Sun Mar 25 2007 Mike Bonnet <mikeb@redhat.com> - 0.9.7-2
- enable http access to packages in kojid
- add Requires: pyOpenSSL
- building srpms from CVS now works with the Extras CVS structure
- fixes to the chain-build command
- bug fixes in the XML-RPC and web interfaces
* Tue Mar 20 2007 Jesse Keating <jkeating@redhat.com> - 0.9.7-1
- Package up the needed ssl files
* Tue Mar 20 2007 Jesse Keating <jkeating@redhat.com> - 0.9.6-1
- 0.9.6 release, mostly ssl auth stuff
- use named directories for config stuff
- remove -3 requires on creatrepo, don't need that specific anymore
* Tue Feb 20 2007 Jesse Keating <jkeating@redhat.com> - 0.9.5-8
- Add Authors COPYING LGPL to the docs of the main package
* Tue Feb 20 2007 Jesse Keating <jkeating@redhat.com> - 0.9.5-7
- Move web files from /var/www to /usr/share
- Use -p in install calls
- Add rpm-python to requires for koji
* Mon Feb 19 2007 Jesse Keating <jkeating@redhat.com> - 0.9.5-6
- Clean up spec for package review
* Sun Feb 04 2007 Mike McLean <mikem@redhat.com> - 0.9.5-1
- project renamed to koji

@ -1 +1 @@
SHA512 (koji-1.12.0.tar.bz2) = 8898de9715c3d7bf828817eacfae55166d654ec8e561f3b1406b9208072af2ca277aeaf9e753d82938a4170aa261bf3d5f7c868142cbe9668e2e149c7f747cc8 SHA512 (koji-1.13.0.tar.bz2) = be275566d48ebbcec1446bc6e49fae4be3694dd6afe233a35f787fb98e9763048f2452fedfb6b7de43e593a3617e7e65ab934d518cb1bd85cd806f9a650c81f1

Loading…
Cancel
Save