runtime-rs: call TomlConfig's validate function after load

Call TomlConfig's validate function after it is loaded and
adjusted by annotations.

Fixes: #5112

Signed-off-by: Bin Liu <bin@hyper.sh>
This commit is contained in:
Bin Liu 2022-09-06 16:39:42 +08:00
parent 662ce3d6f2
commit aaf6d69089
2 changed files with 4 additions and 1 deletions

View File

@ -84,7 +84,7 @@ DEFMEMSZ := 2048
# - hugepage memory # - hugepage memory
DEFMEMSLOTS := 10 DEFMEMSLOTS := 10
#Default number of bridges #Default number of bridges
DEFBRIDGES := 1 DEFBRIDGES := 0
DEFENABLEANNOTATIONS := [] DEFENABLEANNOTATIONS := []
DEFDISABLEGUESTSECCOMP := true DEFDISABLEGUESTSECCOMP := true
DEFDISABLEGUESTEMPTYDIR := false DEFDISABLEGUESTEMPTYDIR := false

View File

@ -313,6 +313,9 @@ fn load_config(spec: &oci::Spec) -> Result<TomlConfig> {
TomlConfig::load_from_file(&config_path).context("load toml config")?; TomlConfig::load_from_file(&config_path).context("load toml config")?;
annotation.update_config_by_annotation(&mut toml_config)?; annotation.update_config_by_annotation(&mut toml_config)?;
// validate configuration and return the error
toml_config.validate()?;
// Sandbox sizing information *may* be provided in two scenarios: // Sandbox sizing information *may* be provided in two scenarios:
// 1. The upper layer runtime (ie, containerd or crio) provide sandbox sizing information as an annotation // 1. The upper layer runtime (ie, containerd or crio) provide sandbox sizing information as an annotation
// in the 'sandbox container's' spec. This would typically be a scenario where as part of a create sandbox // in the 'sandbox container's' spec. This would typically be a scenario where as part of a create sandbox