diff options
-rwxr-xr-x | src/abslibre-tools/librerelease | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/src/abslibre-tools/librerelease b/src/abslibre-tools/librerelease index b8eb0e3..41eb21b 100755 --- a/src/abslibre-tools/librerelease +++ b/src/abslibre-tools/librerelease @@ -165,13 +165,23 @@ main() { return 0 fi - load_files makepkg - check_vars makepkg GPGKEY - load_files libretools - check_vars libretools WORKDIR REPODEST ABSLIBREDEST || return 1 + # defer exiting on errors until we've tried to parse *all* + # config files, to have more complete error messages. + local err=false + { + load_files makepkg && + check_vars makepkg GPGKEY + } || err=true + { + load_files libretools && + # the HOOK* are settings are optional + check_vars libretools WORKDIR REPODEST ABSLIBREDEST # HOOKPRERELEASE HOOKPOSTRELEASE + } || err=true + if $err; then + return 6 + fi + REPODEST+='/staging/' - # The following settings are actually optional - #check_vars libretools HOOKPRERELEASE HOOKPOSTRELEASE || return 1 "$mode" } |