use crate::api::AppState;
use crate::error::{DockerError, Result};
pub async fn require_amd64_runtime(
state: &AppState,
route: crate::routing::RoutingDecision,
) -> Result<()> {
if crate::routing::is_admissible(route, state.runtime.amd64_runtime_supported()) {
return Ok(());
}
Err(DockerError::NotImplemented(format!(
"linux/amd64 runtime requires FEX in the HV guest, which is not provisioned \
(expected /run/arcbox/runtime/bin/FEX). amd64 runtime containers are served by FEX \
inside the single HV utility VM; ArcBox does not fall back to a VZ/Rosetta runtime \
VM. Requested platform: {:?}.",
route.platform,
)))
}