Bug 1641191 - Please make pm_request available (and working) in koji
Summary: Please make pm_request available (and working) in koji
Keywords:
Status: CLOSED UPSTREAM
Alias: None
Product: Fedora
Classification: Fedora
Component: koji
Version: 31
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Mike McLean
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 1641252 1641253 1642840 1642844
Blocks: 1629371
TreeView+ depends on / blocked
 
Reported: 2018-10-19 20:35 UTC by Nicolas Mailhot
Modified: 2020-04-25 18:27 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-04-25 18:27:55 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Nicolas Mailhot 2018-10-19 20:35:07 UTC
So the Go (golang) ecosystem is a morass of fast-changing software, with massive code reuse, and components that get created/forked/renamed/deprecated at a fast pace. This is similar to other "modern" language ecosystems such as javascript.

This has led to mass-generation of Go spec files in Fedora from code analysis tools (and has prevented any form of official Fedora Go packaging guidelines).

However, generating specs outside rpm leads to specs that rot at a fast pace. No one really understands or audits the generated code, and as soon as you need to adapt it due to some upstream quirk you lose the ability to regenerate it cleanly.

And you can not ignore golang or javascript, the first is used by pretty much any container-oriented software, the other by pretty much anything that needs to present a web ui.

Therefore I've been trying for a year to put back the generation logic within rpm macros, so it's centralized, audited and and controlled by Fedora, and the generation logic is cleanly separated from human adaptations in the corresponding spec files.

For build requires, that means computing the code needs in %prep and getting mock to install the corresponding packages. The approach agreed on with FPC members and upstream mock was to use the pm_request mock plug-in and the corresponding logic written by the Java sig in javapackages.
https://github.com/rpm-software-management/mock/issues/160

Unfortunately the Java SIG code was too imbricated with Java specific things to be reusable so I ended up writing a separate mock pm request client
https://github.com/nim-nim/mock-install
https://copr.fedorainfracloud.org/coprs/nim/mock-install/
https://bugzilla.redhat.com/show_bug.cgi?id=1629371

And now I find out pm_request is not available in copr (don't know it it was before and has been removed since, or if it was never enabled because the java sig built its stuff elsewhere)

Anyway:
1. please enable pm_request in koji
2. please make sure that it works
https://github.com/rpm-software-management/mock/issues/218

How to test:
1. take a mock install binary from
https://copr.fedorainfracloud.org/coprs/nim/mock-install/
2. use any spec you like that calls mock-install <package-name> from %prep

Comment 1 Ben Cotton 2019-08-13 16:55:34 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 31 development cycle.
Changing version to '31'.

Comment 2 Ben Cotton 2019-08-13 19:42:46 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 31 development cycle.
Changing version to 31.

Comment 3 Kevin Fenzi 2020-04-25 18:27:55 UTC
This is a enhancement type of request and we prefer all such requests are handled upstream as we have no resources to do new development, nor do we want to diverge from upstream if possible. 

Would you be willing to refile this upstream at https://pagure.io/koji/issues ? 

If there's some reason you would prefer not to, I can do so, but note that you might have more interest in convincing koji developers to work on your request than I might. 

Thanks!


Note You need to log in before you can comment on or make changes to this bug.