parsing unit spec for dc4: error unmarshaling JSON: json: cannot unmarshal array into Go struct field EnvVar.value of type string
I’ve tried escaping the square brackets but that just appears in the env var in the docker container.
Anyone know how I’m supposed to get those into the container? I’m trying to keep the container the same as the upstream one so we don’t have any funky patching going on.
As @thumper alluded to it appears the square brackets get parsed as an array in Go, so I tried escaping them, but then I end up with escaped square brackets in my env var.
And dc4 is a test kubernetes charm I’m building out… nothing special, just trying to get the pod spec aligned.
Just a Juju upgrade, and possibly a charm upgrade to force through a new pod spec YAML file. Not 100% sure if a charm upgrade is needed.
The fix is in the 2.6 edge snap already if you wanted to try it out.
Le sigh. You’ve discovered an issue with our Jenkins build and upload process for the operator images. The Juju operator image for 2.6.9 on dockerhub is stale and so doesn’t contain the fix.
For now, I’ve manually updated the image. You’ll need to remove any existing docker.io/jujusolutions/jujud-operator:2.6.9 image from your k8s cluster.
If you re-bootstrap it should work now. I’ve tested bootstrapping using the 2.6 edge snap (rather than from source) and have verified it’s all good now. FWIW, I tested with a config like this:
It seems your k8s cluster has the old 2.6.9 edge image cached.
If you ssh into each worker node, you can remove the old images from the containerd repo using something like ctr -n k8s.io image rm jujusolutions/jujud-operator:2.6.9
I am not sure that :k8s.io" is the correct namespace so check first with image ls
This issue of image staleness only comes up like this when testing the edge snap - released jujud operators get a version tag which is then fixed from that point. We’re already working on tagging the images with sha in addition to juju version to fix the issue in future.