mirror of
https://github.com/f-droid/fdroidserver.git
synced 2025-11-13 02:30:30 +03:00
better error message in publish when repo_key is not set
This commit is contained in:
parent
e5acdee21e
commit
788c8f97fd
4 changed files with 42 additions and 19 deletions
|
|
@ -302,6 +302,30 @@ def read_config(opts, config_file='config.py'):
|
|||
return config
|
||||
|
||||
|
||||
def assert_config_keystore(config):
|
||||
"""Check weather keystore is configured correctly and raise exception if not."""
|
||||
|
||||
nosigningkey = False
|
||||
if 'repo_keyalias' not in config:
|
||||
nosigningkey = True
|
||||
logging.critical(_("'repo_keyalias' not found in config.py!"))
|
||||
if 'keystore' not in config:
|
||||
nosigningkey = True
|
||||
logging.critical(_("'keystore' not found in config.py!"))
|
||||
elif not os.path.exists(config['keystore']):
|
||||
nosigningkey = True
|
||||
logging.critical("'" + config['keystore'] + "' does not exist!")
|
||||
if 'keystorepass' not in config:
|
||||
nosigningkey = True
|
||||
logging.critical(_("'keystorepass' not found in config.py!"))
|
||||
if 'keypass' not in config:
|
||||
nosigningkey = True
|
||||
logging.critical(_("'keypass' not found in config.py!"))
|
||||
if nosigningkey:
|
||||
raise FDroidException("This command requires a signing key, " +
|
||||
"you can create one using: fdroid update --create-key")
|
||||
|
||||
|
||||
def find_sdk_tools_cmd(cmd):
|
||||
'''find a working path to a tool from the Android SDK'''
|
||||
|
||||
|
|
|
|||
|
|
@ -63,26 +63,8 @@ def make(apps, sortedids, apks, repodir, archive):
|
|||
return "fdroid.app:" + appid, apps[appid].Name
|
||||
raise MetaDataException("Cannot resolve app id " + appid)
|
||||
|
||||
nosigningkey = False
|
||||
if not common.options.nosign:
|
||||
if 'repo_keyalias' not in common.config:
|
||||
nosigningkey = True
|
||||
logging.critical(_("'repo_keyalias' not found in config.py!"))
|
||||
if 'keystore' not in common.config:
|
||||
nosigningkey = True
|
||||
logging.critical(_("'keystore' not found in config.py!"))
|
||||
if 'keystorepass' not in common.config:
|
||||
nosigningkey = True
|
||||
logging.critical(_("'keystorepass' not found in config.py!"))
|
||||
if 'keypass' not in common.config:
|
||||
nosigningkey = True
|
||||
logging.critical(_("'keypass' not found in config.py!"))
|
||||
if not os.path.exists(common.config['keystore']):
|
||||
nosigningkey = True
|
||||
logging.critical("'" + common.config['keystore'] + "' does not exist!")
|
||||
if nosigningkey:
|
||||
raise FDroidException("`fdroid update` requires a signing key, " +
|
||||
"you can create one using: fdroid update --create-key")
|
||||
common.assert_config_keystore(common.config)
|
||||
|
||||
repodict = collections.OrderedDict()
|
||||
repodict['timestamp'] = datetime.utcnow()
|
||||
|
|
|
|||
|
|
@ -157,6 +157,8 @@ def main():
|
|||
logging.critical(_('Java JDK not found! Install in standard location or set java_paths!'))
|
||||
sys.exit(1)
|
||||
|
||||
common.assert_config_keystore(config)
|
||||
|
||||
log_dir = 'logs'
|
||||
if not os.path.isdir(log_dir):
|
||||
logging.info(_("Creating log directory"))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue