Redo advanced email delivery options yet again
So this is the *third* attempt at this...
First we allowed different email configurations by milestone,
then that stopped working because we got new two-week Atomic
composes that weren't a different milestone but were a different
dist (shortname). So I allowed different email configurations
by dist instead.
So of course the 'Fedora-Atomic' composes went away! Instead of
having a special compose type for doing nightly composes of the
Atomic images for two-week Atomic, we started doing them in the
updates composes instead.
The updates composes have the same dist as nightly full-distro
composes, 'Fedora'. They only differ in that they have release
type 'updates' instead of 'ga' (and they also are compose type
'production' not 'nightly' even though they're built nightly).
We could do something ugly like switch *again* to allowing
separate configuration by release type, or treat the 'updates'
release type as a special case for the dist mechanism. But I
don't like those choices and they'll probably just get broken
later anyway.
So I tried a different thing. This adds a whole supplementary
email recipient config mechanism that works by *subvariant*.
The idea is that you can configure "if the compose involves a
particular subvariant in any way, these email addresses want to
know about it". So instead of trying to play Whack-A-Mole with
how exactly we're doing Atomic (or, these days, CoreOS) composes
today, we can just say "if the compose involves Atomic/CoreOS
images, send an email to this address". It also includes the
"send mail only on error" mechanic - you can say "this address
only wants an email if the compose involves this subvariant
*and there's some kind of problem related to that subvariant*".
I'm hoping this'll be a bit more robust...
Signed-off-by: Adam Williamson <awilliam@redhat.com>