You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
pkg/lib/bundle/generate.go mis-parses channels list annotation "operators.operatorframework.io.bundle.channels.v1" if list contains space after comma
#1052
Open
jfrancin opened this issue
Jan 16, 2023
· 0 comments
The channel list annotation operators.operatorframework.io.bundle.channels.v1 is mis-parsed if the comma-separated list provided contains one or more spaces after a comma.
I encountered this issue with a Red Hat partner's operator bundle. In the Infinibox 2.3.0 certified operator annotations.yaml file, the last line in the excerpt below
annotations:
com.redhat.openshift.versions: v4.8-v4.11
operators.operatorframework.io.bundle.channel.default.v1: stable
operators.operatorframework.io.bundle.channels.v1: alpha, stable # note leading space before 'stable'
gets inserted into the catalog.json file as
{
"schema": "olm.channel",
"name": " stable", # <=== note leading space
"package": "infinibox-operator-certified",
"entries": [
{
"name": "infinibox-operator.v2.3.0",
"skipRange": "<2.3.0"
}
]
}
{
"schema": "olm.channel",
"name": "stable", # <=== note no leading space
"package": "infinibox-operator-certified",
"entries": [
{
"name": "infinibox-operator.v2.2.0",
"skipRange": "<2.2.0"
}
]
}
and since there are other operator bundles in the intended "stable" channel, the OpenShift OperatorHub shows two different "stable" channels on OpenShift v4.11.
I suspect that it's actually the underlying `gopkg.in/yaml.v2' that is mishandling the leading space in the annotations.yaml file, but would it make sense to check for spaces in the channel names - since a channel name cannot contain spaces?
There's nothing in the YAML space at https://yaml.org/spec/1.2.2/ that indicates that spaces in unquoted comma-separated strings should be included.
The text was updated successfully, but these errors were encountered:
The channel list annotation
operators.operatorframework.io.bundle.channels.v1
is mis-parsed if the comma-separated list provided contains one or more spaces after a comma.I encountered this issue with a Red Hat partner's operator bundle. In the Infinibox 2.3.0 certified operator annotations.yaml file, the last line in the excerpt below
gets inserted into the catalog.json file as
and since there are other operator bundles in the intended "stable" channel, the OpenShift OperatorHub shows two different "stable" channels on OpenShift v4.11.
I suspect that it's actually the underlying `gopkg.in/yaml.v2' that is mishandling the leading space in the annotations.yaml file, but would it make sense to check for spaces in the channel names - since a channel name cannot contain spaces?
There's nothing in the YAML space at https://yaml.org/spec/1.2.2/ that indicates that spaces in unquoted comma-separated strings should be included.
The text was updated successfully, but these errors were encountered: