Skip to content

Conversation

@12345ieee
Copy link
Contributor

@12345ieee 12345ieee commented Dec 29, 2025

Description

In kubernetes 1.34+ by default short name resolution is disabled, which means fetching names like gocd/gocd-THING:TAG fail with a ImageInspectError.

Use FQDN for all repositories in this chart, update metadata.

Relevant issues

None (yet), I'm on the bleeding edge.

Possible challenges

Additional information

Checklist

  • Chart version bumped in Chart.yaml
  • Any new variables have documentation and examples in values.yaml, even if commented out
  • Any new variables added to the README.md
  • Squash into a single commit (or explain why you'd prefer not to), except...
  • ...additional commit added for CHANGELOG.md entry
  • Helm lint + tests passing?

In kubernetes 1.34+ by default short name resolution is disabled,
which means fetching names like gocd/gocd-THING:TAG fail with a
ImageInspectError.

Use FQDN for all repositories in this chart, update metadata.
@chadlwilson
Copy link
Member

chadlwilson commented Dec 29, 2025

Thanks!

To be more accurate, this is a CRI-O specific change, not upstream Kubernetes.

So it affects Openshift + OKE but not other clusters running with the default containerd runtime (K3S, GKE, EKS, AKS, Tanzu, IKS) - which is also why the 1.34 tests here (which run on kind) were working fine.

We'd probably need to integrate some kind of linting of the actual generated manifests (at least for default values) to catch some of these type of things earlier. I think I started this a while back and then forgot about it.

@chadlwilson chadlwilson merged commit a1b23d6 into gocd:master Dec 29, 2025
5 checks passed
@12345ieee
Copy link
Contributor Author

Oh, thanks for the precisation, I was under the impression every major vendor had moved to CRI-O by now, but it seems I'm the weird one on OKE.

Thanks for the speedy merge.

@chadlwilson
Copy link
Member

chadlwilson commented Dec 29, 2025

Yeah, there is a bit of history here from before containerd was cleanly split and compliant; and many iterations of Docker Inc itself. CRI-O was I believe the first "clean" implementation of the spec, but then k8s/Docker added a compatibility shim first, then moved most stuff into containerd which became compliant in its own right. In those days OpenShift felt more than a fork than a flavour of Kubernetes because lots of pieces weren't standardised. CRI-O still remains less common as most managed implementations had customers used to dockerd then dockershim - and so moved them to containerd for as few differences as possible.

@chadlwilson
Copy link
Member

On an unrelated note, you might be interested in the discussion at gocd/gocd#13965 which I'm thinking about ways to support inside this chart, as well as some boot speed improvements for elastic agents to reduce the delta with static agents.

There will also likely be some speed improvements with 2.17.0 (GoCD 25.4.0) due to declaring anonymous volumes for working space in the default containers for those who don't already mount something like tmpdir for agents.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants