rstudio-workbench: `launcher.templateValues` silently ignored by custom Kubernetes Launcher clusters
Nobody has claimed this yet.
- Dominant language
- Markdown
- Stars
- 46
- Forks
- 40
- Avg merge
- 4h 3m
- Merged PRs (30d)
- 6
Description
Environment
- Helm chart: rstudio-workbench 0.22.1
- Workbench: 2026.07.0
- Multiple named Kubernetes Launcher clusters with separate configuration files and scratch directories.
Description
launcher.templateValues.pod.nodeSelector is ignored for sessions launched through custom Kubernetes Launcher clusters, even with launcher.useTemplates: true and use-templating=1 in each plugin configuration.
The chart mounts its templates only into /var/lib/rstudio-launcher/Kubernetes.
Custom plugins use separate scratch directories, where Launcher generates its built-in job.tpl and service.tpl.
Those templates do not consume the chart-generated rstudio-library-templates-data.tpl.
This allows sessions to launch successfully while silently omitting the configured selector.
Reproduction
- Configure two Kubernetes Launcher clusters with separate scratch directories and configuration files.
- Enable templating in both plugin configurations.
- Set
launcher.templateValues.pod.nodeSelector. - Launch a session through a custom cluster.
- Observe that the selector is not applied.
Findings and confirmed workaround
The custom scratch directories initially contained job.tpl and service.tpl, but no rstudio-library-templates-data.tpl.
Adding only the data file did not resolve the issue because the existing job template differed from the chart's template.
Using the chart-generated templates and data file in the custom scratch directories resolved the issue.
Expected behavior / suggested improvement
Provide a chart value for additional Launcher template directories and mount the chart-generated template files into each directory.
At minimum, document that launcher.templateValues requires the chart's templates in every plugin's scratch directory, with a pod.volumeMounts example for multiple clusters.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by inspecting the chart's Launcher template mounts and the custom plugin scratch directories, comparing job.tpl, service.tpl, and rstudio-library-templates-data.tpl. Reproduce with two custom Kubernetes Launcher clusters and verify whether launcher.templateValues.pod.nodeSelector reaches both. Done means the chart supports the additional directories or documents the required templates and volume mounts clearly.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- helm, kubernetes
- Domain
- devops, infrastructure
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100