in tools/version-tracker/pkg/commands/upgrade/upgrade.go [945:972]
func updateBottlerocketReleasesFile(bottlerocketReleaseMap map[string]interface{}, bottlerocketReleasesFilePath, latestBottlerocketVersion string) error {
for channel := range bottlerocketReleaseMap {
for _, format := range constants.BottlerocketImageFormats {
releaseVersionByFormat := bottlerocketReleaseMap[channel].(map[string]interface{})[fmt.Sprintf("%s-release-version", format)]
if releaseVersionByFormat != nil {
imageExists, err := verifyBRImageExists(channel, format, latestBottlerocketVersion)
if err != nil {
return fmt.Errorf("checking if Bottlerocket %s image exists for %s release branch: %v", format, channel, err)
}
if imageExists {
bottlerocketReleaseMap[channel].(map[string]interface{})[fmt.Sprintf("%s-release-version", format)] = latestBottlerocketVersion
}
}
}
}
updatedBottlerocketReleases, err := yaml.Marshal(bottlerocketReleaseMap)
if err != nil {
return fmt.Errorf("marshalling Bottlerocket releases: %v", err)
}
err = os.WriteFile(bottlerocketReleasesFilePath, updatedBottlerocketReleases, 0o644)
if err != nil {
return fmt.Errorf("writing Bottlerocket releases file: %v", err)
}
return nil
}