Search code examples
kuberneteskubernetes-operatoroperator-sdkoperator-lifecycle-manager

Hit bundle size limit when deploying Operator with OLM


When deploying my operator bundle using OLM I get the following error:

level=error msg="File with size ... exceeded 1048576 limit, aborting" file=/bundle/manifests/crd.yaml
Error: error loading manifests from directory: file crd.yaml bigger than total allowed limit
Usage:
  opm alpha bundle extract [flags]

Where does this size limit come from and how do I get around this?


Solution

  • Bundles have a size limitation because their manifests are used to create a configMap, and the Kubernetes API does not allow configMaps larger than ~1MB. Beginning with OLM version v0.19.0 and OPM 1.17.5, these values are now compressed using Gzip and then encoded using Base64 to accommodate larger bundles. The recommendation is to upgrade the SDK and OLM versions used.