Bug 1690928 - [modularity]: buildorder not respected
Summary: [modularity]: buildorder not respected
Keywords:
Status: CLOSED UPSTREAM
Alias: None
Product: Copr
Classification: Community
Component: backend
Version: unspecified
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Miroslav Suchý
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-03-20 13:37 UTC by Alex Scheel
Modified: 2019-03-21 06:53 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-03-21 06:53:28 UTC
Embargoed:


Attachments (Terms of Use)

Description Alex Scheel 2019-03-20 13:37:34 UTC
I initially filed this at https://pagure.io/copr/copr/issue/599, but realized this is probably the better place to file it. Feel free to close that issue if it is misplaced. 

I triggered a module build as follows:

$ copr-cli build-module --url https://src.fedoraproject.org/modules/pki/raw/10.6/f/pki.yaml  testing-pki-module
Created module pki-master-20190319195820


Per libmodulemd/spec.v2.yaml (https://github.com/fedora-modularity/libmodulemd/blob/master/spec.v2.yaml#L293-L304), these packages should be built in the following groups (https://src.fedoraproject.org/modules/pki/blob/5481137b5f5490825ff9eeb55ca0277e65914394/f/pki.yaml):

1. JSS
2. TomcatJSS, LDAP SDK
3. PKI-Core, Dogtag PKI

This is how it builds e.g., in Koji.

That execution triggered this copr build (https://copr.fedorainfracloud.org/coprs/cipherboy/testing-pki-module/module/235782). 

This largely failed because it didn't respect the build order:

- JSS (https://copr.fedorainfracloud.org/coprs/cipherboy/testing-pki-module/build/870755/) built successfully since it is a first-level package.
- Ldap SDK (https://copr.fedorainfracloud.org/coprs/cipherboy/testing-pki-module/build/870757/) built successfully because it doesn't have a dependency on the JSS version built in the module.
- TomcatJSS (https://copr.fedorainfracloud.org/coprs/cipherboy/testing-pki-module/build/870756/) passed on F30 since it was started after JSS F30 passed, but failed otherwise -- because it was missing the JSS version from the first step (https://copr-be.cloud.fedoraproject.org/results/cipherboy/testing-pki-module/fedora-29-x86_64/00870756-tomcatjss) -- (`DEBUG util.py:554:  BUILDSTDERR: No matching package to install: 'jss >= 4.5.3'` -- but that's provided by the JSS built in this module.)
- Similar for dogtag-pki / pki-core since they depend both on JSS and TomcatJSS from this module build. 

A retried build causes all packages to succeed: https://copr.fedorainfracloud.org/coprs/cipherboy/testing-pki-module/module/235783

In short, I believe `buildorder` isn't respected in a COPR Module build. 




Additionally, the actual module has shown status "Pending" for 17 hours, despite all component packages being built successfully rather quickly.


Perhaps I'm doing something wrong?



Triggered from F29:

$ copr-cli --version
copr version 1.78

Comment 1 Pavel Raiskup 2019-03-21 06:53:28 UTC
> Feel free to close that issue if it is misplaced. 

Thank you for the report, yes - we'll take a look at the upstream issue.


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