posit-dev / posit-dev/team-operator

Allow full override of default runtime images

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

Nobody has claimed this yet.

enhancement
Dominant language
Go
Stars
10
Forks
1
Avg merge
1d 8h
Merged PRs (30d)
4

Description

Context

From PR #72 review feedback by @Lytol: the current additionalRuntimeImages field only allows appending to the hardcoded default images. It doesn't let operators override or remove the built-in defaults.

It could be useful to set all images explicitly, falling back to sensible defaults if none are specified.

Current Behavior

  • Default runtime images are hardcoded in DefaultRuntimeYAML()
  • additionalRuntimeImages appends to those defaults
  • No way to remove or replace a hardcoded default image without an operator code change

Proposed Behavior

Allow operators to explicitly define the full set of runtime images, with the current hardcoded list used only as a fallback when no explicit images are specified.

Design Considerations

  • Full replace semantics: operators must re-specify every image they want, but new defaults from operator upgrades won't appear automatically
  • Additive model (current): safer, but no way to drop stale defaults
  • Possible middle ground: a runtimeImages field for full replacement alongside additionalRuntimeImages for appending, or a single field with a mode selector

References

  • PR #72: feat: add R 4.5.x default runtime image and configurable additionalRuntimeImages

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 reading DefaultRuntimeYAML() and the current additionalRuntimeImages handling, then review PR #72 for the existing configuration context. Before implementing, resolve whether full replacement uses a new runtimeImages field or a mode selector. Done means operators can explicitly replace or remove defaults while the current hardcoded list remains the fallback when no explicit images are set.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kubernetes
Domain
devops, infrastructure
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.