boundary: add container-based config discovery support#24494
Conversation
Environment: Datadog workspace Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
🎉 All green!🧪 All tests passed 🎯 Code Coverage (details) 🔗 Commit SHA: 37d9a8f | Docs | Datadog PR Page | Give us feedback! |
Environment: Datadog workspace Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
7e16b34 to
e4b105b
Compare
|
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
This stack of pull requests is managed by Graphite. Learn more about stacking. |
f3908fc to
3251f62
Compare
Environment: Datadog workspace Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
df1b43d to
fe66319
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: fe66319194
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
fe66319 to
9c74e94
Compare
Adds a from_ports discovery strategy that populates both health_endpoint and openmetrics_endpoint from the discovered container's port 9203, plus an auto_conf.yaml ad_identifiers entry matching the hashicorp/boundary image. Wires get_e2e_discovery_metadata into the E2E fixture, and adds test_e2e_discovery and test_e2e_discovery_all_candidates. Environment: Datadog workspace Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
3251f62 to
f4762a7
Compare
9c74e94 to
37d9a8f
Compare
Validation ReportAll 21 validations passed. Show details
|

What does this PR do?
Adds container-based config discovery support to boundary.
Discovery stability log pattern: the container's audit event sink continuously retries writing to the host-owned log file bind-mounted at
/var/log/boundary/events.ndjson, which the container's non-rootboundaryprocess user can't write to (a pre-existing fixture limitation, unrelated to this change). This produces several differently-worded, benign[ERROR]log lines during every discovery candidate probe, sotest_e2e_discovery_all_candidatesuses aDISCOVERY_STABILITY_LOG_PATTERNSlist that drops the genericerrorpattern in favor of the more specific crash indicators (panic,fatal, etc.), following the same precedent used for milvus.Port selection rationale: Port 9203 is Boundary's
opslistener, which serves both the/healthand/metricsendpoints and is documented as the listener purpose dedicated to health checks and Prometheus metrics.Motivation
DSCVR-490.
Review checklist (to be filled by reviewers)
qa/requiredif this PR needs QA validation, orqa/skip-qaif it does not. Exactly one of the two is required.backport/<branch-name>label to the PR and it will automatically open a backport PR once this one is merged