chromium/fuchsia_web/webinstance_host/web_instance_host_with_svc_directory.shard.cml

// Copyright 2022 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
{
  collections: [
    // The collection in which child instances are dynamically created.
    {
      name: "web_instances",
      durability: "transient",
      allowed_offers: "static_and_dynamic",
      persistent_storage: false,
    },
  ],
  capabilities: [
    // The root of a directory tree through which directory capabilities are
    // dynamically routed to child instances.
    {
      directory: "web_instances",
      rights: [ "rw*" ],
      path: "/web_instances",
    },
  ],
  use: [
    {
      protocol: "fuchsia.component.Realm",
      from: "framework",
    },
    {
      protocol: [
        "fuchsia.feedback.ComponentDataRegister",
        "fuchsia.feedback.CrashReportingProductRegister",
      ],
    },
  ],
  offer: [
    {
      directory: "config-data-for-web-instance",
      from: "parent",
      as: "config-data",
      to: "#web_instances",
      availability: "optional",
    },
    {
      directory: "tzdata-icu",
      from: "parent",
      to: "#web_instances",
    },
    {
      // Statically offered to all web_instances regardless of whether they were
      // created with `ContextFeatureFlags::NETWORK`.
      directory: "root-ssl-certificates",
      from: "parent",
      to: "#web_instances",
      // Required because clients may request Contexts with
      // `ContextFeatureFlags::NETWORK`.
      availability: "required",
    },
  ],
}