Description of problem:
There should be a way to allow user to force installation of distro from excluded family. There is <hostRequires force=""/>, but that still takes into account excluded families.
No way to force distro installation other than temporarily removing whole family from excluded list.
<hostRequires force=""/> should ignore excluded families, or some new attribute introduced that would do that.
Lets try to get this in Beaker 24.0
So we could adjust the pair of Recipe.candidate_systems() and Recipe.hypothetical_candidate_systems() methods (they are mirror images of each other) so that the system excluded families are not applied when force=True.
The problem is that we use hypothetical_candidate_systems() to determine which systems to show in the Reserve Workflow, when the user has picked their distro and they want to look at systems which are compatible. So even though we use force=True in the Reserve Workflow we probably *don't* want the Reserve Workflow to suddenly start offering systems which are known to be incompatible.
(In reply to Dan Callaghan from comment #3)
Seems like we might as well just divorce the Reserve Workflow system listing from the hypothetical_candidate_systems() method, it's already doing slightly different filtering (excluding Broken) and will probably have more differences in future (bug 1099142). So no big deal really.
Verify passed on beaker-server-24.0-0.git.194.c515848
1. Choose a system then add RHEL 7 to it exclude distro.
2. Use Reserve workflow try to reserve this system with exclude distro.
Beaker not allow this action.
3. Use xml force install this distro.
Job can complete install.
job link -->
Beaker 24.0 has been released.