Skip to content

Commit

Permalink
Merge pull request #486 from rstudio/connect-updated-content-images
Browse files Browse the repository at this point in the history
connect: update content images and enable quarto by default
  • Loading branch information
dbkegley authored Apr 30, 2024
2 parents 368f37b + 6d9f546 commit 07c5143
Show file tree
Hide file tree
Showing 9 changed files with 180 additions and 51 deletions.
19 changes: 19 additions & 0 deletions .github/workflows/chart-test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -84,3 +84,22 @@ jobs:
if: ${{ github.ref == 'refs/heads/main' }}
run: ct install --target-branch main --all --chart-dirs charts --chart-dirs other-charts
continue-on-error: true

check-versions-connect:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 0

- name: Set up Helm
uses: azure/setup-helm@v3
with:
version: v3.6.3

- uses: extractions/setup-just@v2

- name: Run executable verification for default interpreters
run: |
just test-connect-interpreter-versions
31 changes: 31 additions & 0 deletions Justfile
Original file line number Diff line number Diff line change
Expand Up @@ -67,3 +67,34 @@ snapshot-rsw-diff:
{{ DIFF }} $file $file.lock
fi
done

test-connect-interpreter-versions:
#!/usr/bin/env bash
set -xe
cd ./charts/rstudio-connect && helm dependency build && cd -
# find the default image
image=$(
helm template ./charts/rstudio-connect \
--show-only templates/deployment.yaml | \
grep "image\:.*rstudio-connect.*" | \
awk -F": " '{print $2}' | \
xargs)

for lang in "Python" "Quarto" "R"
do
# print the default connect config file for local execution in ini format
# print the section and grep for the Executables to find each interpreter
executables=$(
helm template ./charts/rstudio-connect \
--set config.Launcher.Enabled=false \
--show-only templates/configmap.yaml | \
sed -n -e "/\[$lang\]/,/\[*\]/ p" | \
grep Executable | awk -F= '{print $2}' | \
xargs)

for ex in $executables
do
docker run --rm $image /bin/bash -c "command -v $ex"
done
done
2 changes: 1 addition & 1 deletion charts/rstudio-connect/Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: rstudio-connect
description: Official Helm chart for RStudio Connect
version: 0.6.3
version: 0.6.4
apiVersion: v2
appVersion: 2024.03.0
icon: https://rstudio.com/wp-content/uploads/2018/10/RStudio-Logo-Flat.png
Expand Down
5 changes: 5 additions & 0 deletions charts/rstudio-connect/NEWS.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
# Changelog

## 0.6.4

- Update the default content images in `default-runtime.yaml` and `default-runtime-pro.yaml` to include newer R, Python and Quarto versions.
- Enable Python and Quarto by default in `values.yaml` when running in local or off-host execution mode.

## 0.6.3

- Bump Chronicle Agent to version 2024.03.0
Expand Down
6 changes: 3 additions & 3 deletions charts/rstudio-connect/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Posit Connect

![Version: 0.6.3](https://img.shields.io/badge/Version-0.6.3-informational?style=flat-square) ![AppVersion: 2024.03.0](https://img.shields.io/badge/AppVersion-2024.03.0-informational?style=flat-square)
![Version: 0.6.4](https://img.shields.io/badge/Version-0.6.4-informational?style=flat-square) ![AppVersion: 2024.03.0](https://img.shields.io/badge/AppVersion-2024.03.0-informational?style=flat-square)

#### _Official Helm chart for RStudio Connect_

Expand All @@ -26,11 +26,11 @@ To ensure reproducibility in your environment and insulate yourself from future

## Installing the Chart

To install the chart with the release name `my-release` at version 0.6.3:
To install the chart with the release name `my-release` at version 0.6.4:

```bash
helm repo add rstudio https://helm.rstudio.com
helm upgrade --install my-release rstudio/rstudio-connect --version=0.6.3
helm upgrade --install my-release rstudio/rstudio-connect --version=0.6.4
```

To explore other chart versions, take a look at:
Expand Down
76 changes: 54 additions & 22 deletions charts/rstudio-connect/default-runtime-pro.yaml
Original file line number Diff line number Diff line change
@@ -1,66 +1,98 @@
name: Kubernetes
images:
-
name: ghcr.io/rstudio/content-pro:r3.6.3-py3.8.16-ubuntu2204
name: ghcr.io/rstudio/content-pro:r3.6.3-py3.8.19-ubuntu2204
python:
installations:
-
path: /opt/python/3.8.16/bin/python3
version: 3.8.16
path: /opt/python/3.8.19/bin/python3
version: 3.8.19
r:
installations:
-
path: /opt/R/3.6.3/bin/R
version: 3.6.3
quarto:
installations:
- path: /opt/quarto/1.3.340/bin/quarto
version: 1.3.340
- path: /opt/quarto/1.3.450/bin/quarto
version: 1.3.450
-
name: ghcr.io/rstudio/content-pro:r4.0.5-py3.9.16-ubuntu2204
name: ghcr.io/rstudio/content-pro:r4.0.5-py3.9.19-ubuntu2204
python:
installations:
-
path: /opt/python/3.9.16/bin/python3
version: 3.9.16
path: /opt/python/3.9.19/bin/python3
version: 3.9.19
r:
installations:
-
path: /opt/R/4.0.5/bin/R
version: 4.0.5
quarto:
installations:
- path: /opt/quarto/1.3.340/bin/quarto
version: 1.3.340
- path: /opt/quarto/1.3.450/bin/quarto
version: 1.3.450
-
name: ghcr.io/rstudio/content-pro:r4.1.3-py3.10.11-ubuntu2204
name: ghcr.io/rstudio/content-pro:r4.1.3-py3.10.14-ubuntu2204
python:
installations:
-
path: /opt/python/3.10.11/bin/python3
version: 3.10.11
path: /opt/python/3.10.14/bin/python3
version: 3.10.14
r:
installations:
-
path: /opt/R/4.1.3/bin/R
version: 4.1.3
quarto:
installations:
- path: /opt/quarto/1.3.340/bin/quarto
version: 1.3.340
- path: /opt/quarto/1.3.450/bin/quarto
version: 1.3.450
-
name: ghcr.io/rstudio/content-pro:r4.2.2-py3.11.3-ubuntu2204
name: ghcr.io/rstudio/content-pro:r4.2.3-py3.11.9-ubuntu2204
python:
installations:
-
path: /opt/python/3.11.3/bin/python3
version: 3.11.3
path: /opt/python/3.11.9/bin/python3
version: 3.11.9
r:
installations:
-
path: /opt/R/4.2.2/bin/R
version: 4.2.2
path: /opt/R/4.2.3/bin/R
version: 4.2.3
quarto:
installations:
- path: /opt/quarto/1.3.340/bin/quarto
version: 1.3.340
- path: /opt/quarto/1.3.450/bin/quarto
version: 1.3.450
-
name: ghcr.io/rstudio/content-pro:r4.3.3-py3.12.3-ubuntu2204
python:
installations:
-
path: /opt/python/3.12.3/bin/python3
version: 3.12.3
r:
installations:
-
path: /opt/R/4.3.3/bin/R
version: 4.3.3
quarto:
installations:
- path: /opt/quarto/1.4.553/bin/quarto
version: 1.4.553
-
name: ghcr.io/rstudio/content-pro:r4.4.0-py3.12.3-ubuntu2204
python:
installations:
-
path: /opt/python/3.12.3/bin/python3
version: 3.12.3
r:
installations:
-
path: /opt/R/4.4.0/bin/R
version: 4.4.0
quarto:
installations:
- path: /opt/quarto/1.4.553/bin/quarto
version: 1.4.553
76 changes: 54 additions & 22 deletions charts/rstudio-connect/default-runtime.yaml
Original file line number Diff line number Diff line change
@@ -1,66 +1,98 @@
name: Kubernetes
images:
-
name: ghcr.io/rstudio/content-base:r3.6.3-py3.8.16-ubuntu2204
name: ghcr.io/rstudio/content-base:r3.6.3-py3.8.19-ubuntu2204
python:
installations:
-
path: /opt/python/3.8.16/bin/python3
version: 3.8.16
path: /opt/python/3.8.19/bin/python3
version: 3.8.19
r:
installations:
-
path: /opt/R/3.6.3/bin/R
version: 3.6.3
quarto:
installations:
- path: /opt/quarto/1.3.340/bin/quarto
version: 1.3.340
- path: /opt/quarto/1.3.450/bin/quarto
version: 1.3.450
-
name: ghcr.io/rstudio/content-base:r4.0.5-py3.9.16-ubuntu2204
name: ghcr.io/rstudio/content-base:r4.0.5-py3.9.19-ubuntu2204
python:
installations:
-
path: /opt/python/3.9.16/bin/python3
version: 3.9.16
path: /opt/python/3.9.19/bin/python3
version: 3.9.19
r:
installations:
-
path: /opt/R/4.0.5/bin/R
version: 4.0.5
quarto:
installations:
- path: /opt/quarto/1.3.340/bin/quarto
version: 1.3.340
- path: /opt/quarto/1.3.450/bin/quarto
version: 1.3.450
-
name: ghcr.io/rstudio/content-base:r4.1.3-py3.10.11-ubuntu2204
name: ghcr.io/rstudio/content-base:r4.1.3-py3.10.14-ubuntu2204
python:
installations:
-
path: /opt/python/3.10.11/bin/python3
version: 3.10.11
path: /opt/python/3.10.14/bin/python3
version: 3.10.14
r:
installations:
-
path: /opt/R/4.1.3/bin/R
version: 4.1.3
quarto:
installations:
- path: /opt/quarto/1.3.340/bin/quarto
version: 1.3.340
- path: /opt/quarto/1.3.450/bin/quarto
version: 1.3.450
-
name: ghcr.io/rstudio/content-base:r4.2.2-py3.11.3-ubuntu2204
name: ghcr.io/rstudio/content-base:r4.2.3-py3.11.9-ubuntu2204
python:
installations:
-
path: /opt/python/3.11.3/bin/python3
version: 3.11.3
path: /opt/python/3.11.9/bin/python3
version: 3.11.9
r:
installations:
-
path: /opt/R/4.2.2/bin/R
version: 4.2.2
path: /opt/R/4.2.3/bin/R
version: 4.2.3
quarto:
installations:
- path: /opt/quarto/1.3.340/bin/quarto
version: 1.3.340
- path: /opt/quarto/1.3.450/bin/quarto
version: 1.3.450
-
name: ghcr.io/rstudio/content-base:r4.3.3-py3.12.3-ubuntu2204
python:
installations:
-
path: /opt/python/3.12.3/bin/python3
version: 3.12.3
r:
installations:
-
path: /opt/R/4.3.3/bin/R
version: 4.3.3
quarto:
installations:
- path: /opt/quarto/1.4.553/bin/quarto
version: 1.4.553
-
name: ghcr.io/rstudio/content-base:r4.4.0-py3.12.3-ubuntu2204
python:
installations:
-
path: /opt/python/3.12.3/bin/python3
version: 3.12.3
r:
installations:
-
path: /opt/R/4.4.0/bin/R
version: 4.4.0
quarto:
installations:
- path: /opt/quarto/1.4.553/bin/quarto
version: 1.4.553
4 changes: 1 addition & 3 deletions charts/rstudio-connect/templates/_helpers.tpl
Original file line number Diff line number Diff line change
Expand Up @@ -73,9 +73,7 @@ app.kubernetes.io/instance: {{ .Release.Name }}
{{- $_ := set $launcherSettingsDict "KubernetesUseTemplates" "false" }}
{{- end }}
{{- $launcherDict := dict "Launcher" ( $launcherSettingsDict ) }}
{{- $pythonSettingsDict := dict "Enabled" ("true") }}
{{- $pythonDict := dict "Python" ( $pythonSettingsDict ) }}
{{- $defaultConfig = merge $defaultConfig $launcherDict $pythonDict }}
{{- $defaultConfig = merge $defaultConfig $launcherDict }}
{{- end }}
{{- /* default licensing configuration */}}
{{- if .Values.license.server }}
Expand Down
12 changes: 12 additions & 0 deletions charts/rstudio-connect/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -333,6 +333,18 @@ config:
Server:
Address: http://localhost:3939
DataDir: /var/lib/rstudio-connect
Python:
Enabled: true
# Note: The `Executable` listed below are only used for Local Execution. For Off-Host Execution, Python versions are defined by the set of Execution Environments
# https://docs.posit.co/connect/admin/python/
Executable:
- /opt/python/3.9.17/bin/python
- /opt/python/3.8.17/bin/python
Quarto:
Enabled: true
# Note: The `Executable` listed below is only used for Local Execution. For Off-Host Execution, Quarto versions are defined by the set of Execution Environments
# https://docs.posit.co/connect/admin/quarto/
Executable: "/opt/quarto/1.3.340/bin/quarto"
Scheduler:
InitTimeout: 5m
Logging:
Expand Down

0 comments on commit 07c5143

Please sign in to comment.