cm_config

Struct RuntimeConfig

Source
pub struct RuntimeConfig {
Show 18 fields pub list_children_batch_size: usize, pub security_policy: Arc<SecurityPolicy>, pub debug: bool, pub enable_introspection: bool, pub use_builtin_process_launcher: bool, pub maintain_utc_clock: bool, pub num_threads: usize, pub namespace_capabilities: Vec<CapabilityDecl>, pub builtin_capabilities: Vec<CapabilityDecl>, pub root_component_url: Option<Url>, pub component_id_index_path: Option<Utf8PathBuf>, pub log_destination: LogDestination, pub log_all_events: bool, pub builtin_boot_resolver: BuiltinBootResolver, pub realm_builder_resolver_and_runner: RealmBuilderResolverAndRunner, pub abi_revision_policy: AbiRevisionPolicy, pub vmex_source: VmexSource, pub health_check: HealthCheck,
}
Expand description

Runtime configuration options. This configuration intended to be “global”, in that the same configuration is applied throughout a given running instance of component_manager.

Fields§

§list_children_batch_size: usize

How many children, maximum, are returned by a call to ChildIterator.next().

§security_policy: Arc<SecurityPolicy>

Security policy configuration.

§debug: bool

If true, component manager will be in debug mode. In this mode, component manager provides the EventSource protocol and exposes this protocol. The root component must be manually started using the LifecycleController protocol in the hub.

This is done so that an external component (say an integration test) can subscribe to events before the root component has started.

§enable_introspection: bool

Enables Component Manager’s introspection APIs (RealmQuery, RealmExplorer, RouteValidator, LifecycleController, etc.) for use by components.

§use_builtin_process_launcher: bool

If true, component_manager will serve an instance of fuchsia.process.Launcher and use this launcher for the built-in ELF component runner. The root component can additionally use and/or offer this service using ‘/builtin/fuchsia.process.Launcher’ from realm.

§maintain_utc_clock: bool

If true, component_manager will maintain a UTC kernel clock and vend write handles through an instance of fuchsia.time.Maintenance. This flag should only be used with the top-level component_manager.

§num_threads: usize§namespace_capabilities: Vec<CapabilityDecl>

The list of capabilities offered from component manager’s namespace.

§builtin_capabilities: Vec<CapabilityDecl>

The list of capabilities offered from component manager as built-in capabilities.

§root_component_url: Option<Url>

URL of the root component to launch. This field is used if no URL is passed to component manager. If value is passed in both places, then an error is raised.

§component_id_index_path: Option<Utf8PathBuf>

Path to the component ID index, parsed from fuchsia.component.internal.RuntimeConfig.component_id_index_path.

§log_destination: LogDestination

Where to log to.

§log_all_events: bool

If true, component manager will log all events dispatched in the topology.

§builtin_boot_resolver: BuiltinBootResolver

Which builtin resolver to use for the fuchsia-boot scheme. If not supplied this defaults to the NONE option.

§realm_builder_resolver_and_runner: RealmBuilderResolverAndRunner

If and how the realm builder resolver and runner are enabled.

§abi_revision_policy: AbiRevisionPolicy

The enforcement and validation policy to apply to component target ABI revisions.

§vmex_source: VmexSource

Where to get the vmex resource from.

§health_check: HealthCheck

Components that opt into health checks before an update is committed.

Implementations§

Trait Implementations§

Source§

impl Debug for RuntimeConfig

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for RuntimeConfig

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl PartialEq for RuntimeConfig

Source§

fn eq(&self, other: &RuntimeConfig) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl TryFrom<Config> for RuntimeConfig

Source§

type Error = Error

The type returned in the event of a conversion error.
Source§

fn try_from(config: Config) -> Result<Self, Error>

Performs the conversion.
Source§

impl Eq for RuntimeConfig

Source§

impl StructuralPartialEq for RuntimeConfig

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T, D> Encode<Ambiguous1, D> for T
where D: ResourceDialect,

Source§

unsafe fn encode( self, _encoder: &mut Encoder<'_, D>, _offset: usize, _depth: Depth, ) -> Result<(), Error>

Encodes the object into the encoder’s buffers. Any handles stored in the object are swapped for Handle::INVALID. Read more
Source§

impl<T, D> Encode<Ambiguous2, D> for T
where D: ResourceDialect,

Source§

unsafe fn encode( self, _encoder: &mut Encoder<'_, D>, _offset: usize, _depth: Depth, ) -> Result<(), Error>

Encodes the object into the encoder’s buffers. Any handles stored in the object are swapped for Handle::INVALID. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more