New sync_distributions command
This MR adds a new sync_distributions management command to synchronize debexpo distribution list against distro-info data.
Using the python library to access distro-info data, it loads the supported list of release names from the specified DISTRO_INFO_VENDOR setting (defaulting to debian). The reference list is enhanced with a list of static distribution (from STATIC_SUITES) as well as the suite aliases (from SUITE_ALIASES). Each suite (static suites excluded) is then computed against a list of suffixes (from DISTRIBUTION_SUFFIX) to get the final list of allowed release.
This list is compared to the one from debexpo, resulting into a list of addition and deletion.
Following user confirmation, the modification are applied to debexpo.
As usual, documentation, dependencies and test coverage are included.
Note: a static version of distro-info data is used for testing, as to not failed on next update.
This MR also adds the new non-free-firmware to the list of valid components.
Additionally, the MR includes those minor corrections:
- copyright year updates
- standalone job for the dependency checks (currently failing due to celery depending on tzdata)
- a fix for job coverage reporting
Closes: #151 (closed)