82ec253 frontend, rpmbuild: allow disabling modules in the buildroot

8 files Authored by frostyx 3 years ago, Committed by praiskup 3 years ago,
    frontend, rpmbuild: allow disabling modules in the buildroot
    
    Fix #1631
    
    I find the word "toggle" in this context to be confusing because
    toggle usually means switching to the opposite
    state (enabled/disabled) than the thing currently is. In this case, we
    don't care what the previous state is. So `!foo:bar` always means
    disable the `foo:bar` module, not toggle it from whatever state it has
    by default to the other one. I was initially a bit confused by this,
    so I am clarifying it here for the future reference.
    
    I also updated the tests because once we parse the `module_toggle`
    string field on the frontend, we should IMHO generate a following list
    of dicts (I would prefer tuples though):
    
        [{'disable': 'XXX'}, {'enable': 'YYY'}, {'enable': 'ZZZ'}]
    
    Instead of the previous one
    
        [{'disable': '!XXX'}, {'enable': 'YYY'}, {'enable': 'ZZZ'}]
    
    This way, copr-rpmbuild doesn't have to know the syntax of that string
    field.
    
        
file modified
+4 -3
file modified
+3 -5