jaeger-operator: Error applying changes in `ttlSecondsAfterFinished` with 1.13

After upgrading jaeger operator 1.13, error below occurred

time="2019-07-03T04:50:40Z" level=error msg="failed to apply the changes" error="CronJob.batch \"jaeger-spark-dependencies\" is invalid: spec.jobTemplate.spec.ttlSecondsAfterFinished: Forbidden: disabled by feature-gate" execution="2019-07-03 04:50:40.206287771 +0000 UTC" instance=jaeger namespace=jaeger

It seems ttlSecondsAfterFinished should not be set by default, otherwise TTLAfterFinished feature gate must be enabled in cluster.

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Comments: 15 (8 by maintainers)

Most upvoted comments

Possible solution (untested, because I am not [yet] able to compile/run the jaeger-operator myself):

Replace all occurences of

TTLSecondsAfterFinished *int32 `json:"ttlSecondsAfterFinished"`

with

TTLSecondsAfterFinished *int32 `json:"ttlSecondsAfterFinished,omitempty"`

@jpkrohling I am using the managed Kubernetes offering of AWS (EKS) and run into the same errors as @kimxogus.

Neither EKS v1.12, nor EKS v1.13 have the needed feature gate active and there is no way for end-users to flip the switch, as it is a managed service offering.

Besides, ttlSecondsAfterFinished seems to be an alpha feature and I would not assume that many Kubernetes clusters out in the wild have set it to be disabled…

See also: https://kubernetes.io/docs/concepts/workloads/controllers/ttlafterfinished/