Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 17 additions & 31 deletions pkg/olm/catalog.go
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ func CreateCatalogItem(catalogName string, pkg *declcfg.Package, bundle *declcfg
withImage(item, bundle)
withInfrastructureFeatures(item, csvMetadata)
withKeywords(item, csvMetadata)
withMarkdownDescription(item, csvMetadata, pkg)
withMarkdownDescription(item, csvMetadata)
withProvider(item, csvMetadata)
withRepository(item, csvMetadata)
withSupport(item, csvMetadata)
Expand All @@ -90,28 +90,6 @@ func CreateCatalogItem(catalogName string, pkg *declcfg.Package, bundle *declcfg
return item
}

// Get plain text description from CSV metadata or package description
func getPlainTextDescription(csvMetadata *property.CSVMetadata, pkg *declcfg.Package) string {
if csvMetadata == nil || csvMetadata.Description == "" {
return pkg.Description
}

return csvMetadata.Description
}

// Get description from CSV metadata annotations, wich can be formatted as markdown
func getMarkdownDescription(csvMetadata *property.CSVMetadata) string {
if csvMetadata == nil {
return ""
}

if csvMetadata.Annotations == nil {
return ""
}

return csvMetadata.Annotations[DescriptionOLMAnnotationKey]
}

func getCSVMetadata(bundle *declcfg.Bundle) (*property.CSVMetadata, error) {
var csvMetadata *property.CSVMetadata
for _, p := range bundle.Properties {
Expand Down Expand Up @@ -207,11 +185,18 @@ func withCreatedAt(item *ConsoleCatalogItem, csvMetadata *property.CSVMetadata)

// Plain text description takes precedence, fall back to markdown description if empty
func withDescription(item *ConsoleCatalogItem, csvMetadata *property.CSVMetadata, pkg *declcfg.Package) {
item.Description = pkg.Description
if csvMetadata == nil {
return
}

item.Description = getPlainTextDescription(csvMetadata, pkg)
if csvMetadata.Annotations == nil {
return
}

item.Description = csvMetadata.Annotations[DescriptionOLMAnnotationKey]
if item.Description == "" {
item.Description = getMarkdownDescription(csvMetadata)
item.Description = pkg.Description
}
}
Comment on lines 186 to 201
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Update outdated comment.

The comment on line 186 states "fall back to markdown description if empty", but the implementation falls back to pkg.Description (line 199), not markdown description. This appears to be a remnant from the previous implementation that used helper functions.

The logic itself correctly implements the intended mapping: csvMetadata.Annotations[DescriptionOLMAnnotationKey]item.Description with pkg.Description as fallback.

-// Plain text description takes precedence, fall back to markdown description if empty
+// Plain text description from CSV annotations, falls back to package description
 func withDescription(item *ConsoleCatalogItem, csvMetadata *property.CSVMetadata, pkg *declcfg.Package) {
🤖 Prompt for AI Agents
In pkg/olm/catalog.go around lines 186 to 201, the comment saying "fall back to
markdown description if empty" is outdated because the code actually falls back
to pkg.Description; update the comment to accurately describe behavior (e.g.,
"plain text description takes precedence, fall back to package description if
empty") so it matches the implemented logic and remove any reference to markdown
helper behavior.


Expand Down Expand Up @@ -257,13 +242,14 @@ func withKeywords(item *ConsoleCatalogItem, csvMetadata *property.CSVMetadata) {
}
}

// Markdown description takes precedence, fall back to plain text description if empty
func withMarkdownDescription(item *ConsoleCatalogItem, csvMetadata *property.CSVMetadata, pkg *declcfg.Package) {
item.MarkdownDescription = getMarkdownDescription(csvMetadata)

if item.MarkdownDescription == "" {
item.MarkdownDescription = getPlainTextDescription(csvMetadata, pkg)
// Markdown description from CSV metadata
func withMarkdownDescription(item *ConsoleCatalogItem, csvMetadata *property.CSVMetadata) {
if csvMetadata == nil {
item.MarkdownDescription = ""
return
}

item.MarkdownDescription = csvMetadata.Description
}

func withProvider(item *ConsoleCatalogItem, csvMetadata *property.CSVMetadata) {
Expand Down