From: Ciaran Gultnieks Date: Fri, 4 Apr 2014 14:37:18 +0000 (+0100) Subject: Validate publish-related file existence before proceeding X-Git-Tag: 0.2~143 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=7f822b01bf755bb9704eb5950a71b2d6a36ade9a;p=fdroidserver.git Validate publish-related file existence before proceeding --- diff --git a/fdroidserver/publish.py b/fdroidserver/publish.py index 101da26c..8a9c8aeb 100644 --- a/fdroidserver/publish.py +++ b/fdroidserver/publish.py @@ -63,8 +63,13 @@ def main(): unsigned_dir = 'unsigned' if not os.path.isdir(unsigned_dir): - logging.info("No unsigned directory - nothing to do") - sys.exit(0) + logging.warning("No unsigned directory - nothing to do") + sys.exit(1) + + for f in [config['keystorepassfile'], config['keystore'], config['keypassfile']]: + if not os.path.exists(f): + logging.error("Config error - missing '{0}'".format(f)) + sys.exit(1) # It was suggested at https://dev.guardianproject.info/projects/bazaar/wiki/FDroid_Audit # that a package could be crafted, such that it would use the same signing @@ -82,7 +87,7 @@ def main(): m.update(app['id']) keyalias = m.hexdigest()[:8] if keyalias in allaliases: - logging.info("There is a keyalias collision - publishing halted") + logging.error("There is a keyalias collision - publishing halted") sys.exit(1) allaliases.append(keyalias) logging.info("{0} apps, {0} key aliases".format(len(allapps), len(allaliases)))