in ci-tools/main.go [243:278]
func validateWebAssemblyVersions() error {
wasmVersionsFilePath := lookupWasmVersionsJSONPath()
wasmVersionsFileBytes, err := os.ReadFile(wasmVersionsFilePath)
if err != nil {
return fmt.Errorf("file %s not found", wasmVersionsFilePath)
}
var wasmVersions map[string]any
if len(wasmVersionsFileBytes) == 0 {
return nil
} else {
err = json.Unmarshal(wasmVersionsFileBytes, &wasmVersions)
if err != nil {
return err
}
}
if len(wasmVersions) == 0 {
return nil
}
var errorsList strings.Builder
for _, version := range wasmVersions["versions"].([]any) {
artifact := version.(map[string]any)["artifact"]
_, err = os.Stat(fmt.Sprintf("web/public/%s", artifact.(string)))
if err != nil {
errorsList.WriteString(fmt.Sprintf("version %s: artifact not found: %s \n", version.(map[string]any)["version"].(string), artifact))
}
}
if errorsList.Len() > 0 {
return errors.New(errorsList.String())
}
return nil
}