Skip to content

chore(conformance): restart the Trust Anchor instead of recreating it - #623

Merged
osanderson merged 1 commit into
mainfrom
chore/ta-restart-not-recreate
Oct 9, 2026
Merged

osanderson merged 1 commit into
mainfrom
chore/ta-restart-not-recreate

Conversation

@osanderson

Copy link
Copy Markdown
Collaborator

Summary

run-all.sh now restarts conformance-federation-trust-anchor after rewriting its subordinates file, instead of recreating it with docker compose up -d --force-recreate.

Why

Recreating a container gives it a new IP address on the suite network. Anything that had already resolved conformance-federation-trust-anchor would keep using the old address: the conformance suite caches resolved addresses. Another project hit exactly this, where containers were recreated between phases.

This repo isn't affected today: the recreate runs before the suite or the conformance AS ever contacts the Trust Anchor. Restarting removes the trap should that order ever change.

Why restart is enough

The subordinates file is bind-mounted read-only (${FEDERATION_TA_SUBORDINATES_FILE} at /subordinates.json), and the script rewrites it in place through the same path. A restart of the same container reads the new content at startup and keeps its address.

Verification

  • bash -n conformance/scripts/run-all.sh passes.
  • A conformance run on this branch exercises both federation legs end to end, including the Trust Anchor serving the updated subordinate.
  • Merge after the v0.52.1 release PR (chore(main): release 0.52.1 #622). It's a chore:, so it adds no release entry.

🤖 Generated with Claude Code

@codecov

codecov Bot commented Oct 9, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

run-all.sh recreated conformance-federation-trust-anchor after rewriting
its subordinates file, which gives the container a new IP address on
the suite network. Nothing has resolved the Trust Anchor by then, so no
run is affected today, but a client that had (the suite caches resolved
addresses) would keep using the old one. The file is bind-mounted and
rewritten in place, so a restart picks it up and keeps the address.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@osanderson
osanderson force-pushed the chore/ta-restart-not-recreate branch from 95f18bb to f186ea3 Compare October 9, 2026 13:26
@sonarqubecloud

sonarqubecloud Bot commented Oct 9, 2026

Copy link
Copy Markdown

@osanderson
osanderson merged commit 4709a85 into main Oct 9, 2026
18 checks passed
@osanderson
osanderson deleted the chore/ta-restart-not-recreate branch October 9, 2026 13:46
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.

1 participant