in index.go [206:236]
func CollectIntegrationsVisualizations(integrationsPath string) []Visualization {
var allVis []Visualization
packages, err := os.ReadDir(filepath.Join(integrationsPath, "packages"))
fmt.Printf("Collecting integrations\n")
if err != nil {
fmt.Printf("Error: %v\n", err)
return allVis
}
for _, packageInfo := range packages {
if packageInfo.IsDir() {
packagePath := filepath.Join(integrationsPath, "packages", packageInfo.Name(), "kibana")
manifestPath := filepath.Join(integrationsPath, "packages", packageInfo.Name(), "manifest.yml")
manifest := collectManifest(manifestPath)
visualizations, dashboards := collectDashboardFolder(packageInfo.Name(), packagePath, "integration")
for _, folderName := range []string{"visualization", "lens", "map", "search"} {
visualizations = append(visualizations, collectVisualizationFolder(packageInfo.Name(), packagePath, "integration", dashboards, folderName)...)
}
fmt.Printf("Collected %d vis in %s\n", len(visualizations), packageInfo.Name())
for _, vis := range visualizations {
vis.Manifest = manifest
vis.GithubOwner = getGithubOwner(manifest)
vis.OwningGroup = getOwningGroup(vis.GithubOwner)
allVis = append(allVis, vis)
}
}
}
return allVis
}