load("//build/bazel/rules/apex:apex_aab.bzl", "apex_aab") package(default_visibility = ["//build/bazel/tests/apex:__subpackages__"]) # This package contains the multi-architecture aab and apks packages of # Bazel-buildable Mainline modules. These are exclusively used for development # and testing purposes and not for distribution. # # We have added testonly and visibility guardrails to ensure that these do not # get used unintentionally. modules = [ "//build/bazel/examples/apex/minimal:build.bazel.examples.apex.minimal", "//frameworks/av/apex:com.android.media.swcodec", "//packages/modules/NeuralNetworks/apex:com.android.neuralnetworks", "//packages/modules/adb/apex:com.android.adbd", "//system/timezone/apex:com.android.tzdata", ] name_label_map = {module[module.index(":") + 1:]: module for module in modules} [ ( apex_aab( name = "%s_apex_aab" % name, testonly = True, mainline_module = label, ), genrule( name = "%s_apks" % name, testonly = True, srcs = ["%s_apex_aab" % name], outs = ["%s.apks" % name], cmd = "$(location //prebuilts/bundletool) build-apks --bundle $(location %s_apex_aab) --output $@" % name, tools = ["//prebuilts/bundletool"], ), ) for name, label in name_label_map.items() ] filegroup( name = "mainline_modules", testonly = True, srcs = ["%s_apex_aab" % name for name, label in name_label_map.items()], )