Add signing lineage for runtime_resource_overlay
Add ability to specify a signing lineage file for runtime_resource_overlay. Test: app_test.go Bug: 153366049 Merged-In: I68286bc0caa9daad6ef74db39f7750924f1d93dd Change-Id: I68286bc0caa9daad6ef74db39f7750924f1d93dd
This commit is contained in:
parent
43527e1f31
commit
966b2f02fb
|
@ -1692,6 +1692,9 @@ type RuntimeResourceOverlayProperties struct {
|
|||
// module name in the form ":module".
|
||||
Certificate *string
|
||||
|
||||
// Name of the signing certificate lineage file.
|
||||
Lineage *string
|
||||
|
||||
// optional theme name. If specified, the overlay package will be applied
|
||||
// only when the ro.boot.vendor.overlay.theme system property is set to the same value.
|
||||
Theme *string
|
||||
|
@ -1766,7 +1769,11 @@ func (r *RuntimeResourceOverlay) GenerateAndroidBuildActions(ctx android.ModuleC
|
|||
_, certificates := collectAppDeps(ctx, r, false, false)
|
||||
certificates = processMainCert(r.ModuleBase, String(r.properties.Certificate), certificates, ctx)
|
||||
signed := android.PathForModuleOut(ctx, "signed", r.Name()+".apk")
|
||||
SignAppPackage(ctx, signed, r.aapt.exportPackage, certificates, nil)
|
||||
var lineageFile android.Path
|
||||
if lineage := String(r.properties.Lineage); lineage != "" {
|
||||
lineageFile = android.PathForModuleSrc(ctx, lineage)
|
||||
}
|
||||
SignAppPackage(ctx, signed, r.aapt.exportPackage, certificates, lineageFile)
|
||||
r.certificate = certificates[0]
|
||||
|
||||
r.outputFile = signed
|
||||
|
|
|
@ -2895,6 +2895,7 @@ func TestRuntimeResourceOverlay(t *testing.T) {
|
|||
runtime_resource_overlay {
|
||||
name: "foo",
|
||||
certificate: "platform",
|
||||
lineage: "lineage.bin",
|
||||
product_specific: true,
|
||||
static_libs: ["bar"],
|
||||
resource_libs: ["baz"],
|
||||
|
@ -2949,6 +2950,11 @@ func TestRuntimeResourceOverlay(t *testing.T) {
|
|||
|
||||
// Check cert signing flag.
|
||||
signedApk := m.Output("signed/foo.apk")
|
||||
lineageFlag := signedApk.Args["flags"]
|
||||
expectedLineageFlag := "--lineage lineage.bin"
|
||||
if expectedLineageFlag != lineageFlag {
|
||||
t.Errorf("Incorrect signing lineage flags, expected: %q, got: %q", expectedLineageFlag, lineageFlag)
|
||||
}
|
||||
signingFlag := signedApk.Args["certificates"]
|
||||
expected := "build/make/target/product/security/platform.x509.pem build/make/target/product/security/platform.pk8"
|
||||
if expected != signingFlag {
|
||||
|
|
Loading…
Reference in New Issue