Kong Ingress custom plugin update

Hello everyone,
I have kong ingress controller deployed using helm chart and a custom kong plugin in a configmap that is managed with terraform. When I release a new version of the custom plugin and the configmap is updated with new content I can see that within few seconds / minute the new configmap content is propagated into kong proxy containers and I can see the new code in /opt/kong/plugins/mycustomplugin/handler.lua
The issue is that kong does not seem to reflect this change and I have to restart all pods manually to load the new plugin version.
Is this expected ?

2 solutions that I could implement on my side come to my mind:

  • Create some sort of a hook to restart all kong pods after a plugin update
  • append the plugin version to the name of the configmap and update the kong deployment with new configmap name. I think this should make helm rotate all kong pods (haven’t tested yet).

That’s normal, yes, it’s one of the (several) reasons that I normally recommend using custom image builds over the ConfigMap loader (others are incompatibility with some plugins and the potential for replicas running different versions of the code if only some restart after an update).

Either approach you’ve mentioned will work.