Merge "aconfig: Print flags with namespace, and sort them" into main am: 375cb9ab07 am: 6a60a97bd4

Original change: https://android-review.googlesource.com/c/platform/build/+/2874915

Change-Id: I31124ea6d3506fad943c1fcd4e1bfccae7733cdb
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Treehugger Robot
2024-01-12 06:59:21 +00:00
committed by Automerger Merge Worker

View File

@@ -20,6 +20,7 @@ use aconfig_protos::aconfig::Flag_state as State;
use aconfig_protos::aconfig::Parsed_flags as ProtoParsedFlags;
use anyhow::{bail, Context, Result};
use regex::Regex;
use std::collections::BTreeMap;
use std::collections::HashMap;
use std::process::Command;
use std::{fs, str};
@@ -66,7 +67,7 @@ fn main() -> Result<()> {
let device_config_flags = parse_device_config(dc_stdout);
// read aconfig_flags.pb files
let mut flags: HashMap<String, Vec<String>> = HashMap::new();
let mut flags: BTreeMap<String, Vec<String>> = BTreeMap::new();
for partition in ["system", "system_ext", "product", "vendor"] {
let path = format!("/{}/etc/aconfig_flags.pb", partition);
let Ok(bytes) = fs::read(&path) else {
@@ -86,11 +87,10 @@ fn main() -> Result<()> {
// print flags
for (key, mut value) in flags {
let (_, package_and_name) = key.split_once('/').unwrap();
if let Some(dc_value) = device_config_flags.get(&key) {
value.push(dc_value.to_string());
}
println!("{}: {}", package_and_name, value.join(", "));
println!("{}: {}", key, value.join(", "));
}
Ok(())