Commit Graph

10055 Commits

Author SHA1 Message Date
Matt Mower
dbc7a44f6c build: Ensure /system unmounted at install start
Account for the possibility that a user has mounted system manually
before installing the FullOTA package.

Change-Id: I97d0540676a7ce98762545e76ecb1a7f6335d204
Signed-off-by: RITEFANG <1721985272@qq.com>
2025-02-05 20:41:13 +08:00
Ido Ben-Hur
6b3e296c17 build: Erase package_cache upon flashing
To avoid the resources bug when dirty flashing

Signed-off-by: saikiran2001 <bjsaikiran@gmail.com>
2025-02-05 20:41:13 +08:00
Yumi Yukimura
c116d69cb1 releasetools: Pass non-sparse super_empty.img to update_dynamic_partitions()
* So that updater program can load dynamic partitions metadata from OTA
  when it fails to load from the device

Change-Id: I73687009a2cb243aba1bfec6f357c8ff25f27784
Signed-off-by: RITEFANG <1721985272@qq.com>
2025-02-05 20:41:13 +08:00
Yumi Yukimura
0dedf75f54 releasetools: build_super_image: Do not set readonly attr
* Makes logical partitions writable when flashed to the device

Change-Id: Id473acaedab9400870700bc317a140fd73a58456
Signed-off-by: RITEFANG <1721985272@qq.com>
2025-02-05 20:41:13 +08:00
Gérard Parat
3c32ba6cbf releasetools: Make recovery patch use bsdiff exclusively
It seems like switching from minigzip to toybox gzip (bug: 288169261)
makes imgdiff fail in in this way:
* W imgdiff : imgdiff.cpp:1435 Failed to reconstruct target deflate chunk 3 []; treating as normal
* E imgdiff : imgdiff.cpp:1390 Failed to set bonus data

Test: Sign non-AB target files package
Change-Id: I29f1d8f1168347141d80860e8ed02e19b0031447
Signed-off-by: RITEFANG <1721985272@qq.com>
2025-02-05 20:41:13 +08:00
Ricky Cheung
a12cd56eda Correct logic for obtaining the path to full recovery image
Currently, an extra '/vendor' is appended in target_files_dir of
make_recovery_patch.py, which will yield an erroneous path when
attempting to build full recovery image on vendorimage-leas devices:

SYSTEM/vendor/vendor/etc/recovery.img

This patch addresses the issue by removing the extra '/vendor' of
target_files_dir, and add checks for whether the target builds
vendor image in MakeRecoveryPatch() as well. This ensures no
recovery image will be generated with prebuilt vendor.

Signed-off-by: Ricky Cheung <rcheung844@gmail.com>
Change-Id: I2dc6e43537deb606dd01fb090add2595502055c1
Signed-off-by: RITEFANG <1721985272@qq.com>
2025-02-05 20:41:13 +08:00
LuK1337
f040245dd2 releasetools: Fix fstab path detection when input_file is a path to zip
If _FindAndLoadRecoveryFstab() is called with a path to target files zip
file, then it'll always attempt to read the fallback recovery.fstab
path. By making sure to pass zipfile.ZipFile(), it'll be able to read
the zip file ToC and use the correct path instead.

Test: Generate signed ota package for gts4lv
Change-Id: I4f3b975c677b7928999d0fe4fb137c868d7a206e
Signed-off-by: RITEFANG <1721985272@qq.com>
2025-02-05 20:41:13 +08:00
Aaron Kling
3604743512 Fix unified a/b zip generation failure
If vendor model props are blacklisted, a/b zips fail to generate.
This uses a non-partition specific prop if the partition specific
variant does not exist.

Change-Id: I96f583ceb3ccebee21211b964e2ea66217ffd41f
Signed-off-by: RITEFANG <1721985272@qq.com>
2025-02-05 20:41:13 +08:00
LuK1337
961fa5a5c0 Don't remove ANDROID_SECURE_STORAGE_CMD from env vars
We also use it in avbtool.

Change-Id: I4737c1815a031d307f6915a73b5f5b1a37b6baaa
Signed-off-by: RITEFANG <1721985272@qq.com>
2025-02-05 20:41:13 +08:00
LuK1337
6f02eeb749 Log when we fail to get key password from secure cmd
Change-Id: I4455f43e43b772e785ece48721dcd770f0bc8711
Signed-off-by: RITEFANG <1721985272@qq.com>
2025-02-05 20:41:13 +08:00
HZ
60f7c4c7d4 Add bluetooth to default key map
Previously the key mapping in releasetool/sign_target_files_apks.py
is missing the aforementioned keys that introduced in Android 13, so
it's writing corrupted signatures in plat_mac_permissions.xml.

Test: make target-files-package otatools
sign_target_files_apks -o -d <CERT_ROOT> ...

Change-Id: If42907cffbd500281876f8f822cbb645583d06ed
Signed-off-by: RITEFANG <1721985272@qq.com>
2025-02-05 20:41:13 +08:00
Chris Soyars
025b6a5185 releasetools: squash backuptool support
This is a squash of the following commits:

Author: Chris Soyars <ctso@ctso.me>
Date:   Thu Dec 23 00:44:33 2010 +0100
    Add otapackage support for backuptool

    Change-Id: I512554c579d444067cd3ccbb0e6946a5eb6bc964a

    Modular backuptool.sh.  Executes backup and restore methods defined in arbitrary /system/addon.d/*.sh scripts.

    * Copy backuptool.functions alongside backuptool.sh.
    * Delete both from /system/bin as they are not useful there.

    Patch Series
    ============
    http://review.cyanogenmod.com/#change,13265
    CyanogenMod/android_build
      * edify generator
    http://review.cyanogenmod.com/#change,13266
    CyanogenMod/android_system_core
      * permissions on /system/addon.d
    http://review.cyanogenmod.com/#change,13267
    CyanogenMod/android_vendor_cm
      * 50-cm.sh reference backup script
      * modular backuptool.sh
      * support backuptool.functions used by /system/addon.d/*.sh scripts

    Change-Id: I26b4907d28f49c69627699d2accd2f0fa2d1b112

    update ota_from_target_files to handle mounting/unmounting for backupscript

    backupscript should not be mounting/unmounting itself as it makes other
    scripts have unexpected results (such as modelid_cfg, which expects /system
    to be mounted)

    instead have the ota script handle the mounting/unmounting

    Change-Id: I94511f4147c624d975cb3ecbeaa8b0e98f63437c

    build: Don't run backuptool on GMS builds

    Change-Id: I5dde27f9d16b88049171db9805221d92e67f3e5d

Author: Tom Marshall <tdm@cyngn.com>
Date:   Wed Apr 9 16:14:07 2014 -0700
    build: edify: use set_metadata for backuptool

    Also use saner permissions on backuptool.sh

    Change-Id: I50742b51867aa358f5924b8dc208833092a35bd9

Author: Ricardo Cerqueira <ricardo@cyngn.com>
Date:   Wed Nov 5 18:16:43 2014 +0000
    ota: Include copies of the recovery scripts even if shipping in block mode

Author: Ricardo Cerqueira <ricardo@cyngn.com>
Date:   Wed Nov 5 19:58:59 2014 +0000
    ota: Fix recovery-script cleanups in block mode

    Change-Id: Iadb480f8062cfb7a0e6c9024e32ac0d71a7481d7

Author: Arian <arian.kulmer@web.de>
Date:   Wed Jun 17 12:35:16 2020 +0200
    build: Disable backuptool on user instead of GMS builds

    * Backuptool is not exclusively used for GApps but
      also used by other things (i.e. Magisk), hence
      it shouldn't be disabled on all GMS builds.

    Change-Id: Ia95c6fed21d7bed5e2e0610aa94264edc1d02c80

Author: Davide Garberi <dade.garberi@gmail.com>
Date:   Tue Sep 24 18:45:17 2019 +0200
    releasetools: Move system mount handling to backuptool

    * This allows the ROM to be flashed on any recovery, whether it mounts
      system to /system, /system_root or /mnt/system like Q recovery

    * Remove any type of system mount with static paths from updater-script
      to figure out the path dinamically through backuptool

    Change-Id: I7b33726305cb6f3eec146d26135f0081002a25dc

Author: Jesse Chan <jc@lineageos.org>
Date:   Fri Jun 12 21:53:18 2020 +0800
    releasetools: support dynamic partitions for backuptool

    Change-Id: I4a04e52f64e307a9852d786aabf17975a020b4b8
    Signed-off-by: Jesse Chan <jc@lineageos.org>

Author: Jesse Chan <jc@lineageos.org>
Date:   Tue Jul 7 23:50:10 2020 +0800

    backuptool: do not unmap dynamic partition after finished

    Keep partitions mapped so users can install addons.

    Change-Id: Ic70621986bf136775e686dc8cc690ce076485907
    Signed-off-by: Jesse Chan <jc@lineageos.org>

Author: Alessandro Astone <ales.astone@gmail.com>
Date:   Mon Apr 12 18:40:10 2021 +0200

    backuptool: Map extra dynamic partitions for Addon.d V3

    Change-Id: Ia8fa1963c722c5aa2987b947e4e919e19909a9a8

Change-Id: I2401d334d8e16d18d3770b339ec2c787dd8e477c
2025-02-05 20:41:13 +08:00
Tom Marshall
739d494f6e build: ota: Support for install tools in /tmp/install
* Anything in OUT/install gets packaged up into the zip and extracted
   to /tmp/install immediately after FullOTA_InstallBegin.

 * Use /tmp/install in edify scripts and remove code related to using
   and manipulating /system for install tools.

 * Modified to support signing steps being split from build steps.

   Package install files into target-files INSTALL path
   Read from target-files for OTA package creation

   From Change-Id: I64f919c2a757b5474f6cc5f82bd6c33c2a8b558a

 * This also fully reverts commit 6a324ba and partially reverts
   commit f388104 as the functions are still needed here.

   From Change-Ids: I4911244ec9945d197d2b56d0d11eab6d2f7b6d3e
                    I4943e2e89ee5c810a63746c570dc5e31e95b8c53

Squashed with the following:

Author: LuK1337 <priv.luk@gmail.com>
Date:   Wed Feb 19 02:14:59 2020 +0100
    releasetools: Use 0oXXX instead of 0XXX for octal

    * Fixes py3 syntax error.

    Change-Id: Ia9ca6e392f43694ddf4c952b07bf159e8dead36e

Author: LuK1337 <priv.luk@gmail.com>
Date:   Fri Nov 13 15:27:24 2020 +0100
    Add $(PRODUCT_OUT)/install to INTERNAL_RECOVERYIMAGE_FILES

    * Fixes $(PRODUCT_OUT)/install not being included on targets
      not providing their own /vendor || /system/vendor.

    Change-Id: I15b8305bb7efacfcf3018708bf7ff8b8500744fb

Change-Id: I315a3238e36c8d15e26f935e272f7e27dd59c320
2025-02-05 20:38:40 +08:00
LuK1337
668f728910 releasetools: Unconditionally store recovery.img in non-A/B OTA
Change-Id: Ib5c9f2f0fa90fd921d8f61b74364a20aaecb842e
2025-02-05 20:38:40 +08:00
Aaron Kling
8592dd6443 releasetools: Fallback to calculated fp if partition fp is missing
This happens when the fingerprint property is blacklisted for the
purposes of unified device builds.

Change-Id: I9f8a5041248c3f73fce7a16da73cb8f68c06c8e2
2025-02-05 20:38:40 +08:00
David Ng
1e916f1bdc build: Add support for device tree in boot.img
Add support for optional device tree image (dt.img)
to boot and recovery images.  Some devices use kernel device
tree and this adds the device tree image as a section within
the boot/recovery images.

Change-Id: I91431ef2f4b86485895678916e39a8572be878eb

Build: add DT image variable to Makefile

DT image variable is currently present in
generate_extra_images.mk.This file is moved to
build/tasks to support persist image generation
during parallel make. As build/tasks is called
at the end of Makefile, DT image variable is not
available for other images generation like boot and
recovery. Adding this variable in Makefile ensures
the variable is defined before usage

Change-Id: I21f675d8ce648dc1cf1f4f3aede33278300e08c9
CRs-fixed: 548299

Fix case where boot/recovery.img were being built with wrong params.

The boot and recovery images  now get built using the same params during ota package
generation as during a normal build.

Change-Id: I93d46e11a4245288f0e87c87a2e4bf45ac5aff69

Fix the extra dt.img compilation issue.

Add support for optional device tree image (dt.img)
for device that doesnt have TARGET_BOOTIMAGE_USE_EXT2

Change-Id: I6e07b3ca6d049a8ebdad7ea304b4f39e7c846151

releasetools: Store and use the dt image file through target files

Target files packages may be used for signing images separate from the
build process. Store the device tree image file in the target files
package so it can be used during the signing process.

Change-Id: Ie8507121fa9c4ba57ecffeab05bd859ae5f5b788
2025-02-05 20:38:40 +08:00
Luca Stefani
80f63ee9d1 Add build support for XZ ramdisks
Co-authored-by: Arne Coucheron <arco68@gmail.com>
Change-Id: I61530b6da06e0038970551aa4d12bce02007ae3c
2025-02-05 20:37:48 +08:00
Gabriele M
8e28209c8a releasetools: Add script to sign zips
Change-Id: I9cbeb6edea79a7e9bb0fc692e53497b54058d67f
(cherry picked from commit 040a8b007974c6cb56d361d6db8ba96f9b63da10)
2025-02-05 20:35:57 +08:00
Tom Powell
c32bd60f93 releasetools: support reading release keys out of some sort of command
key passphrases may live in some sort of secure storage, support running
an arbitrary command to retrieve them.

Change-Id: I49862cf60f1b73a2356e0c492e1038beef28a95f
(cherry picked from commit 9caf8603575aecf51761feaeac6db619be76cfd3)
2025-02-05 20:35:57 +08:00
Peter Cai
2a279867ea releasetools: do not remove dynamic partitions in system-only builds
* Before this commit, the generated `dynamic_partitions_op_list` in
  FullOTA packages always tries to remove all partitions and recreate
  them upon flashing. This makes it impossible to have a system-only
  "FullOTA" because vendor partition(s) are always removed.

* This commit detects if a build is vendor-less and disables every
  dynamic partition operation except `resize`, in order to keep the
  original content around after the flash. The change should not affect
  non-dynamic-partition or builds with vendor image included.

Change-Id: I0cded7f3b2958f35103d73d19b7fb5f292f6c17f
Signed-off-by: Jesse Chan <jc@lineageos.org>
2025-02-05 20:35:57 +08:00
Christian Oder
1a13c9e6ee build_image: Allow disabling custom inode count calculation
This allows us to skip custom inode count calculation by setting
BOARD_*IMAGE_EXTFS_INODE_COUNT to -1, this will end up letting
mke2fs calculate appropriate inode count on its own.

While build_image only allocates exact number of needed inodes
plus 4% spare with .2% margin, mke2fs will allocate as many
inodes as it thinks is appropriate given the filesystem size.

Change-Id: If03d5edae8378be3b305346176067b01163f6f3d
2025-02-05 20:35:57 +08:00
Brint E. Kriebel
3d048e0f77 releasetools: Use the first entry of a mount point when reading fstab
There may be multiple entries in fstab for a mount point. Use the first
value found so the entries are prioritized in order.

Change-Id: Ibd2631413d3e00507d3a0ec84fb91755f1c7993c
Ticket: OPO-326
2025-02-05 20:35:57 +08:00
Matt Mower
9ff8ca72c5 Edify: Add abort message for bootloader asserts
* If a bootloader assert is not satisfied, print the
  versions that are supported by the package as well as the version
  on the device.

Change-Id: I958d49281c51bd4e60d596a727bb94cfc4a21909
2025-02-05 20:35:57 +08:00
Andrew Dodd
155e4eba66 ota: Disable downgrade check
We want users to be able to downgrade their packages.

Change-Id: I6bcbd4ee2a02640fe0855b0f1f197a02e914c927
2025-02-05 20:35:57 +08:00
M1cha
9b91836d1f releasetools: ota_from_target_files: add FullOTA_PostValidate
Change-Id: I152412049f90fd546d4516cc064238c3192be553
2025-02-05 20:35:57 +08:00
Michael Bestas
2360e10760 Don't enable ADB by default on userdebug builds
Squashed with the following commits:

Author: Scott Mertz <scott@cyngn.com>
Date:   Thu Feb 26 10:51:44 2015 -0800
    Enable ADB by default when ro.adb.secure is not 1
    * Property ro.build.type is not part of the default.prop we can't
      use this to decide how to apply adb by default within this function
    Change-Id: Ib3eb24c655353966d64c7148d7530244b628ce94

Author: LibXZR <i@xzr.moe>
Date:   Sat Apr 30 16:29:35 2022 +0800
    tools: Let adb secure check depend on "==0" rather than "!=1"
    We are using PRODUCT_SYSTEM_DEFAULT_PROPERTIES to set
    `ro.adb.secure` property. But unfortunately this flag only
    affect system partition, which means in other partitions
    e.g. vendor and system_ext `ro.adb.secure` stays empty.
    Thus `persist.sys.usb.config=adb` is unconditionally set
    in partitions other than system, which lead to adb enabled
    by default even on user build.
    Change-Id: I1f8b463b3ec645309369f36014bed556e75ed210
    Signed-off-by: LibXZR <i@xzr.moe>

Change-Id: I33ae5c6f2787017a62e679aa0c28d4b909d45935
2025-02-05 20:35:57 +08:00
TheScarastic
abb95af328 Don't make recovery patch for devices with prebuilt vendor
Change-Id: I05c0155e6331bfeccd4ad545e003fa3fa3498044
2025-02-05 20:35:57 +08:00
dianlujitao
6a1b8b765e Move recovery-from-boot.p from /system to /vendor
The file was missed when moving recovery resources, but the assertion
path was changed, as a result non-Treble devices failed to build.

Fixes: Ia4045bd67ffb3d899efa8d20dab4c4299b87ee5f
Change-Id: Ib7822a9bd5b1a2ab7e762e9fb35dbb22291a3a76
2025-02-05 20:35:57 +08:00
Steve Kondik
6d06aad39d Allow override of device asserts, including multi-device support.
Set in board file with TARGET_OTA_ASSERT_DEVICE.
(cherry-picked from commit 0f452f21fc9323b9d1fe746161761cf40aaa5030)

Change-Id: I3d06bdc0e3e26bde0c0e646accd050364f9713b9

ota_from_target_files: Remove device dependent arguments

These device-specific arguments are defined at build time and are
necessary to generate the zip correctly. Don't use command line
arguments to specify them, but write all the needed information
in misc_info.txt when the target-files zip is generated.
ota_from_target_files will then read misc_info.txt and set
everything automatically.

Change-Id: Ibdbca575b76eb07b53fccfcea52a351c7e333f91
Signed-off-by: André Pinela <sheffzor@gmail.com>
2025-02-05 20:35:57 +08:00
Wei Li
1911f735a4 Merge "Extract class MetadataDb to a separate python library so it can be used in notice files generation." into main am: eda61c1a85 am: 93f32d1d5e
Original change: https://android-review.googlesource.com/c/platform/build/+/3277554

Change-Id: I6a690da843200cee9c9b6979672c7f6d2239a80e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-09-24 00:19:26 +00:00
Zhuoyao Zhang
cc877453a1 Merge "Ensure a single running instance of edit monitor" into main am: 549513a4ab am: 2e7473f31a
Original change: https://android-review.googlesource.com/c/platform/build/+/3270767

Change-Id: I45029c27abfb063722dda6652ad206b8cea97820
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-09-24 00:18:32 +00:00
Wei Li
eda61c1a85 Merge "Extract class MetadataDb to a separate python library so it can be used in notice files generation." into main 2024-09-23 23:23:43 +00:00
Zhuoyao Zhang
549513a4ab Merge "Ensure a single running instance of edit monitor" into main 2024-09-23 23:05:50 +00:00
Marybeth Fair
01e1e1f886 Merge "Revert "Add fingerprint to packages.map."" into main am: 1127718899 am: e61e7bdb4a
Original change: https://android-review.googlesource.com/c/platform/build/+/3277272

Change-Id: Ib434845a48bf6f8708e745cbc7729ffe3b9dfcea
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-09-23 22:40:27 +00:00
Zhuoyao Zhang
21a719c4ca Merge "The initial implementation of the edit monitor" into main am: 8478830c57 am: 46d0d8ca11
Original change: https://android-review.googlesource.com/c/platform/build/+/3266757

Change-Id: I034705d582ca5951a520978105262c5b0b5b7534
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-09-23 22:40:09 +00:00
Marybeth Fair
1127718899 Merge "Revert "Add fingerprint to packages.map."" into main 2024-09-23 22:17:36 +00:00
Zhuoyao Zhang
4d48559e2d Ensure a single running instance of edit monitor
This cl ensures at most 1 instance of edit monitor running from the
same binary by killing any existing instance before starting.

Specifically, When an edit monitor process starts, it will write a pidfile containing its pid and if such pidfile already exists (which means there's another instance there), it will read the pid contained in that pidfile and kill the corresponding process first.

Test: atst daemon_manager_test
bug: 365617369
Change-Id: I76954344df649aa79a6ef07ce55a62985decdb53
2024-09-23 22:04:44 +00:00
Zhuoyao Zhang
8478830c57 Merge "The initial implementation of the edit monitor" into main 2024-09-23 21:56:58 +00:00
Wei Li
0c6bc1ad45 Extract class MetadataDb to a separate python library so it can be used in notice files generation.
Bug: 330949782
Test: m sbom, no diffs in generated SBOM before/after the change
Test: build/soong/tests/sbom_test.sh
Test: CIs
Change-Id: I3cf944f744a1a5d359fd925621d1597b9681da9b
2024-09-23 21:25:12 +00:00
Marybeth Fair
a80e298d34 Revert "Add fingerprint to packages.map."
This reverts commit 769d8eed37.

Reason for revert: Caused crashed in places where old version files were present.

Change-Id: I7d529773226cd834979400aa018c47bbf6891b72
2024-09-23 19:37:21 +00:00
Wenshan Fu
d55bb477b7 Merge "Add a hostside Java lib to read proto paths" into main am: 1f56027906 am: 738ab744fe
Original change: https://android-review.googlesource.com/c/platform/build/+/3271535

Change-Id: I9d781ab6f80f46e15c2d23581e267e8b2d22a0ff
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-09-20 23:26:30 +00:00
Wenshan Fu
1f56027906 Merge "Add a hostside Java lib to read proto paths" into main 2024-09-20 22:44:12 +00:00
Dennis Shen
1bb460b089 Merge "aconfig: update cpp codegen" into main am: 41cb1204d5 am: 57b758db32
Original change: https://android-review.googlesource.com/c/platform/build/+/3273637

Change-Id: Iaa32eb02942fb5f05465ccd893bc850905728567
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-09-20 21:44:35 +00:00
Wenshan Fu
2924961d8a Add a hostside Java lib to read proto paths
Bug: 365157972
Test: m aconfig_host_device_paths_java
Change-Id: I858cda31e1e20b7df95bd0e6883694f0dd1cdef0
2024-09-21 05:06:51 +08:00
Dennis Shen
41cb1204d5 Merge "aconfig: update cpp codegen" into main 2024-09-20 20:40:50 +00:00
Wei Li
7b1440b53a Merge "Revert "Revert "Add command line tool that generates NOTICE.xml...."" into main am: ec85ca3e8a am: 12d93c5553
Original change: https://android-review.googlesource.com/c/platform/build/+/3273293

Change-Id: Ic81f445d3209898dbed09ffc53842c0ba7990cff
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-09-20 18:30:35 +00:00
Wei Li
ec85ca3e8a Merge "Revert "Revert "Add command line tool that generates NOTICE.xml...."" into main 2024-09-20 18:03:06 +00:00
Dennis Shen
46986a4f02 aconfig: update cpp codegen
Use access system call to check existence of a file to reduce the cost.

Change-Id: Id64b419db81b2f8ac923b49f7293ee8a54aa78ca
2024-09-20 14:06:47 +00:00
Jeongik Cha
dc85c5c831 Merge "Update OWNERS for allowlist" into main am: 8ee4271956 am: 39d07fc3a7
Original change: https://android-review.googlesource.com/c/platform/build/+/3273920

Change-Id: Iebacbd163958ce81c3bc41f6141697f0c99aeb18
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-09-20 00:05:35 +00:00
Zhuoyao Zhang
5335955317 The initial implementation of the edit monitor
Creates a class that will manager and monitor the actual edit watchdog
that run as a subprocess. As a first step, the class supports:
1) A start method that creates a pidfile and starts a subprocess with given target/args.
2) A stop method that terminates the created subprocess and removes the pidfile.

Detailed design in go/android-local-edit-monitor.

Test: atest daemon_manager_test
bug: 365617369
Change-Id: Ic6d7be67d284ade8033416235b9b0fb1e90e1b1a
2024-09-19 23:44:24 +00:00