rpm-software-management/tito

Package => Releaser mapping

Closed this issue · 4 comments

E.g. in Copr monorepo, we have this settings:

[fedora-git]
# used by frontend, backend, dist-git, rpmbuild
releaser = tito.release.FedoraGitReleaser
branches = rawhide f37 f38

[fedora-git-clients]
releaser = tito.release.FedoraGitReleaser
branches = rawhide epel7 epel8 epel9 f37 f38

[fedora-git-messaging]
releaser = tito.release.FedoraGitReleaser
branches = rawhide epel8 epel9 f37 f38

At release time, it is painful to recall all the releasers. It would be nice if, when in messaging
subdirectory (fedora-messaging), tito release would automatically pick fedora-git-messaging
releaser. Either we can have a new configuration section, or we can say

[fedora-git]
releaser = tito.release.FedoraGitReleaser
branches = rawhide epel8 epel9 f37 f38
default_releaser_for = copr-frontend,copr-backend

Thank you for the RFE,
for sure it sounds better than the current state.

But I am thinking more of this approach
#430 (comment)

do you think it would solve this issue as well?

I'm not sure, it depends on the implementation. See e.g. fedora-copr/copr#2752 - in that case, we don't want to release against all the available branches, but against precise set(s).

I see. In the case of python-copr-common, there are currently rawhide epe8 epel9 f37 f38 but we want to release only for rawhide epel9 f37 f38, leaving the epel8 with an older version. In that case, I'd like to do this: #430 (comment)
but that is orthogonal to this RFE.

Yeah, my original idea was to do just tito release with the default releaser per package. But with #430 we'll basically have just one releaser and bash-completion will resolve problems with memorizing its name.