in code/go/internal/validator/semantic/validate_minimum_kibana_version.go [20:57]
func ValidateMinimumKibanaVersion(fsys fspath.FS) specerrors.ValidationErrors {
pkg, err := packages.NewPackageFromFS(fsys.Path(), fsys)
if err != nil {
return specerrors.ValidationErrors{specerrors.NewStructuredError(err, specerrors.UnassignedCode)}
}
manifest, err := readManifest(fsys)
if err != nil {
return specerrors.ValidationErrors{specerrors.NewStructuredError(err, specerrors.UnassignedCode)}
}
kibanaVersionCondition, err := getKibanaVersionCondition(*manifest)
if err != nil {
return specerrors.ValidationErrors{specerrors.NewStructuredError(err, specerrors.UnassignedCode)}
}
var errs specerrors.ValidationErrors
err = validateMinimumKibanaVersionInputPackages(pkg.Type, *pkg.Version, kibanaVersionCondition)
if err != nil {
errs = append(errs, specerrors.NewStructuredError(err, specerrors.UnassignedCode))
}
err = validateMinimumKibanaVersionRuntimeFields(fsys, *pkg.Version, kibanaVersionCondition)
if err != nil {
errs = append(errs, specerrors.NewStructuredError(err, specerrors.UnassignedCode))
}
err = validateMinimumKibanaVersionSavedObjectTags(fsys, pkg.Type, *pkg.Version, kibanaVersionCondition)
if err != nil {
errs = append(errs, specerrors.NewStructuredError(err, specerrors.CodeMinimumKibanaVersion))
}
if errs != nil {
return errs
}
return nil
}