// 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.
{
    include: [
        "//src/connectivity/network/meta/isolated-network.shard.cml",
        "//src/storage/lib/fs_management/client.shard.cml",
        "//src/storage/testing/driver_test_realm/meta/client.shard.cml",
        "//src/sys/test_runners/rust/default.shard.cml",
        "inspect/client.shard.cml",
        "sys/component/realm_builder.shard.cml",
        "syslog/client.shard.cml",
    ],
    program: {
        binary: "bin/ota_integration_test",
    },
    use: [
        {
            protocol: [
                "fuchsia.logger.LogSink",
                "fuchsia.process.Launcher",
            ],
        },
        {
            storage: "tmp",
            path: "/tmp",
        },
        {
            protocol: [ "fuchsia.posix.socket.Provider" ],
            from: "#netstack",
        },
    ],
    offer: [
        {
            protocol: [
                "fuchsia.boot.WriteOnlyLog",
                "fuchsia.diagnostics.ArchiveAccessor",
                "fuchsia.logger.LogSink",
                "fuchsia.paver.Paver",
                "fuchsia.process.Launcher",
            ],
            from: "parent",
            to: "#realm_builder",
        },
        {
            protocol: [ "fuchsia.posix.socket.Provider" ],
            from: "#netstack",
            to: "#realm_builder",
        },
        {
            protocol: [ "fuchsia.net.name.Lookup" ],
            from: "#dns_resolver",
            to: "#realm_builder",
        },
        {
            storage: "tmp",
            from: "parent",
            to: "#realm_builder",
        },
    ],
    facets: {
        "fuchsia.test": {
            "deprecated-allowed-packages": [ "isolated-swd-components" ],
        },
    },
}
