Repository navigation
Pin ghcr.io/ipni/needle:v1.1.0 - #30
Merged
Merged
Conversation
Digest only, with no env var changes: the release's tracing stays inert here because no exporter is configured. Tracing config is a separate change, so any regression from this rollout traces back to one thing. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changes
Moves needle from
ghcr.io/ipni/needle:v1.0.0tov1.1.0(tag at needle commit38f5ac61, released 2026-11-03).k8s/needle/kustomization.yaml:digest:is now the v1.1.0 index digest,sha256:067e3be30bad134931f4c681d2dbc4baf53bb648051fab2a425ca86a63071dba. The comment above it has the new version, date and amd64 manifest digest,sha256:cd7d2074a72b7a18da1524f07846388159d2581e44ee6136099c23836d1cc91c. Both digests were read fromdocker buildx imagetools inspect. The index still covers amd64, arm/v7 and arm64.README.md: the current version under**Version:**.The README's other v1.0.0 mentions stay: the rename at v1.0.0 and the dated 2026-09-18 cutover entry are history.
AGENTS.mdandroles/needledon't state a running version.This is digest-only. It adds no env vars. Tracing config is a separate follow-up, so any regression from this rollout traces back to one change.
What the release contains
Full list in the changelog.
NEEDLE_TRACING_TRUST_TRACEPARENT(defaultfalse).This deployment sets no OTLP endpoint, no trace exporter and no
NEEDLE_TRACING_*variable. The changelog says that with no exporter configured nothing is sampled, so the tracing work should stay inert here. The kad-dht fork is unchanged atv0.42.2-ipni.2, and the changelog marks nothing as breaking.The image came from a manual
docker.ymlrun on the tag, because the tag push did not trigger a build.Merging does not deploy this
CI:
k8s/needle/andREADME.mdmatch none of the path patterns in thechangesjob of.github/workflows/ci.yml, forsite.yml,platform.ymlorcve.yml. Neither this PR nor its merge triggers a CI dry run or apply, only the checks.routing.ymldoesn't run from CI at all.Argo CD: nothing in this repo points it at needle (
roles/argocdhas no needle reference and points Argo atipni/infra). I did not checkipni/infraitself.Nothing reaches the boxes until a person runs the rollout below.
Rollout plan, for a person to run
After merging, from an up-to-date
main:-e production_rollout=false. It rolls all three boxes at once, and each box is a whole site with no failover, so that is an outage.To roll back, revert this PR and run the same steps, which costs another warm-up.
Checks run locally
All pass:
yamllint .andansible-lint(Passed: 0 failure(s), 0 warning(s), profileproduction)ansible-playbook --syntax-checkon all seven playbooksscripts/render-manifests.yml, pluskubectl kustomizeon every overlaylibp2p_identity.pyunit tests,dns.txtanddns-libp2p.txtagainst their generator, knownpinset.ymlsections, andshellcheckRender diff against
main: inkubectl kustomize rendered/needle, the only change is theimage:line on the four Deployments. The ConfigMap hash is unchanged, and every other overlay renders identically.Differences from CI: these ran on macOS with Python 3.14, and ansible-lint used ansible-core 2.22, while CI uses Ubuntu with Python 3.12. The syntax checks and renders used ansible-core 2.19.4. The cert-manager checksum used
shasum -a 256rather thansha256sum.Not run: anything against the boxes, including the
routing.ymldry run. That stays with the person doing the rollout.Follow-up
The comment at
k8s/route-origin/envoy.yaml.j2:91-93says v1.0.0 drops the traceparent Envoy sends and that its sampling never fires. It goes stale once this rolls out. It is deliberately left alone for the tracing config PR.🤖 Generated with Claude Code