镜像站点 · 本页由第三方 GitHub 只读镜像提供,非 GitHub 官方站点,不接受任何登录或凭据输入。前往 github.com
Skip to content

chart(feature): add extraVolumes, extraVolumeMounts and initContainers to router and distributor - #3253

Open
DrFaust92 wants to merge 4 commits into
SeleniumHQ:trunkfrom
DrFaust92:chart-control-plane-extra-volumes-init-containers
Open

DrFaust92 wants to merge 4 commits into
SeleniumHQ:trunkfrom
DrFaust92:chart-control-plane-extra-volumes-init-containers

Conversation

@DrFaust92

Copy link
Copy Markdown
Contributor

Thanks for contributing to the Docker-Selenium project!
A PR well described will help maintainers to quickly review and merge it

Before submitting your PR, please check our contributing guidelines, applied for this repository.
Avoid large PRs, help reviewers by making them as simple and short as possible.

Description

Adds components.router.{extraVolumes,extraVolumeMounts,initContainers} and components.distributor.{extraVolumes,extraVolumeMounts,initContainers}, rendered the same way as the existing hub.extraVolumes/hub.extraVolumeMounts (passed through tpl). Also adds hub.initContainers, so all three control-plane shapes have the same hooks. All defaults are [], so rendered output is unchanged unless the new values are set. CONFIGURATION.md is regenerated with helm-docs.

Motivation and Context

In isolated mode the router and distributor accept only env vars, so you can't add a file or an init step to them. The use case behind this is JVM observability: we hit a distributor stall under a large burst of sessions, and had no heap, GC or thread metrics to diagnose it. With these hooks an initContainer can drop a Java agent such as jmx_prometheus_javaagent into an emptyDir, and SE_JAVA_OPTS/JAVA_OPTS can load it with -javaagent:. The same hooks also cover custom truststores, extra jars for SE_EXTRA_LIBS, and log volumes.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist

  • I have read the contributing document.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have added tests to cover my changes.
  • All new and existing tests passed.

test_extra_volumes_and_init_containers_in_router_and_distributor passes. Locally test_monitoring_grafana_dashboards fails, but it fails identically on unmodified trunk, so it's unrelated to this change.

…s to router and distributor

The hub already exposes extraVolumes/extraVolumeMounts and browser nodes
expose initContainers, but the isolated router and distributor expose
neither, so there is no way to add a volume or an init step to them.
That blocks common setups such as loading a Java agent (e.g. the
Prometheus JMX exporter) via SE_JAVA_OPTS for JVM heap/GC/thread metrics.

Also adds initContainers to the hub for parity.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Ilia Lazebnik <ilia.lazebnik@gmail.com>
@qodo-code-review

Copy link
Copy Markdown
Contributor

Qodo reviews are paused for this user.

Troubleshooting steps vary by plan Learn more →

On a Teams plan?
Reviews resume once this user has a paid seat and their Git account is linked in Qodo.
Link Git account →

Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center?
These require an Enterprise plan - Contact us
Contact us →

This branch has not been deployed

No deployments
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