blob: 0566569548505483e407ce5a9723e9584edee9bf [file] [log] [blame]
// Copyright 2023 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: [ "inspect/offer.shard.cml" ],
collections: [
{
name: "fxfs-crypt",
durability: "transient",
},
],
capabilities: [
{
directory: "blob",
rights: [ "rw*" ],
path: "/fs/blob/root",
},
{
directory: "blob-exec",
rights: [
"execute",
"rw*",
],
path: "/fs/blob/root",
},
{
protocol: [ "fuchsia.update.verify.BlobfsVerifier" ],
},
{
protocol: "fuchsia.fxfs.BlobCreator",
path: "/fs/blob/svc/fuchsia.fxfs.BlobCreator",
},
{
protocol: "fuchsia.fxfs.BlobReader",
path: "/fs/blob/svc/fuchsia.fxfs.BlobReader",
},
],
use: [
{
protocol: "fuchsia.fs.startup.Startup",
from: "#fxfs",
path: "/fxfs/svc/fuchsia.fs.startup.Startup",
},
{
protocol: "fuchsia.component.Realm",
from: "framework",
},
// Required for inspect data and to migrate data.
{
directory: "root",
from: "#fxfs",
rights: [ "rw*" ],
path: "/data_root",
},
{
directory: "volumes",
from: "#fxfs",
rights: [ "rw*" ],
path: "/volumes",
},
],
offer: [
{
protocol: [ "fuchsia.logger.LogSink" ],
from: "parent",
to: [
"#fxfs",
"#fxfs-crypt",
],
},
{
protocol: [
"fuchsia.memorypressure.Provider",
"fuchsia.tracing.provider.Registry",
],
from: "parent",
to: "#fxfs",
availability: "optional",
},
{
service: "fuchsia.fxfs.CryptService",
from: "#fxfs-crypt",
to: "#fxfs",
},
],
expose: [
{
directory: [
"blob",
"blob-exec",
],
from: "self",
},
{
directory: "volumes",
from: "#fxfs",
},
{
protocol: "fuchsia.fxfs.Volumes",
from: "#fxfs",
},
{
protocol: "fuchsia.update.verify.BlobfsVerifier",
from: "self",
},
{
protocol: "fuchsia.fxfs.BlobCreator",
from: "self",
},
{
protocol: "fuchsia.fxfs.BlobReader",
from: "self",
availability: "same_as_target",
},
],
}