casync: only when run from updater (#25130)

* casync: only when run from updater

* also here
old-commit-hash: 906a8a912c
taco
Willem Melching 3 years ago committed by GitHub
parent c36e2340a8
commit 54bbb9332e
  1. 12
      system/hardware/tici/agnos.py

@ -222,7 +222,7 @@ def extract_casync_image(target_slot_number: int, partition: dict, cloudlog):
raise Exception(f"Raw hash mismatch '{partition['hash_raw'].lower()}'") raise Exception(f"Raw hash mismatch '{partition['hash_raw'].lower()}'")
def flash_partition(target_slot_number: int, partition: dict, cloudlog): def flash_partition(target_slot_number: int, partition: dict, cloudlog, standalone=False):
cloudlog.info(f"Downloading and writing {partition['name']}") cloudlog.info(f"Downloading and writing {partition['name']}")
if verify_partition(target_slot_number, partition): if verify_partition(target_slot_number, partition):
@ -236,7 +236,7 @@ def flash_partition(target_slot_number: int, partition: dict, cloudlog):
path = get_partition_path(target_slot_number, partition) path = get_partition_path(target_slot_number, partition)
if 'casync_caibx' in partition: if ('casync_caibx' in partition) and not standalone:
extract_casync_image(target_slot_number, partition, cloudlog) extract_casync_image(target_slot_number, partition, cloudlog)
else: else:
extract_compressed_image(target_slot_number, partition, cloudlog) extract_compressed_image(target_slot_number, partition, cloudlog)
@ -263,7 +263,7 @@ def swap(manifest_path: str, target_slot_number: int, cloudlog) -> None:
cloudlog.error(f"Swap failed {out}") cloudlog.error(f"Swap failed {out}")
def flash_agnos_update(manifest_path: str, target_slot_number: int, cloudlog) -> None: def flash_agnos_update(manifest_path: str, target_slot_number: int, cloudlog, standalone=False) -> None:
update = json.load(open(manifest_path)) update = json.load(open(manifest_path))
cloudlog.info(f"Target slot {target_slot_number}") cloudlog.info(f"Target slot {target_slot_number}")
@ -276,7 +276,7 @@ def flash_agnos_update(manifest_path: str, target_slot_number: int, cloudlog) ->
for retries in range(10): for retries in range(10):
try: try:
flash_partition(target_slot_number, partition, cloudlog) flash_partition(target_slot_number, partition, cloudlog, standalone)
success = True success = True
break break
@ -320,9 +320,9 @@ if __name__ == "__main__":
elif args.swap: elif args.swap:
while not verify_agnos_update(args.manifest, target_slot_number): while not verify_agnos_update(args.manifest, target_slot_number):
logging.error("Verification failed. Flashing AGNOS") logging.error("Verification failed. Flashing AGNOS")
flash_agnos_update(args.manifest, target_slot_number, logging) flash_agnos_update(args.manifest, target_slot_number, logging, standalone=True)
logging.warning(f"Verification succeeded. Swapping to slot {target_slot_number}") logging.warning(f"Verification succeeded. Swapping to slot {target_slot_number}")
swap(args.manifest, target_slot_number, logging) swap(args.manifest, target_slot_number, logging)
else: else:
flash_agnos_update(args.manifest, target_slot_number, logging) flash_agnos_update(args.manifest, target_slot_number, logging, standalone=True)

Loading…
Cancel
Save