diff options
| author | 2024-10-03 22:21:10 +0000 | |
|---|---|---|
| committer | 2024-10-04 13:21:10 +0000 | |
| commit | e4fb83024f8bdf268b5486b303194f61fa58f931 (patch) | |
| tree | 76c6856e7d3da9413c297c28c4e68ad20737c6ad | |
| parent | 9622b9c71d34248b764fa2a065422bafc8e5adee (diff) | |
add default path to flag bp files in mainline module
Mainline path cannot be list if the build is user or if the test doesn't
have the root permission. This change adds a default list for the flag
bp files in mainline module if the caller doesn't have the right
permission.
Test: presbumit
Bug: 365157972
Change-Id: I1ba6b4f99d565b7cbc1d49a5cc7b7a65cae2e140
3 files changed, 32 insertions, 3 deletions
diff --git a/tools/aconfig/aconfig_device_paths/Android.bp b/tools/aconfig/aconfig_device_paths/Android.bp index dda7a55903..bdf96ed896 100644 --- a/tools/aconfig/aconfig_device_paths/Android.bp +++ b/tools/aconfig/aconfig_device_paths/Android.bp @@ -61,8 +61,12 @@ genrule { name: "libaconfig_java_host_device_paths_src", srcs: ["src/HostDeviceProtosTemplate.java"], out: ["HostDeviceProtos.java"], - tool_files: ["partition_aconfig_flags_paths.txt"], - cmd: "sed -e '/TEMPLATE/{r$(location partition_aconfig_flags_paths.txt)' -e 'd}' $(in) > $(out)", + tool_files: [ + "partition_aconfig_flags_paths.txt", + "mainline_aconfig_flags_paths.txt", + ], + cmd: "sed -e '/TEMPLATE/{r$(location partition_aconfig_flags_paths.txt)' -e 'd}' $(in) > $(out).tmp && " + + "sed -e '/MAINLINE_T/{r$(location mainline_aconfig_flags_paths.txt)' -e 'd}' $(out).tmp > $(out)", } java_library_host { diff --git a/tools/aconfig/aconfig_device_paths/mainline_aconfig_flags_paths.txt b/tools/aconfig/aconfig_device_paths/mainline_aconfig_flags_paths.txt new file mode 100644 index 0000000000..af73a842b9 --- /dev/null +++ b/tools/aconfig/aconfig_device_paths/mainline_aconfig_flags_paths.txt @@ -0,0 +1,20 @@ +"/apex/com.android.adservices/etc/aconfig_flags.pb", +"/apex/com.android.appsearch/etc/aconfig_flags.pb", +"/apex/com.android.art/etc/aconfig_flags.pb", +"/apex/com.android.btservices/etc/aconfig_flags.pb", +"/apex/com.android.cellbroadcast/etc/aconfig_flags.pb", +"/apex/com.android.configinfrastructure/etc/aconfig_flags.pb", +"/apex/com.android.conscrypt/etc/aconfig_flags.pb", +"/apex/com.android.devicelock/etc/aconfig_flags.pb", +"/apex/com.android.healthfitness/etc/aconfig_flags.pb", +"/apex/com.android.ipsec/etc/aconfig_flags.pb", +"/apex/com.android.media/etc/aconfig_flags.pb", +"/apex/com.android.mediaprovider/etc/aconfig_flags.pb", +"/apex/com.android.ondevicepersonalization/etc/aconfig_flags.pb", +"/apex/com.android.os.statsd/etc/aconfig_flags.pb", +"/apex/com.android.permission/etc/aconfig_flags.pb", +"/apex/com.android.profiling/etc/aconfig_flags.pb", +"/apex/com.android.tethering/etc/aconfig_flags.pb", +"/apex/com.android.uwb/etc/aconfig_flags.pb", +"/apex/com.android.virt/etc/aconfig_flags.pb", +"/apex/com.android.wifi/etc/aconfig_flags.pb", diff --git a/tools/aconfig/aconfig_device_paths/src/HostDeviceProtosTemplate.java b/tools/aconfig/aconfig_device_paths/src/HostDeviceProtosTemplate.java index e2ad40ad6f..e7d0a76a8a 100644 --- a/tools/aconfig/aconfig_device_paths/src/HostDeviceProtosTemplate.java +++ b/tools/aconfig/aconfig_device_paths/src/HostDeviceProtosTemplate.java @@ -40,6 +40,10 @@ public class HostDeviceProtos { TEMPLATE }; + static final String[] MAINLINE_PATHS = { + MAINLINE_T + }; + private static final String APEX_DIR = "/apex"; private static final String RECURSIVELY_LIST_APEX_DIR_COMMAND = "shell su 0 find /apex | grep aconfig_flags"; @@ -55,7 +59,8 @@ public class HostDeviceProtos { String adbCommandOutput = adbCommandExecutor.executeAdbCommand( RECURSIVELY_LIST_APEX_DIR_COMMAND); - if (adbCommandOutput == null) { + if (adbCommandOutput == null || adbCommandOutput.isEmpty()) { + paths.addAll(Arrays.asList(MAINLINE_PATHS)); return paths; } |