• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright (C) 2019 The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15package {
16    default_applicable_licenses: ["Android-Apache-2.0"],
17}
18
19java_test_host {
20    name: "CtsStagedInstallHostTestCases",
21    defaults: ["cts_defaults"],
22    srcs: [
23        "src/**/*.java",
24        ":apex-info-list",
25    ],
26    libs: [
27        "cts-tradefed",
28        "cts-shim-host-lib",
29        "tradefed",
30        "truth-prebuilt",
31        "hamcrest",
32        "hamcrest-library",
33    ],
34    static_libs: ["cts-install-lib-host"],
35    data: [
36        ":StagedInstallTest",
37        ":deapexer.zip",
38    ],
39    test_suites: [
40        "cts",
41        "general-tests",
42        "mts",
43    ],
44}
45
46android_test_helper_app {
47    name: "StagedInstallTest",
48    srcs: ["app/src/**/*.java"],
49    manifest: "app/AndroidManifest.xml",
50    java_resources: [
51        ":ApexKeyRotationTestV2_SignedBob",
52        ":ApexKeyRotationTestV2_SignedBobRot",
53        ":ApexKeyRotationTestV2_SignedBobRotRollback",
54        ":ApexKeyRotationTestV3_SignedBob",
55        ":ApexKeyRotationTestV3_SignedBobRot",
56        ":StagedInstallTestApexV1_NotPreInstalled",
57        ":StagedInstallTestApexV2_AdditionalFile",
58        ":StagedInstallTestApexV2_AdditionalFolder",
59        ":StagedInstallTestApexV2_DifferentCertificate",
60        ":StagedInstallTestApexV2_DifferentPackageName",
61        ":StagedInstallTestApexV2_NoHashtree",
62        ":StagedInstallTestApexV2_WithPostInstallHook",
63        ":StagedInstallTestApexV2_WithPreInstallHook",
64        ":StagedInstallTestApexV2_WrongSha",
65        ":StagedInstallTestApexV2_WithoutApkInApex",
66        ":StagedInstallTestAppSamePackageNameAsApex",
67        ":StagedInstallTestApexV2_SdkTargetP",
68        ":StagedInstallTestApexV2_ApkInApexSdkTargetP",
69        ":StagedInstallTestCorruptedApex_b146895998",
70        ":StagedInstallTestApexV2_NoApkSignature",
71        ":StagedInstallTestApexV2_UnsignedPayload",
72        ":StagedInstallTestApexV2_SignPayloadWithDifferentKey",
73        ":StagedInstallTestApexV2_Rebootless",
74        ":StagedInstallTestApexV3_Rebootless",
75    ],
76    static_libs: [
77        "androidx.test.runner",
78        "androidx.test.core",
79        "truth-prebuilt",
80        "cts-install-lib",
81    ],
82    sdk_version: "test_current",
83    test_suites: ["device-tests"],
84
85}
86
87android_test_helper_app {
88    name: "StagedInstallTestAppSamePackageNameAsApex",
89
90    srcs: ["testdata/apk/src/**/*java"],
91
92    manifest: "testdata/apk/StagedInstallTestAppSamePackageNameAsApex.xml",
93}
94
95prebuilt_apex {
96    name: "ApexKeyRotationTestV2_SignedBob",
97    arch: {
98        arm: {
99            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_signed_bob.apex",
100        },
101        arm64: {
102            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_signed_bob.apex",
103        },
104        riscv64: {
105            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v2_signed_bob.apex",
106        },
107        x86: {
108            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_signed_bob.apex",
109        },
110        x86_64: {
111            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_signed_bob.apex",
112        },
113    },
114    filename: "com.android.apex.cts.shim.v2_signed_bob.apex",
115    installable: false,
116}
117
118prebuilt_apex {
119    name: "ApexKeyRotationTestV2_SignedBobRot",
120    arch: {
121        arm: {
122            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_signed_bob_rot.apex",
123        },
124        arm64: {
125            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_signed_bob_rot.apex",
126        },
127        riscv64: {
128            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v2_signed_bob_rot.apex",
129        },
130        x86: {
131            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_signed_bob_rot.apex",
132        },
133        x86_64: {
134            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_signed_bob_rot.apex",
135        },
136    },
137    filename: "com.android.apex.cts.shim.v2_signed_bob_rot.apex",
138    installable: false,
139}
140
141prebuilt_apex {
142    name: "ApexKeyRotationTestV2_SignedBobRotRollback",
143    arch: {
144        arm: {
145            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_signed_bob_rot_rollback.apex",
146        },
147        arm64: {
148            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_signed_bob_rot_rollback.apex",
149        },
150        riscv64: {
151            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v2_signed_bob_rot_rollback.apex",
152        },
153        x86: {
154            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_signed_bob_rot_rollback.apex",
155        },
156        x86_64: {
157            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_signed_bob_rot_rollback.apex",
158        },
159    },
160    filename: "com.android.apex.cts.shim.v2_signed_bob_rot_rollback.apex",
161    installable: false,
162}
163
164prebuilt_apex {
165    name: "ApexKeyRotationTestV3_SignedBob",
166    arch: {
167        arm: {
168            src: "testdata/apex/arm/com.android.apex.cts.shim.v3_signed_bob.apex",
169        },
170        arm64: {
171            src: "testdata/apex/arm/com.android.apex.cts.shim.v3_signed_bob.apex",
172        },
173        riscv64: {
174            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v3_signed_bob.apex",
175        },
176        x86: {
177            src: "testdata/apex/x86/com.android.apex.cts.shim.v3_signed_bob.apex",
178        },
179        x86_64: {
180            src: "testdata/apex/x86/com.android.apex.cts.shim.v3_signed_bob.apex",
181        },
182    },
183    filename: "com.android.apex.cts.shim.v3_signed_bob.apex",
184    installable: false,
185}
186
187prebuilt_apex {
188    name: "ApexKeyRotationTestV3_SignedBobRot",
189    arch: {
190        arm: {
191            src: "testdata/apex/arm/com.android.apex.cts.shim.v3_signed_bob_rot.apex",
192        },
193        arm64: {
194            src: "testdata/apex/arm/com.android.apex.cts.shim.v3_signed_bob_rot.apex",
195        },
196        riscv64: {
197            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v3_signed_bob_rot.apex",
198        },
199        x86: {
200            src: "testdata/apex/x86/com.android.apex.cts.shim.v3_signed_bob_rot.apex",
201        },
202        x86_64: {
203            src: "testdata/apex/x86/com.android.apex.cts.shim.v3_signed_bob_rot.apex",
204        },
205    },
206    filename: "com.android.apex.cts.shim.v3_signed_bob_rot.apex",
207    installable: false,
208}
209
210prebuilt_apex {
211    name: "StagedInstallTestApexV1",
212    arch: {
213        arm: {
214            src: "testdata/apex/arm/com.android.apex.cts.shim.v1.apex",
215        },
216        arm64: {
217            src: "testdata/apex/arm/com.android.apex.cts.shim.v1.apex",
218        },
219        riscv64: {
220            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v1.apex",
221        },
222        x86: {
223            src: "testdata/apex/x86/com.android.apex.cts.shim.v1.apex",
224        },
225        x86_64: {
226            src: "testdata/apex/x86/com.android.apex.cts.shim.v1.apex",
227        },
228    },
229    filename: "com.android.apex.cts.shim.v1.apex",
230    installable: false,
231}
232
233prebuilt_apex {
234    name: "StagedInstallTestApexV2",
235    arch: {
236        arm: {
237            src: "testdata/apex/arm/com.android.apex.cts.shim.v2.apex",
238        },
239        arm64: {
240            src: "testdata/apex/arm/com.android.apex.cts.shim.v2.apex",
241        },
242        riscv64: {
243            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v2.apex",
244        },
245        x86: {
246            src: "testdata/apex/x86/com.android.apex.cts.shim.v2.apex",
247        },
248        x86_64: {
249            src: "testdata/apex/x86/com.android.apex.cts.shim.v2.apex",
250        },
251    },
252    filename: "com.android.apex.cts.shim.v2.apex",
253    installable: false,
254}
255
256prebuilt_apex {
257    name: "StagedInstallTestApexV3",
258    arch: {
259        arm: {
260            src: "testdata/apex/arm/com.android.apex.cts.shim.v3.apex",
261        },
262        arm64: {
263            src: "testdata/apex/arm/com.android.apex.cts.shim.v3.apex",
264        },
265        riscv64: {
266            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v3.apex",
267        },
268        x86: {
269            src: "testdata/apex/x86/com.android.apex.cts.shim.v3.apex",
270        },
271        x86_64: {
272            src: "testdata/apex/x86/com.android.apex.cts.shim.v3.apex",
273        },
274    },
275    filename: "com.android.apex.cts.shim.v3.apex",
276    installable: false,
277}
278
279prebuilt_apex {
280    name: "StagedInstallTestApexV2_AdditionalFile",
281    arch: {
282        arm: {
283            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_additional_file.apex",
284        },
285        arm64: {
286            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_additional_file.apex",
287        },
288        riscv64: {
289            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v2_additional_file.apex",
290        },
291        x86: {
292            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_additional_file.apex",
293        },
294        x86_64: {
295            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_additional_file.apex",
296        },
297    },
298    filename: "com.android.apex.cts.shim.v2_additional_file.apex",
299    installable: false,
300}
301
302prebuilt_apex {
303    name: "StagedInstallTestApexV2_AdditionalFolder",
304    arch: {
305        arm: {
306            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_additional_folder.apex",
307        },
308        arm64: {
309            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_additional_folder.apex",
310        },
311        riscv64: {
312            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v2_additional_folder.apex",
313        },
314        x86: {
315            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_additional_folder.apex",
316        },
317        x86_64: {
318            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_additional_folder.apex",
319        },
320    },
321    filename: "com.android.apex.cts.shim.v2_additional_folder.apex",
322    installable: false,
323}
324
325prebuilt_apex {
326    name: "StagedInstallTestApexV2_WithPostInstallHook",
327    arch: {
328        arm: {
329            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_with_post_install_hook.apex",
330        },
331        arm64: {
332            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_with_post_install_hook.apex",
333        },
334        riscv64: {
335            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v2_with_post_install_hook.apex",
336        },
337        x86: {
338            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_with_post_install_hook.apex",
339        },
340        x86_64: {
341            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_with_post_install_hook.apex",
342        },
343    },
344    filename: "com.android.apex.cts.shim.v2_with_post_install_hook.apex",
345    installable: false,
346}
347
348prebuilt_apex {
349    name: "StagedInstallTestApexV2_WithPreInstallHook",
350    arch: {
351        arm: {
352            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_with_pre_install_hook.apex",
353        },
354        arm64: {
355            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_with_pre_install_hook.apex",
356        },
357        riscv64: {
358            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v2_with_pre_install_hook.apex",
359        },
360        x86: {
361            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_with_pre_install_hook.apex",
362        },
363        x86_64: {
364            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_with_pre_install_hook.apex",
365        },
366    },
367    filename: "com.android.apex.cts.shim.v2_with_pre_install_hook.apex",
368    installable: false,
369}
370
371prebuilt_apex {
372    name: "StagedInstallTestApexV2_WrongSha",
373    arch: {
374        arm: {
375            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_wrong_sha.apex",
376        },
377        arm64: {
378            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_wrong_sha.apex",
379        },
380        riscv64: {
381            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v2_wrong_sha.apex",
382        },
383        x86: {
384            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_wrong_sha.apex",
385        },
386        x86_64: {
387            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_wrong_sha.apex",
388        },
389    },
390    filename: "com.android.apex.cts.shim.v2_wrong_sha.apex",
391    installable: false,
392}
393
394prebuilt_apex {
395    name: "StagedInstallTestApexV2_WithoutApkInApex",
396    arch: {
397        arm: {
398            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_without_apk_in_apex.apex",
399        },
400        arm64: {
401            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_without_apk_in_apex.apex",
402        },
403        riscv64: {
404            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v2_without_apk_in_apex.apex",
405        },
406        x86: {
407            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_without_apk_in_apex.apex",
408        },
409        x86_64: {
410            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_without_apk_in_apex.apex",
411        },
412    },
413    filename: "com.android.apex.cts.shim.v2_without_apk_in_apex.apex",
414    installable: false,
415}
416
417prebuilt_apex {
418    name: "StagedInstallTestApexV1_NotPreInstalled",
419    arch: {
420        arm: {
421            src: "testdata/apex/arm/com.android.apex.cts.shim_not_pre_installed.apex",
422        },
423        arm64: {
424            src: "testdata/apex/arm/com.android.apex.cts.shim_not_pre_installed.apex",
425        },
426        riscv64: {
427            src: "testdata/apex/riscv64/com.android.apex.cts.shim_not_pre_installed.apex",
428        },
429        x86: {
430            src: "testdata/apex/x86/com.android.apex.cts.shim_not_pre_installed.apex",
431        },
432        x86_64: {
433            src: "testdata/apex/x86/com.android.apex.cts.shim_not_pre_installed.apex",
434        },
435    },
436    filename: "com.android.apex.cts.shim_not_pre_installed.apex",
437    installable: false,
438}
439
440prebuilt_apex {
441    name: "StagedInstallTestApexV2_DifferentCertificate",
442    arch: {
443        arm: {
444            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_different_certificate.apex",
445        },
446        arm64: {
447            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_different_certificate.apex",
448        },
449        riscv64: {
450            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v2_different_certificate.apex",
451        },
452        x86: {
453            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_different_certificate.apex",
454        },
455        x86_64: {
456            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_different_certificate.apex",
457        },
458    },
459    filename: "com.android.apex.cts.shim.v2_different_certificate.apex",
460    installable: false,
461}
462
463prebuilt_apex {
464    name: "StagedInstallTestApexV2_DifferentPackageName",
465    arch: {
466        arm: {
467            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_different_package_name.apex",
468        },
469        arm64: {
470            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_different_package_name.apex",
471        },
472        riscv64: {
473            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v2_different_package_name.apex",
474        },
475        x86: {
476            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_different_package_name.apex",
477        },
478        x86_64: {
479            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_different_package_name.apex",
480        },
481    },
482    filename: "com.android.apex.cts.shim.v2_different_package_name.apex",
483    installable: false,
484}
485
486prebuilt_apex {
487    name: "StagedInstallTestApexV2_NoHashtree",
488    arch: {
489        arm: {
490            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_no_hashtree.apex",
491        },
492        arm64: {
493            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_no_hashtree.apex",
494        },
495        riscv64: {
496            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v2_no_hashtree.apex",
497        },
498        x86: {
499            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_no_hashtree.apex",
500        },
501        x86_64: {
502            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_no_hashtree.apex",
503        },
504    },
505    filename: "com.android.apex.cts.shim.v2_no_hashtree.apex",
506    installable: false,
507}
508
509prebuilt_apex {
510    name: "StagedInstallTestApexV2_SdkTargetP",
511    arch: {
512        arm: {
513            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_sdk_target_p.apex",
514        },
515        arm64: {
516            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_sdk_target_p.apex",
517        },
518        riscv64: {
519            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v2_sdk_target_p.apex",
520        },
521        x86: {
522            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_sdk_target_p.apex",
523        },
524        x86_64: {
525            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_sdk_target_p.apex",
526        },
527    },
528    filename: "com.android.apex.cts.shim.v2_sdk_target_p.apex",
529    installable: false,
530}
531
532prebuilt_apex {
533    name: "StagedInstallTestApexV2_ApkInApexSdkTargetP",
534    arch: {
535        arm: {
536            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_apk_in_apex_sdk_target_p.apex",
537        },
538        arm64: {
539            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_apk_in_apex_sdk_target_p.apex",
540        },
541        riscv64: {
542            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v2_apk_in_apex_sdk_target_p.apex",
543        },
544        x86: {
545            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_apk_in_apex_sdk_target_p.apex",
546        },
547        x86_64: {
548            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_apk_in_apex_sdk_target_p.apex",
549        },
550    },
551    filename: "com.android.apex.cts.shim.v2_apk_in_apex_sdk_target_p.apex",
552    installable: false,
553}
554
555prebuilt_apex {
556    name: "StagedInstallTestCorruptedApex_b146895998",
557    src: "testdata/apex/corrupted_b146895998.apex",
558    filename: "corrupted_b146895998.apex",
559    installable: false,
560}
561
562prebuilt_apex {
563    name: "StagedInstallTestApexV2_NoApkSignature",
564    arch: {
565        arm: {
566            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_unsigned_apk_container.apex",
567        },
568        arm64: {
569            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_unsigned_apk_container.apex",
570        },
571        riscv64: {
572            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v2_unsigned_apk_container.apex",
573        },
574        x86: {
575            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_unsigned_apk_container.apex",
576        },
577        x86_64: {
578            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_unsigned_apk_container.apex",
579        },
580    },
581    filename: "com.android.apex.cts.shim.v2_unsigned_apk_container.apex",
582    installable: false,
583}
584
585prebuilt_apex {
586    name: "StagedInstallTestApexV2_UnsignedPayload",
587    arch: {
588        arm: {
589            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_unsigned_payload.apex",
590        },
591        arm64: {
592            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_unsigned_payload.apex",
593        },
594        riscv64: {
595            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v2_unsigned_payload.apex",
596        },
597        x86: {
598            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_unsigned_payload.apex",
599        },
600        x86_64: {
601            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_unsigned_payload.apex",
602        },
603    },
604    filename: "com.android.apex.cts.shim.v2_unsigned_payload.apex",
605    installable: false,
606}
607
608ApexFilenameSigningPayloadWithDifferentKey = "com.android.apex.cts.shim.v2_sign_payload_with_different_key.apex"
609prebuilt_apex {
610    name: "StagedInstallTestApexV2_SignPayloadWithDifferentKey",
611    arch: {
612        arm: {
613            src: "testdata/apex/arm/" + ApexFilenameSigningPayloadWithDifferentKey,
614        },
615        arm64: {
616            src: "testdata/apex/arm/" + ApexFilenameSigningPayloadWithDifferentKey,
617        },
618        x86: {
619            src: "testdata/apex/x86/" + ApexFilenameSigningPayloadWithDifferentKey,
620        },
621        x86_64: {
622            src: "testdata/apex/x86/" + ApexFilenameSigningPayloadWithDifferentKey,
623        },
624    },
625    filename: ApexFilenameSigningPayloadWithDifferentKey,
626    installable: false,
627}
628
629prebuilt_apex {
630    name: "StagedInstallTestApexV2_Rebootless",
631    arch: {
632        arm: {
633            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_rebootless.apex",
634        },
635        arm64: {
636            src: "testdata/apex/arm/com.android.apex.cts.shim.v2_rebootless.apex",
637        },
638        riscv64: {
639            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v2_rebootless.apex",
640        },
641        x86: {
642            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_rebootless.apex",
643        },
644        x86_64: {
645            src: "testdata/apex/x86/com.android.apex.cts.shim.v2_rebootless.apex",
646        },
647    },
648    filename: "com.android.apex.cts.shim.v2_rebootless.apex",
649    installable: false,
650}
651
652prebuilt_apex {
653    name: "StagedInstallTestApexV3_Rebootless",
654    arch: {
655        arm: {
656            src: "testdata/apex/arm/com.android.apex.cts.shim.v3_rebootless.apex",
657        },
658        arm64: {
659            src: "testdata/apex/arm/com.android.apex.cts.shim.v3_rebootless.apex",
660        },
661        riscv64: {
662            src: "testdata/apex/riscv64/com.android.apex.cts.shim.v3_rebootless.apex",
663        },
664        x86: {
665            src: "testdata/apex/x86/com.android.apex.cts.shim.v3_rebootless.apex",
666        },
667        x86_64: {
668            src: "testdata/apex/x86/com.android.apex.cts.shim.v3_rebootless.apex",
669        },
670    },
671    filename: "com.android.apex.cts.shim.v3_rebootless.apex",
672    installable: false,
673}
674
675// collects deapexer and its dependency modules (libc++ and debugfs_static) to the zip file.
676genrule {
677    name: "deapexer.zip",
678    tools: [
679        "blkid",
680        "deapexer",
681        "debugfs_static",
682        "fsck.erofs",
683        "soong_zip",
684    ],
685    cmd: "rm -rf mkdir $(genDir)/deapexer && mkdir $(genDir)/deapexer && " +
686        "cp $(location deapexer) $(genDir)/deapexer && " +
687        "cp $(location debugfs_static) $(genDir)/deapexer && " +
688        "cp $(location blkid) $(genDir)/deapexer && " +
689        "cp $(location fsck.erofs) $(genDir)/deapexer && " +
690        "HOST_OUT_SHARED_LIBRARIES=$$(dirname $(location deapexer))/../lib64 && " +
691        "cp $${HOST_OUT_SHARED_LIBRARIES}/libc++.* $(genDir)/deapexer && " +
692        "$(location soong_zip) -o $(out) -C $(genDir)/deapexer -D $(genDir)/deapexer",
693    out: ["deapexer.zip"],
694}
695