repoclosure: Allow aborting compose when repoclosure fails

Alternatively the call to repoclosure can be turned off. This is
customizable per variant and architecture.

Fixes: https://pagure.io/pungi/issue/676
Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
This commit is contained in:
Lubomír Sedlář 2017-07-27 11:59:03 +02:00
parent 056ae31ef9
commit e2962dc547
6 changed files with 106 additions and 18 deletions

View file

@ -152,6 +152,18 @@ Options
([*str*]) -- list of variants which should be included; if undefined, all
variants from variants.xml will be included
**repoclosure_strictness**
(*list*) -- variant/arch mapping describing how repoclosure should run.
Possible values are
* ``off`` -- do not run repoclosure
* ``lenient`` -- (default) run repoclosure and write results to logs, but
detected errors are only reported in logs
* ``fatal`` -- abort compose when any issue is detected
When multiple blocks in the mapping match a variant/arch combination, the
last value will win.
**repoclosure_backend**
(*str*) -- Select which tool should be used to run repoclosure over created
repositories. By default ``yum`` is used, but you can switch to ``dnf``.
@ -190,6 +202,13 @@ Example
tree_arches = ["x86_64"]
tree_variants = ["Server"]
repoclosure_strictness = [
# Make repoclosure failures fatal for compose on all variants …
('^.*$', {'*': 'fatal'}),
# … except for Everything where it should not run at all.
('^Everything$', {'*': 'off'})
]
Image Naming
============

View file

@ -141,9 +141,10 @@ Test
This phase is supposed to run some sanity checks on the finished compose.
The first test is to run ``repoclosure`` on each repository. However, even if
it fails, the compose will still be considered a success. The actual error has
to be looked up in the compose logs directory.
The first test is to run ``repoclosure`` on each repository. By default errors
are only reported in the log, the compose will still be considered a success.
The actual error has to be looked up in the compose logs directory.
Configuration allows customizing this.
The other test is to check all images listed the metadata and verify that they
look sane. For ISO files headers are checked to verify the format is correct,