update_device.py: support passing extra headers.
Test: update_device.py --extra-headers 'SWITCH_SLOT_ON_REBOOT=0' ...
Change-Id: I5902153329243e6dc55d767d87bc974f206d32e0
diff --git a/scripts/update_device.py b/scripts/update_device.py
index 49de7a1..64cfbe3 100755
--- a/scripts/update_device.py
+++ b/scripts/update_device.py
@@ -276,14 +276,13 @@
return t
-def AndroidUpdateCommand(ota_filename, payload_url):
+def AndroidUpdateCommand(ota_filename, payload_url, extra_headers):
"""Return the command to run to start the update in the Android device."""
ota = AndroidOTAPackage(ota_filename)
headers = ota.properties
headers += 'USER_AGENT=Dalvik (something, something)\n'
-
- # headers += 'POWERWASH=1\n'
headers += 'NETWORK_ID=0\n'
+ headers += extra_headers
return ['update_engine_client', '--update', '--follow',
'--payload=%s' % payload_url, '--offset=%d' % ota.offset,
@@ -360,6 +359,8 @@
help='Less verbose output')
parser.add_argument('--public-key', type=str, default='',
help='Override the public key used to verify payload.')
+ parser.add_argument('--extra-headers', type=str, default='',
+ help='Extra headers to pass to the device.')
args = parser.parse_args()
logging.basicConfig(
level=logging.WARNING if args.no_verbose else logging.INFO)
@@ -423,7 +424,8 @@
update_cmd = \
OmahaUpdateCommand('http://127.0.0.1:%d/update' % DEVICE_PORT)
else:
- update_cmd = AndroidUpdateCommand(args.otafile, payload_url)
+ update_cmd = \
+ AndroidUpdateCommand(args.otafile, payload_url, args.extra_headers)
cmds.append(['shell', 'su', '0'] + update_cmd)
for cmd in cmds: