in tools/version-tracker/pkg/commands/upgrade/upgrade.go [690:716]
func loadUpstreamProjectsTrackerFile(upstreamProjectsTrackerFilePath, org, repository string) (types.ProjectsList, types.Repo, error) {
contents, err := os.ReadFile(upstreamProjectsTrackerFilePath)
if err != nil {
return types.ProjectsList{}, types.Repo{}, fmt.Errorf("reading upstream projects tracker file: %v", err)
}
var projectsList types.ProjectsList
err = goyamlv3.Unmarshal(contents, &projectsList)
if err != nil {
return types.ProjectsList{}, types.Repo{}, fmt.Errorf("unmarshalling upstream projects tracker file: %v", err)
}
var targetRepo types.Repo
for _, project := range projectsList.Projects {
if project.Org != org {
continue
}
for _, repo := range project.Repos {
if repo.Name != repository {
continue
}
targetRepo = repo
}
}
return projectsList, targetRepo, nil
}