diff options
author | Harshit Mahajan <harshitmahajan@google.com> | 2023-12-12 06:28:48 +0000 |
---|---|---|
committer | Harshit Mahajan <harshitmahajan@google.com> | 2024-01-09 21:40:29 +0000 |
commit | a4464326f8a0df0515b71f1ba38cb6397e440b1a (patch) | |
tree | 4efb08f09f72fec674dee2805137cd3b4372088b | |
parent | 0c8a298d5b985e70396f5a749b467b21f13d23fa (diff) | |
download | CrashRecovery-a4464326f8a0df0515b71f1ba38cb6397e440b1a.tar.gz |
Revert^2 "Create skeleton Apex"
f7ff54804ed724ff6873b73272426d4d7333ab6d
Bug: b/289203818
Test: m
Change-Id: I929910ffb120c38f4e2092791442ca9039fcea75
22 files changed, 381 insertions, 0 deletions
diff --git a/apex/Android.bp b/apex/Android.bp new file mode 100644 index 0000000..1e3a03b --- /dev/null +++ b/apex/Android.bp @@ -0,0 +1,163 @@ +// Copyright (C) 2023 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package { + default_applicable_licenses: ["Android-Apache-2.0"], +} + +soong_config_module_type { + name: "custom_bootclasspath_fragment", + module_type: "bootclasspath_fragment", + config_namespace: "ANDROID", + bool_variables: [ + "release_crashrecovery_module", + ], + properties: [ + "enabled" + ], +} + +// Encapsulate the contributions made by the com.android.crashrecovery to the bootclasspath. +custom_bootclasspath_fragment { + // This fragment will be enabled using release_crashrecovery_module flag + enabled: false, + soong_config_variables: { + release_crashrecovery_module: { + enabled: true, + }, + }, + + name: "com.android.crashrecovery-bootclasspath-fragment", + contents: ["framework-crashrecovery"], + apex_available: ["com.android.crashrecovery"], + hidden_api: { + split_packages: ["*"] // TODO(b/289203818) be more specific + }, + // The bootclasspath_fragments that provide APIs on which this depends. + fragments: [ + + // Needed to access core java APIs. + { + apex: "com.android.art", + module: "art-bootclasspath-fragment", + }, + ], + + // Additional stubs libraries that this fragment's contents use which are + // not provided by another bootclasspath_fragment. + additional_stubs: [ + // Needed to access platform APIs. + "android-non-updatable", + ], +} + +soong_config_module_type { + name: "custom_systemserverclasspath_fragment", + module_type: "systemserverclasspath_fragment", + config_namespace: "ANDROID", + bool_variables: [ + "release_crashrecovery_module", + ], + properties: [ + "enabled" + ], +} + +// Encapsulate the contributions made by the com.android.crashrecovery to the systemserverclasspath. +custom_systemserverclasspath_fragment { + // This fragment will be enabled using release_crashrecovery_module flag + enabled: false, + soong_config_variables: { + release_crashrecovery_module: { + enabled: true, + }, + }, + + name: "com.android.crashrecovery-systemserverclasspath-fragment", + contents: ["service-crashrecovery"], + apex_available: ["com.android.crashrecovery"], +} + +apex_key { + name: "com.android.crashrecovery.key", + public_key: "com.android.crashrecovery.avbpubkey", + private_key: "com.android.crashrecovery.pem", +} + +android_app_certificate { + name: "com.android.crashrecovery.certificate", + certificate: "com.android.crashrecovery", +} + +soong_config_module_type { + name: "custom_apex", + module_type: "apex", + config_namespace: "ANDROID", + bool_variables: [ + "release_crashrecovery_module", + ], + properties: [ + "enabled" + ], +} + +custom_apex { + // This apex will be enabled using release_crashrecovery_module flag + enabled: false, + soong_config_variables: { + release_crashrecovery_module: { + enabled: true, + }, + }, + + name: "com.android.crashrecovery", + defaults: ["v-launched-apex-module"], + bootclasspath_fragments: ["com.android.crashrecovery-bootclasspath-fragment"], + systemserverclasspath_fragments: [ + "com.android.crashrecovery-systemserverclasspath-fragment", + ], + file_contexts: ":com.android.crashrecovery-file_contexts", + prebuilts: [ + "current_sdkinfo", + ], + key: "com.android.crashrecovery.key", + certificate: ":com.android.crashrecovery.certificate", + manifest: "manifest.json", + min_sdk_version: "34", +} + +soong_config_module_type { + name: "custom_sdk", + module_type: "sdk", + config_namespace: "ANDROID", + bool_variables: [ + "release_crashrecovery_module", + ], + properties: [ + "enabled" + ], +} + +custom_sdk { + // This sdk will be enabled using release_crashrecovery_module flag + enabled: false, + soong_config_variables: { + release_crashrecovery_module: { + enabled: true, + }, + }, + + name: "crashrecovery-sdk", + apexes: ["com.android.crashrecovery"], +} diff --git a/apex/com.android.crashrecovery.avbpubkey b/apex/com.android.crashrecovery.avbpubkey Binary files differnew file mode 100644 index 0000000..77da3bb --- /dev/null +++ b/apex/com.android.crashrecovery.avbpubkey diff --git a/apex/com.android.crashrecovery.pem b/apex/com.android.crashrecovery.pem new file mode 100644 index 0000000..305905a --- /dev/null +++ b/apex/com.android.crashrecovery.pem @@ -0,0 +1,52 @@ +-----BEGIN PRIVATE KEY----- +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 +fjYFm6MyBYkhbartcXD3mbkphLS/QQ== +-----END PRIVATE KEY----- diff --git a/apex/com.android.crashrecovery.pk8 b/apex/com.android.crashrecovery.pk8 Binary files differnew file mode 100644 index 0000000..7776263 --- /dev/null +++ b/apex/com.android.crashrecovery.pk8 diff --git a/apex/com.android.crashrecovery.x509.pem b/apex/com.android.crashrecovery.x509.pem new file mode 100644 index 0000000..0540f98 --- /dev/null +++ b/apex/com.android.crashrecovery.x509.pem @@ -0,0 +1,34 @@ +-----BEGIN CERTIFICATE----- +MIIF1zCCA78CFE7JxQwseCR+PlWgD8SWg3XQ+IR8MA0GCSqGSIb3DQEBCwUAMIGm +MQswCQYDVQQGEwJVUzETMBEGA1UECAwKQ2FsaWZvcm5pYTEWMBQGA1UEBwwNTW91 +bnRhaW4gVmlldzEQMA4GA1UECgwHQW5kcm9pZDEQMA4GA1UECwwHQW5kcm9pZDEi +MCAGCSqGSIb3DQEJARYTYW5kcm9pZEBhbmRyb2lkLmNvbTEiMCAGA1UEAwwZY29t +LmFuZHJvaWQuY3Jhc2hyZWNvdmVyeTAgFw0yMzA1MDkxNjI0MjVaGA80NzYxMDQw +NDE2MjQyNVowgaYxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMRYw +FAYDVQQHDA1Nb3VudGFpbiBWaWV3MRAwDgYDVQQKDAdBbmRyb2lkMRAwDgYDVQQL +DAdBbmRyb2lkMSIwIAYJKoZIhvcNAQkBFhNhbmRyb2lkQGFuZHJvaWQuY29tMSIw +IAYDVQQDDBljb20uYW5kcm9pZC5jcmFzaHJlY292ZXJ5MIICIjANBgkqhkiG9w0B +AQEFAAOCAg8AMIICCgKCAgEAvz1dJr7rOq1T3h4ETrFwfUjswT6etFh1h5IQ2SDW +zd43AGTG4QyLgrnqYnRqOHIw031cseHNT1gkaXh5Id1qYWge4of5EHI7VWxdj93e +BA3EGnOQvWhqsqEiqXoCx7woHBXNBZ5hYcsxmTdiBXQMi8FOqhnL6f1i2AuLK0Kd +IgloJtz9sDXMQI3FZd2KyEriDtqrNJt2gVMHpMjc1Nt2V82DTPonrqKhp+zfKGZA +2k/95NEjmhi49qsVdppVPY6jqwDjyKMVCsOjSisvzutaZAotv4sJCIZTYDQ2P47q +5+H+BNjf0MlpRpfZkfVpoz+D5nkp3feYuxdJgLB0XJUsmbueu3LXefvP1CayGdlB +Ion6ZRRucbv528NpVm+134aza2ifUxc8lsq+4FN7zm+7oocSWrh95GfRZqVBNwyE +OSJaS1twBXS76mDBggJmcVVRKR1vOuqVoROjs7P4Dh/wzAP/Hl/CIwlH24NJDuDv +JJHduip7TlIbojNWFO0UNsmi7fnc//pluq/uvWI10vgp2CbCj+ILaGbNsZJb67wb +Yne9kF/TMbJnnBONY8O0qhEawJLhxrrcx1CBsX22GnGudkVDCItQM55fKkaK2alq +H2qSlEGFYgKrP4xksv5zCNBxu7xTZALbQktDWX5q5ca/ZLzaVD9fi1ycFWcDxYr9 +MCMCAwEAATANBgkqhkiG9w0BAQsFAAOCAgEAcXGjOr6yesIFAOmMGix/KjThQhM1 +tI8dpz731xzWGFE4DmjsSXhosj4W/8JPsxiC2T3e0CXfk/2pmrxLTj4bRPX0AupQ +lVjFo6usljmS15qMvqhshZkRX8lBG4Pgy8YapD5NklKyhcz2XQSVJSSTj3M0q08E +cWsSfJGgV+PaTFvD3d0TDMPabnGzS3+3H0ry3l+vmHF7YFuzcBsU3uYAvdMVrI4d +e9mFQU2vOemp4HzLlkoxEROErrlMtE3yIxtV42Zm2K1Tukm4/eP1lo18Ki3C5zIH +5IagjK4uTImotIXcNr1C96depoEtW+RZkWmI3CFdUx2IdrhGXn6gba5cy/XCWwtN +JcDB3by2XrnnQPXfUrd58taqe7DtM2bTNaUJRCzxMI8JnrtuFrGn9mN0fd+qyh9O +g2KRcfezbZpTku3MGeLgWaOMsy/oFJolFEwCtB6eVrQnabIc0ZHfGBZboGyc+zUn +FGkq63wKcDZmIGPuc5piMihvmUV0LKlzXRc7pvjWAUXGDTEdLBYyus3BF6xgPGeD +hPFaEtSWs2ivRjkFi117jLPT3TKLWzWMn6LBsHBBofqn2W2OTM+GpqS7Xp80sR8m +evIEb2u5AoSCXa98toPY7xyxYF+i0dQxWIiJIeE/HTFlYK/MdfO6yACK4qyyvf2F +qExxrF5L5qotgAQ= +-----END CERTIFICATE----- diff --git a/apex/manifest.json b/apex/manifest.json new file mode 100644 index 0000000..c13a3ea --- /dev/null +++ b/apex/manifest.json @@ -0,0 +1,7 @@ +{ + "name": "com.android.crashrecovery", + + // Placeholder module version to be replaced during build. + // Do not change! + "version": 0 +} diff --git a/framework/Android.bp b/framework/Android.bp new file mode 100644 index 0000000..0d03367 --- /dev/null +++ b/framework/Android.bp @@ -0,0 +1,32 @@ +// Copyright (C) 2022 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package { + default_applicable_licenses: ["Android-Apache-2.0"], +} + +java_sdk_library { + name: "framework-crashrecovery", + srcs: [ + "java/**/*.java", + ], + apex_available: [ + "com.android.crashrecovery", + ], + defaults: ["framework-module-defaults"], + sdk_version: "module_current", + impl_library_visibility: [ + "//packages/modules/CrashRecovery:__subpackages__" + ], +}
\ No newline at end of file diff --git a/framework/api/current.txt b/framework/api/current.txt new file mode 100644 index 0000000..d802177 --- /dev/null +++ b/framework/api/current.txt @@ -0,0 +1 @@ +// Signature format: 2.0 diff --git a/framework/api/module-lib-current.txt b/framework/api/module-lib-current.txt new file mode 100644 index 0000000..d802177 --- /dev/null +++ b/framework/api/module-lib-current.txt @@ -0,0 +1 @@ +// Signature format: 2.0 diff --git a/framework/api/module-lib-removed.txt b/framework/api/module-lib-removed.txt new file mode 100644 index 0000000..d802177 --- /dev/null +++ b/framework/api/module-lib-removed.txt @@ -0,0 +1 @@ +// Signature format: 2.0 diff --git a/framework/api/removed.txt b/framework/api/removed.txt new file mode 100644 index 0000000..d802177 --- /dev/null +++ b/framework/api/removed.txt @@ -0,0 +1 @@ +// Signature format: 2.0 diff --git a/framework/api/system-current.txt b/framework/api/system-current.txt new file mode 100644 index 0000000..d802177 --- /dev/null +++ b/framework/api/system-current.txt @@ -0,0 +1 @@ +// Signature format: 2.0 diff --git a/framework/api/system-removed.txt b/framework/api/system-removed.txt new file mode 100644 index 0000000..d802177 --- /dev/null +++ b/framework/api/system-removed.txt @@ -0,0 +1 @@ +// Signature format: 2.0 diff --git a/framework/java/com/android/service/watchdog/Foobar.java b/framework/java/com/android/service/watchdog/Foobar.java new file mode 100644 index 0000000..d888545 --- /dev/null +++ b/framework/java/com/android/service/watchdog/Foobar.java @@ -0,0 +1,23 @@ +/* + * Copyright (C) 2023 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.service.watchdog; + + +/** @hide */ +public class Foobar { + +}
\ No newline at end of file diff --git a/service/Android.bp b/service/Android.bp new file mode 100644 index 0000000..e756272 --- /dev/null +++ b/service/Android.bp @@ -0,0 +1,35 @@ +// Copyright (C) 2022 The Android Open Source Project +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package { + default_applicable_licenses: ["Android-Apache-2.0"], +} + +java_sdk_library { + name: "service-crashrecovery", + srcs: [ + "java/**/*.java", + ], + defaults: [ + "framework-system-server-module-defaults", + ], + permitted_packages: [], + apex_available: [ + "com.android.crashrecovery", + ], + sdk_version: "module_current", + impl_library_visibility: [ + "//packages/modules/CrashRecovery:__subpackages__" + ], +}
\ No newline at end of file diff --git a/service/api/current.txt b/service/api/current.txt new file mode 100644 index 0000000..d802177 --- /dev/null +++ b/service/api/current.txt @@ -0,0 +1 @@ +// Signature format: 2.0 diff --git a/service/api/module-lib-current.txt b/service/api/module-lib-current.txt new file mode 100644 index 0000000..d802177 --- /dev/null +++ b/service/api/module-lib-current.txt @@ -0,0 +1 @@ +// Signature format: 2.0 diff --git a/service/api/module-lib-removed.txt b/service/api/module-lib-removed.txt new file mode 100644 index 0000000..d802177 --- /dev/null +++ b/service/api/module-lib-removed.txt @@ -0,0 +1 @@ +// Signature format: 2.0 diff --git a/service/api/removed.txt b/service/api/removed.txt new file mode 100644 index 0000000..d802177 --- /dev/null +++ b/service/api/removed.txt @@ -0,0 +1 @@ +// Signature format: 2.0 diff --git a/service/api/system-server-current.txt b/service/api/system-server-current.txt new file mode 100644 index 0000000..d802177 --- /dev/null +++ b/service/api/system-server-current.txt @@ -0,0 +1 @@ +// Signature format: 2.0 diff --git a/service/api/system-server-removed.txt b/service/api/system-server-removed.txt new file mode 100644 index 0000000..d802177 --- /dev/null +++ b/service/api/system-server-removed.txt @@ -0,0 +1 @@ +// Signature format: 2.0 diff --git a/service/java/com/android/server/FoobarService.java b/service/java/com/android/server/FoobarService.java new file mode 100644 index 0000000..93653a8 --- /dev/null +++ b/service/java/com/android/server/FoobarService.java @@ -0,0 +1,23 @@ +/* + * Copyright (C) 2023 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.server; + + +/** @hide */ +public class FoobarService { + +}
\ No newline at end of file |