Merge "Rename test_only_no_hashtree to generate_hashtree" into sc-dev

This commit is contained in:
Nikita Ioffe 2021-06-10 16:11:38 +00:00 committed by Android (Google) Code Review
commit dce0713739
2 changed files with 8 additions and 11 deletions

View File

@ -165,9 +165,10 @@ type apexBundleProperties struct {
// Default is false. // Default is false.
Ignore_system_library_special_case *bool Ignore_system_library_special_case *bool
// Whenever apex_payload.img of the APEX should include dm-verity hashtree. Should be only // Whenever apex_payload.img of the APEX should include dm-verity hashtree.
// used in tests. // Default value is false.
Test_only_no_hashtree *bool // TODO(b/190621617): change default value to true.
Generate_hashtree *bool
// Whenever apex_payload.img of the APEX should not be dm-verity signed. Should be only // Whenever apex_payload.img of the APEX should not be dm-verity signed. Should be only
// used in tests. // used in tests.
@ -1268,9 +1269,9 @@ func (a *apexBundle) installable() bool {
return !a.properties.PreventInstall && (a.properties.Installable == nil || proptools.Bool(a.properties.Installable)) return !a.properties.PreventInstall && (a.properties.Installable == nil || proptools.Bool(a.properties.Installable))
} }
// See the test_only_no_hashtree property // See the generate_hashtree property
func (a *apexBundle) testOnlyShouldSkipHashtreeGeneration() bool { func (a *apexBundle) shouldGenerateHashtree() bool {
return proptools.Bool(a.properties.Test_only_no_hashtree) return proptools.BoolDefault(a.properties.Generate_hashtree, false)
} }
// See the test_only_unsigned_payload property // See the test_only_unsigned_payload property

View File

@ -629,11 +629,7 @@ func (a *apexBundle) buildUnflattenedApex(ctx android.ModuleContext) {
optFlags = append(optFlags, "--assets_dir "+filepath.Dir(a.mergedNotices.HtmlGzOutput.String())) optFlags = append(optFlags, "--assets_dir "+filepath.Dir(a.mergedNotices.HtmlGzOutput.String()))
} }
if ctx.ModuleDir() != "system/apex/apexd/apexd_testdata" && ctx.ModuleDir() != "system/apex/shim/build" && a.testOnlyShouldSkipHashtreeGeneration() { if (moduleMinSdkVersion.GreaterThan(android.SdkVersion_Android10) && !a.shouldGenerateHashtree()) && !compressionEnabled {
ctx.PropertyErrorf("test_only_no_hashtree", "not available")
return
}
if (moduleMinSdkVersion.GreaterThan(android.SdkVersion_Android10) || a.testOnlyShouldSkipHashtreeGeneration()) && !compressionEnabled {
// Apexes which are supposed to be installed in builtin dirs(/system, etc) // Apexes which are supposed to be installed in builtin dirs(/system, etc)
// don't need hashtree for activation. Therefore, by removing hashtree from // don't need hashtree for activation. Therefore, by removing hashtree from
// apex bundle (filesystem image in it, to be specific), we can save storage. // apex bundle (filesystem image in it, to be specific), we can save storage.