From c3256936e457165f8c4ccf25fc53dfccb9cdcffb Mon Sep 17 00:00:00 2001 From: James Antill Date: Mar 09 2021 19:23:53 +0000 Subject: [PATCH 1/4] Merge remote-tracking branch 'carl/specfile' into builds * carl/specfile: (8 commits) Add centpkg-sig subpackage ... --- diff --git a/centpkg.spec b/centpkg.spec index 6e23b6a..6edc24b 100644 --- a/centpkg.spec +++ b/centpkg.spec @@ -1,56 +1,52 @@ -%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")} +Name: centpkg +Version: 0.4.6 +Release: 1%{?dist} +Summary: CentOS utility for working with dist-git +License: GPLv2+ +URL: https://git.centos.org/centos/centpkg +Source0: https://git.centos.org/centos/centpkg/archive/%{version}/centpkg-%{version}.tar.gz +BuildArch: noarch -Name: centpkg -Version: 0.4.6 -Release: 1%{?dist} -Summary: CentOS utility for working with dist-git +BuildRequires: python3-devel +BuildRequires: %{py3_dist setuptools} -Group: Applications/System -License: GPLv2+ -URL: https://git.centos.org/summary/centpkg.git -Source0: centpkg-%{version}.tar.gz -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root%(%{__id_u} -n) -# CentOS Distributed Packages -Requires: redhat-rpm-config -Requires: python-pycurl - -# EPEL Distributed Packages -Requires: pyrpkg >= 1.17 -Requires: koji +%description +Provides the centpkg command for working with dist-git -BuildArch: noarch -# CentOS Distributed build-requires -BuildRequires: python-devel, python-setuptools +%package sig +Summary: CentOS SIG utility for working with dist-git +Requires: %{name} = %{version}-%{release} -# EPEL Distributed build-requires -BuildRequires: pyrpkg -%description -Provides the centpkg and centpkg-sig commands for working with dist-git +%description sig +Provides the centpkg-sig command for working with dist-git. %prep -%setup -q -c +%autosetup %build -%{__python} setup.py build +%py3_build -%install -%{__python} setup.py install -O1 --skip-build --root %{buildroot} -%clean -rm -rf %{buildroot} +%install +%py3_install %files -%defattr(-,root,root,-) -%doc README.md COPYING -%config %{_sysconfdir}/rpkg/centpkg.conf -%config %{_sysconfdir}/rpkg/centpkg-sig.conf +%license COPYING +%doc README.md +%config(noreplace) %{_sysconfdir}/rpkg/centpkg.conf %{_bindir}/%{name} -%{python_sitelib}/* +%{python3_sitelib}/%{name} +%{python3_sitelib}/%{name}-%{version}-py%{python3_version}.egg-info + + +%files sig +%{_bindir}/%{name}-sig +%config(noreplace) %{_sysconfdir}/rpkg/centpkg-sig.conf %changelog @@ -80,7 +76,4 @@ rm -rf %{buildroot} - Update readme and add exception checking when running toplevel commands * Sat Jul 05 2014 Brian Stinson bstinson@ksu.edu - 0.1-1 -- Local builds and mockbuilds work - - - +- Local builds and mockbuilds work diff --git a/requirements.txt b/requirements.txt index 9d3d234..076daeb 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,2 +1,4 @@ +pycurl +pyOpenSSL rpkg -rpm +six From 8f33dd396470a56d18dfa8fed1eb0f715a7a5337 Mon Sep 17 00:00:00 2001 From: James Antill Date: Mar 09 2021 22:44:04 +0000 Subject: [PATCH 2/4] Add builder script to make development releases. --- diff --git a/.gitignore b/.gitignore index ba67d7d..163f0a1 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,7 @@ build dist *.egg-info *.pyc +*.src.rpm .ropeproject .pytest_cache test.conf diff --git a/b-srpm.sh b/b-srpm.sh new file mode 100755 index 0000000..325b4c6 --- /dev/null +++ b/b-srpm.sh @@ -0,0 +1,40 @@ +#! /bin/sh -e + +if [ "x$1" = "x" ]; then + echo "Building this way needs a devrel." + exit 1 +fi + +c=centpkg +p=$(pwd) + +echo "%define devrel $1" > c.spec +echo "%define devsnap $(date +'%Y%m%d')git.$(git show -q --format='%h')" >> c.spec +cat centpkg.spec >> c.spec + +ver=$(rpmspec -q \ + --qf '%{name} %{version}\n' \ + c.spec | \ + fgrep "centpkg " | awk '{ print $2 }') + +cd .. +mkdir $c-$ver +cp -a \ + $p/COPYING \ + $p/README.md \ + $p/requirements.txt \ + $p/setup.py \ + $p/src \ + $c-$ver +tar --exclude='*~' -cvf $c-$ver.tar $c-$ver +rm -rf $c-$ver +cd $p +mv ../$c-$ver.tar . +gzip -9 $c-$ver.tar + +rpmbuild \ + --define="_sourcedir $(pwd)" \ + --define="_srcrpmdir $(pwd)" \ + -bs c.spec + +rm $c-$ver.tar.gz c.spec diff --git a/centpkg.spec b/centpkg.spec index 6edc24b..f6603ab 100644 --- a/centpkg.spec +++ b/centpkg.spec @@ -1,6 +1,6 @@ Name: centpkg -Version: 0.4.6 -Release: 1%{?dist} +Version: %{!?devrel:0.4.6}%{?devrel:0.4.7} +Release: %{?devrel:0.%{devrel}%{?devsnap:.%{devsnap}}.}1%{?dist} Summary: CentOS utility for working with dist-git License: GPLv2+ URL: https://git.centos.org/centos/centpkg @@ -40,8 +40,7 @@ Provides the centpkg-sig command for working with dist-git. %doc README.md %config(noreplace) %{_sysconfdir}/rpkg/centpkg.conf %{_bindir}/%{name} -%{python3_sitelib}/%{name} -%{python3_sitelib}/%{name}-%{version}-py%{python3_version}.egg-info +%{python3_sitelib}/%{name}* %files sig From 0f7184767cfacb8055ff425af7b5d6f8dd662cd2 Mon Sep 17 00:00:00 2001 From: James Antill Date: Mar 09 2021 22:44:31 +0000 Subject: [PATCH 3/4] Fixup centos_cert for py3 compat. --- diff --git a/src/centpkg/centos_cert.py b/src/centpkg/centos_cert.py index 854f396..1d6e63f 100644 --- a/src/centpkg/centos_cert.py +++ b/src/centpkg/centos_cert.py @@ -1,3 +1,6 @@ + +from __future__ import print_function + import os from OpenSSL import crypto import urlgrabber @@ -40,10 +43,10 @@ def verify_cert(): delta = datetime.datetime.now() + datetime.timedelta(days=21) warn = datetime.datetime.strftime(delta, dateFmt) - print 'cert expires: %s-%s-%s' % (valid_until[:4], valid_until[4:6], valid_until[6:8]) + print('cert expires: %s-%s-%s' % (valid_until[:4], valid_until[4:6], valid_until[6:8])) if valid_until < warn: - print 'WARNING: Your cert expires soon.' + print('WARNING: Your cert expires soon.') def certificate_expired(): From cf286cee190638176c6c688ac217bb516b8b0a1c Mon Sep 17 00:00:00 2001 From: James Antill Date: Mar 10 2021 02:04:56 +0000 Subject: [PATCH 4/4] Workaround epel7 py3 problems. --- diff --git a/centpkg.spec b/centpkg.spec index f6603ab..445d916 100644 --- a/centpkg.spec +++ b/centpkg.spec @@ -8,8 +8,11 @@ Source0: https://git.centos.org/centos/centpkg/archive/%{version}/centpkg BuildArch: noarch BuildRequires: python3-devel +%if 0%{?rhel} > 0 && 0%{?rhel} < 8 +BuildRequires: python-setuptools +%else BuildRequires: %{py3_dist setuptools} - +%endif %description Provides the centpkg command for working with dist-git