| // 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", |
| }, |
| ], |
| } |