#609 Component reuse doesn't seem to work anymore
Closed: Fixed Opened by psabata.

Finalizing the Boltron release, I updated one of the base-runtime packages, fedora-modular-release, yesterday and submitted the module for build, expecting all its components but the updated one to be reused. Alas, it didn't happen and I had to wait a day for a complete rebuild which finished this morning.

Following the request to include a modularity-aware dnf directly in the compose, we had to update libdnf in base-runtime. So we did and submited a new build, hoping it would reuse the components from the build that had finished just a couple of hours before that. Well, it didn't and is now rebuilding everything once again, delaying Boltron release by another day.

The module build IDs are 710 and 713.

This is a regression. If I had to guess, I would say it has something to do with buildopts -- base-runtime defines one custom macro. It hasn't been touched since June, however. Could https://pagure.io/modulemd/issue/40 play a role in that?


See also #607 which added logging to the component re-use code. We don't get any indication currently as to why components aren't being reused.

I observed component re-use in other modules. This being related to buildopts seems more and more likely. I haven't looked at the code but the linked issue above is about newline duplication when modulemd dumps |[-] YAML blocks. buildopts are typically defined using those blocks and so is/was the one in base-runtime. If you then compare whatever is stored in PDC (dumped with extra newlines) to what is in the submitted YAML, you'll always see a difference and trigger a rebuild.

This cannot be fixed on MBS side, we need fix in modulemd to not insert extra new lines when dumping buildopts section: https://pagure.io/modulemd/issue/40

So as it turns out, there was no bug in modulemd.

I will try to reproduce this again, perhaps with testmodule. However, component reuse generally works these days. I'm not sure if it does with any additional macros defined, however. Will keep you posted.

Metadata Update from @mprahl:
- Issue close_status updated to: Fixed
- Issue status updated to: Closed (was: Open)

This issue has been migrated to Fedora Forge:
https://forge.fedoraproject.org/koji/mbs/issues/609

Please continue any further discussion there.

Metadata