blob: 32cc99daf2501818aa5ca9d2dd70c3b1a9821713 [file] [log] [blame] [edit]
# Copyright 2020 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.
import("//build/config/build_api_module.gni")
import("//sdk/ctf/build/ctf.gni")
import("//sdk/ctf/build/verify_sdk_compatibility.gni")
# Generates a manifest of CTF release artifacts to upload to remote storage.
build_api_module("ctf_artifacts") {
testonly = true
data_keys = [ "cts_artifacts" ]
deps = [
":ctf",
# Build both json files. This allows the cts-artifacts builder to build
# this :ctf_artifacts target while still reading the old
# out/default/cts/cts_artifacts.json file.
# We'll soft-transition it to the new filename.
"//sdk/cts:cts_artifacts",
]
}
group("ctf") {
testonly = true
deps = [
":host_test_manifest",
":test_manifest",
":tests",
":verify_idk_deps",
]
}
group("tests") {
testonly = true
deps = [
"build/scripts:tests",
"tests",
"tests:e2e_tests",
]
}
generated_file("test_manifest") {
testonly = true
outputs = [ "$root_out_dir/cts/test_manifest.json" ]
output_conversion = "json"
data_keys = [ "test_manifest" ]
deps = [ "tests" ]
metadata = {
cts_artifacts = [ "cts/test_manifest.json" ]
}
}
generated_file("host_test_manifest") {
testonly = true
outputs = [ "$root_out_dir/cts/host_test_manifest.json" ]
output_conversion = "json"
data_keys = [ "host_test_manifest" ]
deps = [ "tests/examples/host_tool:tests($host_toolchain)" ]
metadata = {
cts_artifacts = [ "cts/host_test_manifest.json" ]
}
}
_idks = [
"core",
"core_testing",
"e2e_testing",
"modular_testing",
]
_verify_idk_deps = []
foreach(idk, _idks) {
golden_file_target = "${idk}_sdk_layout"
generate_sdk_layout_golden_file(golden_file_target) {
testonly = true
sdk_archive = "$root_out_dir/sdk/archive/${idk}.tar.gz"
deps = [ "//sdk:${idk}_archive" ]
}
verify_compatibility_target = "verify_${idk}_sdk_compatibility"
verify_sdk_compatibility(verify_compatibility_target) {
testonly = true
sdk_archive = "$root_out_dir/sdk/archive/${idk}.tar.gz"
golden_file = "//sdk/manifests/layouts/${target_cpu}/sdk_directory_${idk}.golden_layout"
deps = [ "//sdk:${idk}_archive" ]
}
_verify_idk_deps += [
":$golden_file_target",
":$verify_compatibility_target",
]
}
group("verify_idk_deps") {
testonly = true
deps = _verify_idk_deps
}
# Tests that we want to run in an FYI builder.
# We do not want failures from these tests to break the tree.
group("fyi") {
testonly = true
deps = [ ":verify_idk_deps" ]
}