Learn more about these different git repos.
Other Git URLs
The package python-sqlalchemy fails to create SRPM from Fedora Rawhide distgit.
The error is:
Running: copr-distgit-client srpm --outputdir /var/lib/copr-rpmbuild/results cmd: ['copr-distgit-client', 'srpm', '--outputdir', '/var/lib/copr-rpmbuild/results'] cwd: /var/lib/copr-rpmbuild/workspace/workdir-87yz1e_p/python-sqlalchemy rc: 1 stdout: stderr: INFO: Checked call: rpmbuild -bs /var/lib/copr-rpmbuild/workspace/workdir-87yz1e_p/python-sqlalchemy/./python-sqlalchemy.spec --define 'dist %nil' --define '_sourcedir /var/lib/copr-rpmbuild/workspace/workdir-87yz1e_p/python-sqlalchemy/.' --define '_srcrpmdir /var/lib/copr-rpmbuild/results' --define '_disable_source_fetch 1' error: line 74: %package -n python3-sqlalchemy+mssql : package python3-sqlalchemy+mssql already exists Traceback (most recent call last): File "/usr/bin/copr-distgit-client", line 10, in <module> main() File "/usr/lib/python3.9/site-packages/copr_distgit_client.py", line 336, in main srpm(args, config) File "/usr/lib/python3.9/site-packages/copr_distgit_client.py", line 267, in srpm check_call(command) File "/usr/lib/python3.9/site-packages/copr_distgit_client.py", line 40, in check_call subprocess.check_call(cmd) File "/usr/lib64/python3.9/subprocess.py", line 373, in check_call raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command '['rpmbuild', '-bs', '/var/lib/copr-rpmbuild/workspace/workdir-87yz1e_p/python-sqlalchemy/./python-sqlalchemy.spec', '--define', 'dist %nil', '--define', '_sourcedir /var/lib/copr-rpmbuild/workspace/workdir-87yz1e_p/python-sqlalchemy/.', '--define', '_srcrpmdir /var/lib/copr-rpmbuild/results', '--define', '_disable_source_fetch 1']' returned non-zero exit status 1. Copr build error: INFO: Checked call: rpmbuild -bs /var/lib/copr-rpmbuild/workspace/workdir-87yz1e_p/python-sqlalchemy/./python-sqlalchemy.spec --define 'dist %nil' --define '_sourcedir /var/lib/copr-rpmbuild/workspace/workdir-87yz1e_p/python-sqlalchemy/.' --define '_srcrpmdir /var/lib/copr-rpmbuild/results' --define '_disable_source_fetch 1' error: line 74: %package -n python3-sqlalchemy+mssql : package python3-sqlalchemy+mssql already exists Traceback (most recent call last): File "/usr/bin/copr-distgit-client", line 10, in <module> main() File "/usr/lib/python3.9/site-packages/copr_distgit_client.py", line 336, in main srpm(args, config) File "/usr/lib/python3.9/site-packages/copr_distgit_client.py", line 267, in srpm check_call(command) File "/usr/lib/python3.9/site-packages/copr_distgit_client.py", line 40, in check_call subprocess.check_call(cmd) File "/usr/lib64/python3.9/subprocess.py", line 373, in check_call raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command '['rpmbuild', '-bs', '/var/lib/copr-rpmbuild/workspace/workdir-87yz1e_p/python-sqlalchemy/./python-sqlalchemy.spec', '--define', 'dist %nil', '--define', '_sourcedir /var/lib/copr-rpmbuild/workspace/workdir-87yz1e_p/python-sqlalchemy/.', '--define', '_srcrpmdir /var/lib/copr-rpmbuild/results', '--define', '_disable_source_fetch 1']' returned non-zero exit status 1.
I cannot reproduce this locally with neither copr-distgit-client srpm nor rpmbuild -bs python-sqlalchemy.spec --define 'dist %nil' --define '_sourcedir .' --define '_disable_source_fetch 1'.
copr-distgit-client srpm
rpmbuild -bs python-sqlalchemy.spec --define 'dist %nil' --define '_sourcedir .' --define '_disable_source_fetch 1'
Could yu please help me debug this issue? E.g. what happens when you run this on the same wroker?
rpm --eval '%python_extras_subpkg -n python3-sqlalchemy -i %{python3_sitelib}/*.egg-info mssql_pymssql mssql_pyodbc'
And what is the version of python-srpm-macros?
There was a fix in python-srpm-macros wrt this months ago:
https://bodhi.fedoraproject.org/updates/FEDORA-2021-4afa5ada33 https://bodhi.fedoraproject.org/updates/FEDORA-2021-7aa3f311d5
I executed that rpm --eval on one of our builders
[root@ip- ~]# rpm --eval '%python_extras_subpkg -n python3-sqlalchemy -i %{python3_sitelib}/*.egg-info mssql_pymssql mssql_pyodbc' %package -n python3-sqlalchemy+mssql Summary: Metapackage for python3-sqlalchemy: mssql extras Requires: python3-sqlalchemy = %{version}-%{release} %description -n python3-sqlalchemy+mssql This is a metapackage bringing in mssql extras requires for python3-sqlalchemy. It contains no code, just makes sure the dependencies are installed. %files -n python3-sqlalchemy+mssql %ghost %{python3_sitelib}/*.egg-info %package -n python3-sqlalchemy+pymssql Summary: Metapackage for python3-sqlalchemy: pymssql extras Requires: python3-sqlalchemy = %{version}-%{release} %description -n python3-sqlalchemy+pymssql This is a metapackage bringing in pymssql extras requires for python3-sqlalchemy. It contains no code, just makes sure the dependencies are installed. %files -n python3-sqlalchemy+pymssql %ghost %{python3_sitelib}/*.egg-info %package -n python3-sqlalchemy+mssql Summary: Metapackage for python3-sqlalchemy: mssql extras Requires: python3-sqlalchemy = %{version}-%{release} %description -n python3-sqlalchemy+mssql This is a metapackage bringing in mssql extras requires for python3-sqlalchemy. It contains no code, just makes sure the dependencies are installed. %files -n python3-sqlalchemy+mssql %ghost %{python3_sitelib}/*.egg-info %package -n python3-sqlalchemy+pyodbc Summary: Metapackage for python3-sqlalchemy: pyodbc extras Requires: python3-sqlalchemy = %{version}-%{release} %description -n python3-sqlalchemy+pyodbc This is a metapackage bringing in pyodbc extras requires for python3-sqlalchemy. It contains no code, just makes sure the dependencies are installed. %files -n python3-sqlalchemy+pyodbc %ghost %{python3_sitelib}/*.egg-info
Here is the python-srpm-macros version we use on our builders.
[root@ip- ~]# dnf info python-srpm-macros Last metadata expiration check: 0:36:48 ago on Tue 11 May 2021 07:24:54 PM UTC. Installed Packages Name : python-srpm-macros Version : 3.9 Release : 11.fc33 Architecture : noarch Size : 33 k Source : python-rpm-macros-3.9-11.fc33.src.rpm Repository : @System From repo : updates Summary : RPM macros for building Python source packages License : MIT and Python Description : RPM macros for building Python source packages. Available Packages Name : python-srpm-macros Version : 3.9 Release : 15.fc33 Architecture : noarch Size : 21 k Source : python-rpm-macros-3.9-15.fc33.src.rpm Repository : updates Summary : RPM macros for building Python source packages License : MIT and Python Description : RPM macros for building Python source packages.
Thanks. The 3.9-11.fc33 version has a bug that has been fixed since. Could you please update to 3.9-15.fc33?
And as a long term solution, could the builders be regurarly updated?
I'm going to try the next week... I'm in the the process of preparation of another set of builders that we can use on separate hardware, and that is going to be F34. So while I'm on it I'll update everything to F34.
This would have consequences, sooner or later. We do update some sub-set of packages automatically (always when a frewsh builder VM is started), though we can not update everything to keep Copr (relatively) stable.
Do you think there are good reasons to keep updating this package? Perhaps we should put it on the allow-list.
I mean, this looks like a one-time problem, and we should be OK, right?
Updating builder images manually isn't usually a big deal, but since I'm in the middle of the other update process (inconsistencies in ansible.git) I don't want to unnecessarily risk.
The general problem here is that SRPM packages in Koji / on packager machines are built with up-to-date packages. When something is fixed in redhat-rpm-config or packages required by that one (usually *-srpm--macros), I'd expect Copr to include that fix, or problems might happen.
*-srpm--macros
This particular problem is a one-time-thing, however this might bte us at any time.
Specifically, I believe all *-srpm--macros should all be added to the allow-list.
FTR, I updated the builders to F34 - which brought also the newest packages there.
It is interesting how much arch dependant the rpmbuild -bs process is :-( though yeah. I bet it is low risk to update *rpm-macros automatically. Let's try...
rpmbuild -bs
*rpm-macros
Metadata Update from @praiskup: - Issue assigned to praiskup
Commit ec08934 fixes this issue
Log in to comment on this ticket.