rstudio / rstudio/helm

rstudio-workbench: `launcher.templateValues` silently ignored by custom Kubernetes Launcher clusters

Open
#942 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

team: launcher team: workbench
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
  1. Configure two Kubernetes Launcher clusters with separate scratch directories and configuration files.
  2. Enable templating in both plugin configurations.
  3. Set launcher.templateValues.pod.nodeSelector.
  4. Launch a session through a custom cluster.
  5. 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

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.