blob: 8ea264391424ca427fd95de697eea50eb477cb44 [file]
// 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: [
"syslog/client.shard.cml",
"trace/client.shard.cml",
],
program: {
runner: "elf",
binary: "bin/cpu_profiler",
},
children: [
{
name: "profiler_session_manager",
url: "profiler_session_manager#meta/profiler_session_manager.cm",
startup: "eager",
},
],
capabilities: [
{
protocol: [
"fuchsia.cpu.profiler.Session",
"fuchsia.profiling.Controller",
],
},
],
use: [
{
protocol: [
"fuchsia.kernel.RootJob",
"fuchsia.kernel.SamplingResource",
"fuchsia.test.manager.SuiteRunner",
],
},
{
protocol: [
"fuchsia.sys2.LifecycleController",
"fuchsia.sys2.LifecycleController.root",
"fuchsia.sys2.RealmQuery.root",
],
// Optional, since integration tests aren't able to provide this capability
availability: "optional",
},
{
event_stream: [ "debug_started" ],
from: "parent",
},
],
offer: [
{
protocol: [
"fuchsia.cpu.profiler.Session",
"fuchsia.profiling.Controller",
],
from: "self",
to: [ "#profiler_session_manager" ],
},
{
storage: "cache",
from: "parent",
to: "#profiler_session_manager",
},
],
expose: [
{
protocol: "fuchsia.cpu.profiler.Session",
from: "self",
},
{
protocol: "fuchsia.cpu.profiler.SessionManager",
from: "#profiler_session_manager",
},
],
}