blob: 3b7e2e118bce8f5d35bf929f57b81d93bc546b97 [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.
{
collections: [
{
// This collection is used by developers to create and run arbitrary components.
// The `ffx component run` command adds components to this collection.
name: "ffx-laboratory",
environment: "#laboratory-env",
durability: "transient",
},
],
capabilities: [
// Components started in the laboratory should derive /data from /tmp.
// This is because the core realm only gives persistent storage to components
// that are registered with static instance IDs. Furthermore, components
// in this collection should not be using persistent storage anyway.
{
storage: "laboratory-data",
from: "parent",
subdir: "laboratory-data",
backing_dir: "tmp",
storage_id: "static_instance_id_or_moniker",
},
{
storage: "laboratory-cache",
from: "parent",
subdir: "laboratory-cache",
backing_dir: "tmp",
storage_id: "static_instance_id_or_moniker",
},
],
offer: [
{
protocol: [
"fuchsia.logger.LogSink",
"fuchsia.process.Launcher",
],
from: "parent",
to: "#ffx-laboratory",
},
{
protocol: [
"fuchsia.net.name.Lookup",
"fuchsia.posix.socket.Provider",
],
from: "#network",
to: "#ffx-laboratory",
},
{
storage: "laboratory-data",
from: "self",
as: "data",
to: "#ffx-laboratory",
},
{
storage: "tmp",
from: "self",
to: "#ffx-laboratory",
},
{
directory: "dev-topological",
from: "parent",
to: "#ffx-laboratory",
},
{
directory: "boot",
from: "parent",
to: "#ffx-laboratory",
},
{
storage: "laboratory-cache",
from: "self",
as: "cache",
to: "#ffx-laboratory",
},
],
}