rstudio / rstudio/helm

request: annotations/labels + dd resource profile name to launcher job template data

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

Nobody has claimed this yet.

team: workbench
Dominant language
Markdown
Stars
46
Forks
40
Avg merge
4h 3m
Merged PRs (30d)
6

Description

this request is in 2 parts:

1. Resource Profile tags/annotations

currently the launcher resolves a resource profile (e.g. standard/highmemory in our case) into raw resourceLimits and placementConstraints before passing data to job.tpl.

  • by the time the template executes, the profile name is gone, only the CPU/memory values remain.

this makes it impossible to label pods with the profile name

  • I currently reverse engineer custom labels by reverse mapping to exact resource numbers in a custom job.tpl

would it be possible to expose the profile name in the .Job object or as a tag in .Job.tags? Something like:

  • A .Job.resourceProfile field, or
  • A tag like pwb-resource-profile:1-standard-1

2. Helm chart options to add some of the tags as labels

I currently have some custom mapping in the job.tpl that extracts the Jobs.tags and adds it as label, such as

  • workbench/username
  • workbench/ide-type
  • workbench/resource-profile (from the reverse engineering above)
  • workbench/type (job / interactive)
  • etc..

this helps us in many ways including via ksm-allow-lists for prometheus, easy cli monitoring via kubectl filters.

It would help if there was some way to do some sort of variable mapping to labels or something so I dont have to maintain custom .tpl stuff and can rely on the provided ones

thank you!

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 tracing how the launcher resolves resource profiles before data reaches the custom job.tpl, then review the provided Helm chart templates for existing tag and label handling. Done means the profile name is available to the job template and chart options support mapping selected job tags to labels without custom template maintenance.

Written by the indexing model from the issue text.

Assessment

Tech stack
helm, kubernetes, prometheus
Domain
infrastructure, observability
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.