Upgrading nri-bundle failure

Provisioning of clusters is failing when upgrading from nri-bundle-1.10.0 to nri-bundle-2.2.0 using helm 3 on AWS EKS version 1.18

Command is as follows:

helm upgrade \
  --install newrelic-bundle newrelic/nri-bundle \
  --namespace=default \
  --set global.licenseKey=<new relic key> \
  --set global.cluster=<cluster name> \
  --set kubeEvents.enabled=true \
  --set webhook.enabled=true \
  --set prometheus.enabled=true \
  --set logging.enabled=true \
  --set ksm.enabled=true

Error returned:
Upgrade “newrelic-bundle” failed: cannot patch “newrelic-bundle-nri-metadata-injection-job” with kind Job: Job.batch “newrelic-bundle-nri-metadata-injection-job” is invalid: spec.template: Invalid value: core.PodTemplateSpec{ObjectMeta:v1.ObjectMeta{Name:"", GenerateName:"", Namespace:"", SelfLink:"", UID:"", ResourceVersion:"", Generation:0, CreationTimestamp:v1.Time{Time:time.Time{wall:0x0, ext:0, loc:(*time.Location)(nil)}},
DeletionTimestamp:(*v1.Time)(nil), DeletionGracePeriodSeconds:(*int64)(nil), Labels:map[string]string{“app.kubernetes.io/instance":"newrelic-bundle”, “app.kubernetes.io/managed-by":"Helm”, “app.kubernetes.io/name":"nri-metadata-injection”, “app.kubernetes.io/version":"1.3.2”, “controller-uid”:“d47f7d98-4b1f-4616-ac4d-f8cbc30dba5d”, “helm.sh/chart”:“nri-metadata-injection-1.3.3”, “job-name”:“newrelic-bundle-nri-metadata-injection-job”}, Annotations:map[string]string(nil), OwnerReferences:[]v1.OwnerReference(nil), Finalizers:[]string(nil), ClusterName:"", ManagedFields:[]v1.ManagedFieldsEntry(nil)}, Spec:core.PodSpec{Volumes:[]core.Volume(nil), InitContainers:[]core.Container(nil), Containers:[]core.Container{core.Container{Name:“nri-metadata-injection-job”, Image:“newrelic/k8s-webhook-cert-manager:1.3.2”, Command:[]string{"./generate_certificate.sh"}, Args:[]string{"–service", “newrelic-bundle-nri-metadata-injection”, “–webhook”, “newrelic-bundle-nri-metadata-injection”, “–secret”, “newrelic-bundle-nri-metadata-injection”, “–namespace”, “default”}, WorkingDir:"", Ports:[]core.ContainerPort(nil), EnvFrom:[]core.EnvFromSource(nil), Env:[]core.EnvVar(nil), Resources:core.ResourceRequirements{Limits:core.ResourceList(nil), Requests:core.ResourceList(nil)}, VolumeMounts:[]core.VolumeMount(nil), VolumeDevices:[]core.VolumeDevice(nil), LivenessProbe:(*core.Probe)(nil), ReadinessProbe:(*core.Probe)(nil), StartupProbe:(*core.Probe)(nil), Lifecycle:(*core.Lifecycle)(nil), TerminationMessagePath:"/dev/termination-log", TerminationMessagePolicy:“File”, ImagePullPolicy:“IfNotPresent”, SecurityContext:(*core.SecurityContext)(nil), Stdin:false, StdinOnce:false, TTY:false}}, EphemeralContainers:[]core.EphemeralContainer(nil), RestartPolicy:“Never”, TerminationGracePeriodSeconds:(*int64)(0xc00f841448), ActiveDeadlineSeconds:(*int64)(nil), DNSPolicy:“ClusterFirst”, NodeSelector:map[string]string(nil), ServiceAccountName:“newrelic-bundle-nri-metadata-injection”, AutomountServiceAccountToken:(*bool)(nil), NodeName:"", SecurityContext:(*core.PodSecurityContext)(0xc013cdb080), ImagePullSecrets:[]core.LocalObjectReference(nil), Hostname:"", Subdomain:"", Affinity:(*core.Affinity)(nil), SchedulerName:“default-scheduler”, Tolerations:[]core.Toleration(nil), HostAliases:[]core.HostAlias(nil), PriorityClassName:"", Priority:(*int32)(nil), PreemptionPolicy:(*core.PreemptionPolicy)(nil), DNSConfig:(*core.PodDNSConfig)(nil), ReadinessGates:[]core.PodReadinessGate(nil), RuntimeClassName:(*string)(nil), Overhead:core.ResourceList(nil), EnableServiceLinks:(*bool)(nil), TopologySpreadConstraints:[]core.TopologySpreadConstraint(nil)}}: field is immutable

1 Like