The essence of this issue is that Kong v3.7 has added new fields, and these fields are required.
Before the Gateway upgrade, KIC obtained the user's KongClusterPlugin configuration and filled in some default fields (these are for version 3.6).
After upgrading to Gateway 3.7, KIC continued to send these configurations to the Gateway, but some required fields from version 3.7 were missing, resulting in a configuration failure and a 400 error code.
Acceptance Criteria
[ ] upgrade go-kong version
[ ] deploy KIC & apply old OTEL configuration, then upgrade Gateway from 3.6 to 3.7, it can work well
Is there an existing issue for this?
Does this enhancement require public documentation?
Problem Statement
KIC 2.12.6 in db-less. Upgrade Gateway from 3.6 to 3.7 where propagation module has been reworked: https://docs.konghq.com/hub/kong-inc/opentelemetry/3.7.x/changelog/#kong-gateway-37x
Proposed Solution
https://github.com/Kong/kubernetes-ingress-controller/blob/2e43fd50c1475ee031babc4e288346f01eaad5a1/internal/dataplane/deckgen/generate.go#L256
KIC uses
go-kong
to fill the plugin's default fields.The go-kong fixed this issue. https://github.com/Kong/go-kong/pull/431
Additional information
The essence of this issue is that Kong v3.7 has added new fields, and these fields are required. Before the Gateway upgrade, KIC obtained the user's KongClusterPlugin configuration and filled in some default fields (these are for version 3.6). After upgrading to Gateway 3.7, KIC continued to send these configurations to the Gateway, but some required fields from version 3.7 were missing, resulting in a configuration failure and a 400 error code.
Acceptance Criteria