1
0
mirror of https://gitlab.com/fdroid/fdroidserver.git synced 2024-11-13 02:30:11 +01:00

Fix init with common, don't require cwd in FDroidPopen

This commit is contained in:
Daniel Martí 2013-11-05 09:26:26 +01:00
parent ee67e96aad
commit 2b0badd4c4
2 changed files with 16 additions and 17 deletions

View File

@ -1910,7 +1910,7 @@ class PopenResult:
stderr = ''
stdout_apk = ''
def FDroidPopen(commands, cwd):
def FDroidPopen(commands, cwd=None):
"""
Runs a command the FDroid way and returns return code and output
@ -1918,7 +1918,8 @@ def FDroidPopen(commands, cwd):
"""
if options.verbose:
print "Directory: %s" % cwd
if cwd is not None:
print "Directory: %s" % cwd
print " > %s" % ' '.join(commands)
result = PopenResult()

View File

@ -29,6 +29,7 @@ import sys
from optparse import OptionParser
import common
from common import FDroidPopen, BuildException
config = {}
@ -56,24 +57,21 @@ def genpassword():
def genkey(keystore, repo_keyalias, password, keydname):
'''generate a new keystore with a new key in it for signing repos'''
print('Generating a new key in "' + keystore + '"...')
p = subprocess.Popen(['keytool', '-genkey',
'-keystore', keystore, '-alias', repo_keyalias,
'-keyalg', 'RSA', '-keysize', '4096',
'-sigalg', 'SHA256withRSA',
'-validity', '10000',
'-storepass', password, '-keypass', password,
'-dname', keydname],
stdout=subprocess.PIPE)
output = p.communicate()[0]
print(output)
p = FDroidPopen(['keytool', '-genkey',
'-keystore', keystore, '-alias', repo_keyalias,
'-keyalg', 'RSA', '-keysize', '4096',
'-sigalg', 'SHA256withRSA',
'-validity', '10000',
'-storepass', password, '-keypass', password,
'-dname', keydname])
if p.returncode != 0:
raise BuildException("Failed to generate key")
raise BuildException("Failed to generate key", p.stdout, p.stderr)
# now show the lovely key that was just generated
p = subprocess.Popen(['keytool', '-list', '-v',
'-keystore', keystore, '-alias', repo_keyalias],
stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
'-keystore', keystore, '-alias', repo_keyalias],
stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
output = p.communicate(password)[0]
print(output.lstrip().strip() + '\n\n')