We have an internal user that needs to build packages in two different versions (ie. a 5.x and a 6.x branch) of the same package. They have three tags (user1-{testing,qa,stable}) plus their build tag (user1-build). user1-build inherits from user1-testing to allow them to build their dependencies, and then use those dependencies for other packages.
This user is unable to build their 6.x packages because they can only see the 5.x dependencies in user1-testing, as those where the last ones tagged and only the latest (tagged) ones are kept after the mergerepos. Is there a way to configure a tag so that all tagged versions are exported, rather than only one version per package?
Nope, there is no way for tag to propagate all the versions. Best practice for this would be to create separate tags/buildroots for these versions (e.g. user1-6.x-build and user1-5.x-build both inheriting from user1-build for common packages) Then to define two targets with same destination tags. (I would create also separate destination tags as "latest" would be still only one of these). Another variant is to simply have the basic version in "name" component so these will be effectively two packages.
Other option is to use sidetag plugin for the users to be able to handle part of the process by themselves. But it would need additional process about merging sidetags back to "main" tags.
Metadata Update from @tkopecek: - Custom field Size adjusted to None
I'll try the sidetag plugin, I'm not familiar with it. What do you mean about the additional process for merging sidetags back?
As users can do a lot of things in sidetags, depending on your release guidelines, it could need double checking potential malicious builds (not only with malicious intent, but simply breaking main product dependencies or other ad hoc problems). Also you would need to "merge" all the builds in the sidetag as there could be some dependencies create by the user and then (at least) check repoclosure that you're not breaking the things. Of course all these steps are not mandatory if user/process is well-educated and not breaking things.
In fedora following process is used: https://docs.fedoraproject.org/en-US/package-maintainers/Package_Update_Guide/#multiple_packages
Thanks for the information. We tried out a sidetag and haven't managed to get it to work well for our case. We'll create separate tags instead. Thanks for your help!
Metadata Update from @alexi: - Issue close_status updated to: Dropped - Issue status updated to: Closed (was: Open)
This issue has been migrated to Fedora Forge: https://forge.fedoraproject.org/koji/koji/issues/3148
Please continue any further discussion there.