[assembly] Add qemu-arm64 product bundles to bringup Bazel assembly rules

bringup.qemu-arm64 is a combination that's needed, so build it.

Bug: 383431037
Change-Id: Ibef5f81857084004f546ba45f8d8ee0ab4874198
Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1602310
Fuchsia-Auto-Submit: Aaron Wood <aaronwood@google.com>
Commit-Queue: Aaron Wood <aaronwood@google.com>
Reviewed-by: Jay Zhuang <jayzhuang@google.com>
diff --git a/products/bringup/BUILD.bazel b/products/bringup/BUILD.bazel
index 0a890ef..9127ea8 100644
--- a/products/bringup/BUILD.bazel
+++ b/products/bringup/BUILD.bazel
@@ -143,6 +143,44 @@
 )
 
 ###
+# qemu-arm64
+
+fuchsia_product(
+    name = "image.qemu-arm64",
+    board_config = "//boards:qemu-arm64",
+    platform_artifacts = "//build/bazel/assembly/assembly_input_bundles:platform_bringup",
+    product_config = ":product_config",
+)
+
+fuchsia_product_bundle(
+    name = "product_bundle.qemu-arm64",
+    main = ":image.qemu-arm64",
+    product_bundle_name = "bringup.qemu-arm64",
+    product_bundle_version = build_info_version,
+    recovery = "//products/zedboot:qemu-arm64",
+)
+
+fuchsia_product(
+    name = "image_with_tests.qemu-arm64",
+    board_config = "//boards:qemu-arm64",
+    platform_artifacts = "//build/bazel/assembly/assembly_input_bundles:platform_bringup",
+    product_config = ":product_config_with_tests",
+)
+
+fuchsia_product_bundle(
+    name = "product_bundle_with_tests.qemu-arm64",
+    main = ":image_with_tests.qemu-arm64",
+    product_bundle_name = "bringup_with_tests.qemu-arm64",
+    product_bundle_version = build_info_version,
+    recovery = "//products/zedboot:qemu-arm64",
+    virtual_devices = [
+        "//build/bazel/assembly/virtual_devices:arm64-emu-recommended",
+        "//build/bazel/assembly/virtual_devices:arm64-emu-min",
+        "//build/bazel/assembly/virtual_devices:arm64-emu-extra-large",
+    ],
+)
+
+###
 # vim3
 
 fuchsia_product(
diff --git a/products/bringup/BUILD.gn b/products/bringup/BUILD.gn
index 22d9ace..a6d97bf 100644
--- a/products/bringup/BUILD.gn
+++ b/products/bringup/BUILD.gn
@@ -58,9 +58,6 @@
 if (current_cpu == "arm64") {
   bazel_product_bundle("product_bundle.arm64") {
     testonly = true
-    use_bringup_platform_bundles = true
-    image_has_fxfs_blob = false
-    image_has_fvm = false
     product_bundle_name = "bringup.arm64"
     bazel_product_bundle_target = ":product_bundle.arm64"
     bazel_product_image_target = ":image.arm64"
@@ -76,6 +73,7 @@
   }
 
   bazel_product_bundle("product_bundle_with_tests.arm64") {
+    testonly = true
     product_bundle_name = "bringup_with_tests.arm64"
     bazel_product_bundle_target = ":product_bundle_with_tests.arm64"
     bazel_product_image_target = ":image_with_tests.arm64"
@@ -90,6 +88,40 @@
     forward_variables_from(bazel_product_bundle_params, "*")
   }
 
+  bazel_product_bundle("product_bundle.qemu-arm64") {
+    testonly = true
+    product_bundle_name = "bringup.qemu-arm64"
+    bazel_product_bundle_target = ":product_bundle.qemu-arm64"
+    bazel_product_image_target = ":image.qemu-arm64"
+    bazel_product_config_target = ":product_config"
+    bazel_product_config_name = "bringup"
+    bazel_recovery_image_target = "//products/zedboot:qemu-arm64"
+    bazel_inputs_from_gn =
+        bringup_bazel_inputs + [ "//boards/qemu-arm64:qemu-arm64.bazel_input" ]
+    image_use_vbmeta = false
+
+    # Note: this is last so that local variables cannot mask anything set in that scope,
+    # so that this scope only contains truly common parameters.
+    forward_variables_from(bazel_product_bundle_params, "*")
+  }
+
+  bazel_product_bundle("product_bundle_with_tests.qemu-arm64") {
+    testonly = true
+    product_bundle_name = "bringup_with_tests.qemu-arm64"
+    bazel_product_bundle_target = ":product_bundle_with_tests.qemu-arm64"
+    bazel_product_image_target = ":image_with_tests.qemu-arm64"
+    bazel_product_config_target = ":product_config_with_tests"
+    bazel_product_config_name = "bringup_with_tests"
+    bazel_recovery_image_target = "//products/zedboot:qemu-arm64"
+    bazel_inputs_from_gn = bringup_with_tests_bazel_inputs +
+                           [ "//boards/qemu-arm64:qemu-arm64.bazel_input" ]
+    image_use_vbmeta = false
+
+    # Note: this is last so that local variables cannot mask anything set in that scope,
+    # so that this scope only contains truly common parameters.
+    forward_variables_from(bazel_product_bundle_params, "*")
+  }
+
   bazel_product_bundle("product_bundle.vim3") {
     product_bundle_name = "bringup.vim3"
     bazel_product_bundle_target = ":product_bundle.vim3"