# Copyright 2024 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

load(
    "@fuchsia_infra//infra:infra.bzl",
    "FUCHSIA_TEST_TARGET",
    "fuchsia_assembly_configuration_cipd_release",
    "fuchsia_builder_group",
    "fuchsia_cipd_local_release",
    "fuchsia_file_cipd_release",
    "fuchsia_test_group",
)

fuchsia_assembly_configuration_cipd_release(
    name = "board_emac_release",
    dir = "//boards:emac",
    pkg_name = "fuchsia/assembly/boards/emac",
)

fuchsia_assembly_configuration_cipd_release(
    name = "emac_main_bundle_release",
    dir = "//boards:main_bundle",
    pkg_name = "fuchsia/assembly/board_input_bundles/emac/main_bundle",
)

fuchsia_assembly_configuration_cipd_release(
    name = "emac_board_driver_release",
    dir = "//boards:board_driver",
    pkg_name = "fuchsia/assembly/board_input_bundles/emac/board_driver",
)

fuchsia_file_cipd_release(
    name = "devicetree_release",
    files = [
        "@vim3_board//:devicetree/vim3.dtb",
    ],
    pkg_name = "fuchsia/assembly/board_input_bundles/emac/devicetree",
)

fuchsia_cipd_local_release(
    name = "local_releases",
    release_manifests = [
        ":emac_main_bundle_release",
        ":emac_board_driver_release",
        ":devicetree_release",
    ],
)

fuchsia_test_group(
    name = "tests_vim3",
    product_bundle = "//products:minimal.emac",
    test_target = FUCHSIA_TEST_TARGET.VIM3,
    deps = [],
)

# buildifier: leave-alone
fuchsia_builder_group(
    name = "infra",
    build_only = [
      #TODO migrate the vim3 back to test_groups when infra runs are more stable
      ":tests_vim3"
    ],
    test_groups = [
        #":tests_vim3",
    ],
    cipd_uploads = [
        ":board_emac_release",
        ":emac_main_bundle_release",
        ":emac_board_driver_release",
        ":devicetree_release",
    ],
)
