blob: 12ab53e49bda7c97e53c822f403d2b78000788bc [file] [log] [blame]
# Copyright 2022 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/assembly/assembled_system.gni")
import("//build/images/zedboot/zedboot_args.gni")
import("//src/sys/appmgr/core_shards.gni")
import("//src/sys/core/build/core.gni")
import("//src/sys/root/build/root.gni")
# Wraps assembled_system to allow adding internal network-conformance test stubs.
#
# Parameters
#
# additional_base_packages
# Additional package labels to include in the `base_packages` passed to `assembled_system`.
#
template("assemble_network_conformance_system") {
core_name = "core-${target_name}"
core_realm("core") {
testonly = true
deps = [
# Need ssh to test the system
"//src/developer/sshd-host:core_shard",
]
# TODO(fxbug.dev/102390): deprecate appmgr from this product config
deps += appmgr_core_shards
package_name = core_name
restrict_persistent_storage = false
restrict_full_resolver_to_base = false
}
root_realm("root") {
testonly = true
core_package_name = core_name
}
assembled_system(target_name) {
testonly = true
base_packages = [
":core",
"//src/developer/sshd-host",
"//src/developer/sshd-host:config",
"//src/connectivity/network",
"//src/connectivity/network/mdns/bundles:config",
"//src/connectivity/network/mdns/bundles:services",
"//src/connectivity/network/netcfg:config-default",
"//src/connectivity/network/net-cli",
"//src/connectivity/network/testing/network-test-realm/service:network-test-realm",
"//src/developer/ffx:runtime",
"//src/security/policy:appmgr_policy_eng",
"//src/security/root_ssl_certificates",
"//src/sys/appmgr:appmgr_scheme_config",
"//src/sys/appmgr",
"//src/sys/pkg/bin/pkg-cache",
"//src/sys/pkg/bin/pkg-resolver",
"//src/sys/sysmgr",
"//src/sys/universe-resolver",
]
base_packages += invoker.additional_base_packages
generate_fvm = !bootfs_only
# We avoid compressing blobs in the blobfs image so that they can be more
# effectively compressed by the ZBI compressor that is tuned to zstd max.
if (generate_fvm) {
assembly_compress_blobs = false
}
ramdisk_fvm_in_zbi = true
include_component_id_index = true
devmgr_config = [ "virtcon.disable=true" ] + zedboot_devmgr_config
cmdline = [
"console.shell=true",
"netsvc.disable=false",
"kernel.enable-debugging-syscalls=true",
"kernel.enable-serial-syscalls=true",
"kernel.serial=legacy",
"kernel.halt-on-panic=true",
]
bootfs_labels = [
":root",
"//build/info:bootfs",
"//build/input:recovery_bootfs",
"//bundles:bootstrap",
"//bundles/drivers:bootstrap",
"//src/sys/bin/psutils",
"//src/sys/component_manager:component_manager_bootfs_config",
"//src/diagnostics/archivist:default-service-config",
]
# TODO(https://fxbug.dev/81569): Move this metadata to assembled_system.gni.
metadata = {
images = [
{
label = get_label_info(":$target_name", "label_with_toolchain")
name = target_name
path =
rebase_path("$target_out_dir/${target_name}/${target_name}.zbi",
root_build_dir)
type = "zbi"
},
]
}
}
}