Skip to content

Use posit-dev images for Connect chart#826

Draft
bschwedler wants to merge 10 commits intomainfrom
images-connect
Draft

Use posit-dev images for Connect chart#826
bschwedler wants to merge 10 commits intomainfrom
images-connect

Conversation

@bschwedler
Copy link
Copy Markdown
Contributor

@bschwedler bschwedler commented Apr 6, 2026

Summary

  • Default images now use posit/connect on Docker Hub instead of ghcr.io/rstudio/rstudio-connect
  • Image tag format changed from {os}{version} (e.g. ubuntu2204-2026.03.1) to {version}-{os} (e.g. 2026.03.1-ubuntu-24.04)
  • image.tagPrefix replaced by image.os; launcher.defaultInitContainer.tagPrefix replaced by launcher.defaultInitContainer.os
  • Default content runtime images updated to posit/connect-content with current R, Python, and Quarto versions

Breaking changes

Old value New value
image.repository: ghcr.io/rstudio/rstudio-connect image.repository: posit/connect
image.tagPrefix: ubuntu2204- image.os: "ubuntu-24.04"
launcher.defaultInitContainer.repository: ghcr.io/rstudio/rstudio-connect-content-init launcher.defaultInitContainer.repository: posit/connect-content-init
launcher.defaultInitContainer.tagPrefix: ubuntu2204- launcher.defaultInitContainer.os: "ubuntu-24.04"

Chart version: 0.20.0

Test plan

  • make lint passes in charts/rstudio-connect
  • helm template renders correctly with default values
  • Verify posit/connect:2026.03.1-ubuntu-24.04 image exists on Docker Hub
  • Verify content runtime images exist in posit/connect-content

Migrate the rstudio-connect Helm chart from legacy ghcr.io/rstudio/
and rstudio/ registries to ghcr.io/posit-dev/. The image tag format
changes from {os}{version} to {version}-{os}, and tagPrefix is
replaced by os in both image and launcher.defaultInitContainer
configs. Default content runtime images updated to current R, Python,
and Quarto versions.
The grep pattern matched `rstudio-connect` which no longer
appears in the rendered image reference (`posit/connect`).
Python 3.14.3 and Quarto 1.9.36 match what's installed in
the posit/connect:2026.03.1-ubuntu-24.04 image.
The new posit/connect images define their own CMD and do not
include tini or /scripts/prestart.bash. Remove the hardcoded
command/args fallback when launcher is enabled, letting the
container use its default entrypoint.
prestart.bash is provided by the chart via ConfigMap, not the
container image. Keep the args fallback so it runs before
startup.sh when the launcher is enabled.
The posit-dev Connect image installs Quarto via the Debian package,
which places the binary at /usr/local/bin/quarto rather than under
/opt/quarto/{version}/bin. Update the Local Execution default to
match the image layout.
Rip out launcher.customRuntimeYaml, launcher.additionalRuntimeImages,
and the bundled default-runtime.yaml / default-runtime-pro.yaml files.
executionEnvironments (added in 0.8.35) is the supported mechanism for
declarative management of execution environments and does not require
the chart to ship per-release versioned paths for R, Python, and Quarto.

Removes the associated Files.Get, the runtime.yaml ConfigMap key, the
Launcher.ClusterDefinition gcfg injection, and the runtime.yaml
volumeMount. Also drops lint values files that exercised the removed
fields.
Add NOTES.txt `fail` checks for `launcher.customRuntimeYaml` and
`launcher.additionalRuntimeImages` so users whose values files still
set the removed keys see a clear migration message on `helm upgrade`
instead of having the values silently ignored.

Broaden the default `args` override to `rstudio-connect.oheEnabled`,
matching main. The prior branch-local condition of `launcher.enabled`
skipped `/scripts/prestart.bash` for `backends.kubernetes.enabled=true`
even though the prestart volumeMount was still applied, leaving the
Kubernetes backend without its startup initialization.
The earlier rename of `image.tagPrefix` -> `image.os` and
`launcher.defaultInitContainer.tagPrefix` -> `launcher.defaultInitContainer.os`
did not add fail-fast validation. Upgrades that still carry the old
keys would render successfully with the new defaults silently ignored,
pulling the wrong image OS variant.

Add the same NOTES.txt pattern used for the removed customRuntimeYaml /
additionalRuntimeImages keys, plus helm-unittest cases in the existing
deprecated-keys suite.
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.

1 participant