summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Herbert Xue <herbertxue@google.com> 2025-03-10 14:45:40 +0800
committer Herbert Xue <herbertxue@google.com> 2025-03-12 11:01:07 +0800
commit9771fadb6bc6fac80f1c70bc341976f227dfe79f (patch)
treed7f680ef771b3810513f9a4ff1e3d2fb10119e53
parentd98a99722186fbd0500c0dae8e7fe49364987fc6 (diff)
Create the filegroup to collect cert files for otatools.zip
Create "soong_generated_otatools_package_filegroup" to collect the cert files from following folders: - //build/make/target/product/security - //device - //external/avb/test/data - //packages/modules - //vendor Bug: 395988167 Test: m dist otatools-package-temp Change-Id: I578ee475d1f3ae873d0c1184df353e67c5fbb6fd
-rw-r--r--android/Android.bp4
-rw-r--r--android/filegroup.go52
2 files changed, 56 insertions, 0 deletions
diff --git a/android/Android.bp b/android/Android.bp
index 00dc50ac2..4b75148fc 100644
--- a/android/Android.bp
+++ b/android/Android.bp
@@ -171,3 +171,7 @@ bootstrap_go_package {
// Used by plugins
visibility: ["//visibility:public"],
}
+
+otatools_package_filegroup {
+ name: "otatools_package_filegroup",
+}
diff --git a/android/filegroup.go b/android/filegroup.go
index 4fad52aaa..9bcfd0a83 100644
--- a/android/filegroup.go
+++ b/android/filegroup.go
@@ -33,6 +33,7 @@ var PrepareForTestWithFilegroup = FixtureRegisterWithContext(func(ctx Registrati
func RegisterFilegroupBuildComponents(ctx RegistrationContext) {
ctx.RegisterModuleType("filegroup", FileGroupFactory)
ctx.RegisterModuleType("filegroup_defaults", FileGroupDefaultsFactory)
+ ctx.RegisterModuleType("otatools_package_filegroup", OtatoolsFileGroupFactory)
}
type fileGroupProperties struct {
@@ -163,3 +164,54 @@ func (fg *fileGroup) IDEInfo(ctx BaseModuleContext, dpInfo *IdeInfo) {
}
}
}
+
+type OtatoolsFileGroup struct {
+ ModuleBase
+}
+
+func OtatoolsFileGroupFactory() Module {
+ module := &OtatoolsFileGroup{}
+ InitAndroidModule(module)
+ AddLoadHook(module, func(ctx LoadHookContext) {
+ module.createOTAToolsPackagefilegroup(ctx)
+ })
+ return module
+}
+
+func (fg *OtatoolsFileGroup) GenerateAndroidBuildActions(ctx ModuleContext) {
+}
+
+// Create the filegroup to collect cert files for otatools.zip.
+func (fg *OtatoolsFileGroup) createOTAToolsPackagefilegroup(ctx LoadHookContext) {
+ ctx.CreateModuleInDirectory(
+ FileGroupFactory,
+ ".",
+ &struct {
+ Name *string
+ Srcs []string
+ Visibility []string
+ }{
+ Name: proptools.StringPtr("soong_generated_otatools_package_filegroup"),
+ Srcs: []string{
+ "build/make/target/product/security/**/*.x509.pem",
+ "build/make/target/product/security/**/*.pk8",
+ "device/**/*.pk8",
+ "device/**/verifiedboot*",
+ "device/**/*.pem",
+ "device/**/oem*.prop",
+ "device/**/*.avbpubkey",
+ "external/avb/test/data/**/testkey_*.pem",
+ "external/avb/test/data/**/atx_metadata.bin",
+ "packages/modules/**/*.x509.pem",
+ "packages/modules/**/*.pk8",
+ "packages/modules/**/*.key.pem",
+ "vendor/**/*.pk8",
+ "vendor/**/verifiedboot*",
+ "vendor/**/*.pem",
+ "vendor/**/oem*.prop",
+ "vendor/**/*.avbpubkey",
+ },
+ Visibility: []string{"//build/make/tools/otatools_package"},
+ },
+ )
+}