mirror of
https://github.com/f-droid/fdroidserver.git
synced 2025-11-11 01:30:30 +03:00
run all SDK tools commands using SdkToolsPopen
This commit is contained in:
parent
9244256461
commit
fa1cc48d57
5 changed files with 58 additions and 38 deletions
|
|
@ -130,32 +130,6 @@ def read_config(opts, config_file='config.py'):
|
|||
|
||||
fill_config_defaults(config)
|
||||
|
||||
bin_paths = {
|
||||
'aapt': [
|
||||
os.path.join(config['sdk_path'], 'build-tools', config['build_tools'], 'aapt'),
|
||||
],
|
||||
'zipalign': [
|
||||
os.path.join(config['sdk_path'], 'tools', 'zipalign'),
|
||||
os.path.join(config['sdk_path'], 'build-tools', config['build_tools'], 'zipalign'),
|
||||
],
|
||||
'android': [
|
||||
os.path.join(config['sdk_path'], 'tools', 'android'),
|
||||
],
|
||||
'adb': [
|
||||
os.path.join(config['sdk_path'], 'platform-tools', 'adb'),
|
||||
],
|
||||
}
|
||||
|
||||
for b, paths in bin_paths.items():
|
||||
config[b] = None
|
||||
for path in paths:
|
||||
if os.path.isfile(path):
|
||||
config[b] = path
|
||||
break
|
||||
if config[b] is None:
|
||||
logging.warn("Could not find %s in any of the following paths:\n%s" % (
|
||||
b, '\n'.join(paths)))
|
||||
|
||||
# There is no standard, so just set up the most common environment
|
||||
# variables
|
||||
env = os.environ
|
||||
|
|
@ -1378,8 +1352,8 @@ def prepare_source(vcs, app, build, build_dir, srclib_dir, extlib_dir, onserver=
|
|||
|
||||
# Generate (or update) the ant build file, build.xml...
|
||||
if build['update'] and build['update'] != ['no'] and build['type'] == 'ant':
|
||||
parms = [config['android'], 'update', 'lib-project']
|
||||
lparms = [config['android'], 'update', 'project']
|
||||
parms = ['android', 'update', 'lib-project']
|
||||
lparms = ['android', 'update', 'project']
|
||||
|
||||
if build['target']:
|
||||
parms += ['-t', build['target']]
|
||||
|
|
@ -1397,7 +1371,7 @@ def prepare_source(vcs, app, build, build_dir, srclib_dir, extlib_dir, onserver=
|
|||
else:
|
||||
logging.debug("Updating subproject %s" % d)
|
||||
cmd = lparms + ['-p', d]
|
||||
p = FDroidPopen(cmd, cwd=root_dir)
|
||||
p = SdkToolsPopen(cmd, cwd=root_dir)
|
||||
# Check to see whether an error was returned without a proper exit
|
||||
# code (this is the case for the 'no target set or target invalid'
|
||||
# error)
|
||||
|
|
|
|||
|
|
@ -25,14 +25,14 @@ from optparse import OptionParser, OptionError
|
|||
import logging
|
||||
|
||||
import common
|
||||
from common import FDroidPopen, FDroidException
|
||||
from common import SdkToolsPopen, FDroidException
|
||||
|
||||
options = None
|
||||
config = None
|
||||
|
||||
|
||||
def devices():
|
||||
p = FDroidPopen([config['adb'], "devices"])
|
||||
p = SdkToolsPopen(['adb', "devices"])
|
||||
if p.returncode != 0:
|
||||
raise FDroidException("An error occured when finding devices: %s" % p.output)
|
||||
lines = p.output.splitlines()
|
||||
|
|
@ -103,7 +103,7 @@ def main():
|
|||
logging.info("Installing %s..." % apk)
|
||||
for dev in devs:
|
||||
logging.info("Installing %s on %s..." % (apk, dev))
|
||||
p = FDroidPopen([config['adb'], "-s", dev, "install", apk])
|
||||
p = SdkToolsPopen(['adb', "-s", dev, "install", apk])
|
||||
fail = ""
|
||||
for line in p.output.splitlines():
|
||||
if line.startswith("Failure"):
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@ import logging
|
|||
|
||||
import common
|
||||
import metadata
|
||||
from common import FDroidPopen, BuildException
|
||||
from common import FDroidPopen, SdkToolsPopen, BuildException
|
||||
|
||||
config = None
|
||||
options = None
|
||||
|
|
@ -213,8 +213,8 @@ def main():
|
|||
raise BuildException("Failed to sign application")
|
||||
|
||||
# Zipalign it...
|
||||
p = FDroidPopen([config['zipalign'], '-v', '4', apkfile,
|
||||
os.path.join(output_dir, apkfilename)])
|
||||
p = SdkToolsPopen(['zipalign', '-v', '4', apkfile,
|
||||
os.path.join(output_dir, apkfilename)])
|
||||
if p.returncode != 0:
|
||||
raise BuildException("Failed to align application")
|
||||
os.remove(apkfile)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue