Distinct copyrights were left as I do not wish to track down commit
history to ensure it properly documents the copyright holders. Also left
non-GPLv2 licenses and left bs_copy untouched as a mirror from OBS.
Already have a mix of with and without headers and even OBS does not place
on majority of files. If SUSE lawyers have an issue it will come up in
legal review for Factory.
This would be better done by using config, but that would require a larger
refactor since the underlying ReviewBot is not entirely setup when called
by leaper.
--factory option can be specified multiple times to check against
a list of projects. For example checking against Factory and Leap
for the Backports project.
Check will loop over each project and break as soon as a match is
found. Project search order matches order of --factory options (at least
in testing).
- add release manager explicitly when needed instead of relying on
fallback.needed instead of relying on fallback. This allows the bot to
actually decline requests that are certainly wrong.
- put comments in requests to communicate when the bot e.g. waits for a
Factory submission.
If only the review by a factory staging project is left in state new and
all others are in state accepted it means legal, opensuse-review team
etc have completed. So it's safe to consider such a request accepted for
inclusion into Factory. So let's not waste time waiting for the next
Factory checkin round.
factory-source checks if submissions contain sources already accepted in
Factory. maintbot makes sure maintenance submissions are authored by the
Factory package maintainer.
Both are based on a new generic ReviewBot.py class that can serve as
common framework for review bots.