MCPcopy Create free account
hub / github.com/NVIDIA/OpenShell / configure_launch

Method configure_launch

crates/openshell-driver-vm/src/lifecycle.rs:553–589  ·  view source on GitHub ↗
(
        &self,
        sandbox: &Sandbox,
        state_dir: &Path,
        plan: &mut LaunchPlan,
    )

Source from the content-addressed store, hash-verified

551 }
552
553 pub async fn configure_launch(
554 &self,
555 sandbox: &Sandbox,
556 state_dir: &Path,
557 plan: &mut LaunchPlan,
558 ) -> LifecycleResult<()> {
559 for ext in self.active_for(sandbox) {
560 let descriptor = ext.descriptor();
561 for backend in descriptor.required_backends {
562 plan.require_backend(backend);
563 }
564 plan.require_backend_features(descriptor.required_backend_features);
565 // Snapshot fields where "last writer wins" could mask an
566 // extension conflict, so we can flag the conflict instead of
567 // silently dropping the earlier value.
568 let prev_kernel_profile = plan.kernel_profile.clone();
569 let prev_kernel_image = plan.kernel_image.clone();
570 ext.configure_launch(sandbox, state_dir, plan).await?;
571 warn_on_singleton_overwrite(
572 ext.name(),
573 "kernel_profile",
574 prev_kernel_profile.as_deref(),
575 plan.kernel_profile.as_deref(),
576 );
577 warn_on_singleton_overwrite(
578 ext.name(),
579 "kernel_image",
580 prev_kernel_image
581 .as_deref()
582 .map(|p| p.display().to_string()),
583 plan.kernel_image
584 .as_deref()
585 .map(|p| p.display().to_string()),
586 );
587 }
588 Ok(())
589 }
590
591 pub async fn before_launch(
592 &self,

Calls 7

active_forMethod · 0.80
require_backendMethod · 0.80
pushMethod · 0.80
descriptorMethod · 0.45
nameMethod · 0.45

Tested by

no test coverage detected