MCPcopy Create free account
hub / github.com/Dstack-TEE/dstack / resize_vm

Method resize_vm

vmm/src/main_service.rs:485–507  ·  view source on GitHub ↗
(self, request: ResizeVmRequest)

Source from the content-addressed store, hash-verified

483
484 #[tracing::instrument(skip(self, request), fields(id = request.id))]
485 async fn resize_vm(self, request: ResizeVmRequest) -> Result<()> {
486 info!("Resizing VM: {:?}", request);
487 let vm_work_dir = self.app.work_dir(&request.id);
488 let mut manifest = vm_work_dir.manifest().context("failed to read manifest")?;
489 self.apply_resource_updates(
490 &request.id,
491 &mut manifest,
492 &vm_work_dir,
493 request.vcpu,
494 request.memory,
495 request.disk_size,
496 request.image.as_deref(),
497 )
498 .await?;
499 vm_work_dir
500 .put_manifest(&manifest)
501 .context("failed to update manifest")?;
502 self.app
503 .load_vm(vm_work_dir.path(), &Default::default(), false)
504 .await
505 .context("Failed to load VM")?;
506 Ok(())
507 }
508
509 async fn shutdown_vm(self, request: Id) -> Result<()> {
510 self.guest_agent_client(&request.id)?.shutdown().await?;

Callers

nothing calls this directly

Calls 6

work_dirMethod · 0.80
manifestMethod · 0.80
put_manifestMethod · 0.80
load_vmMethod · 0.80
pathMethod · 0.80

Tested by

no test coverage detected