I'm using kibana 7.10.2, which includes the latest improvements to the packaging scripts @kbn/plugin-helpers
:
to build production 3rd kibana plugins using the new architecture:
We noticed that when launching the plugins in developement mode yarn start --oss
that any changed plugin resource will be immediately updated in your browser. That's what you expect of a dev mode. This works as cache-control
header is set to must-revalidate
and ETag
are used to ensure client side JS bundels are uptodate:
https://developer.mozilla.org/en-US/docs/Web/HTTP/Caching
However when deploying to production:
cache-control
header is set up 1 year and packaged JS resources keep the same name / url. That means even after restarting kibana server side client's won't see the latest version of a 3rd party plugin.
ETags
still require a roundtrip to validate the resources. Therefore the preferred solution would be to enable fingerprinting. Is there any infrastructure available build into kibana to use for that purpose? How do we enable that?