Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
439 changes: 187 additions & 252 deletions connect/rstudio-connect.gcfg

Large diffs are not rendered by default.

191 changes: 100 additions & 91 deletions packagemanager/rstudio-pm.gcfg
Original file line number Diff line number Diff line change
@@ -1,123 +1,132 @@
; RStudio Package Manager configuration file
; Posit Package Manager Configuration File
;
; Full Configuration Reference: https://docs.posit.co/rspm/admin/appendix/configuration

[Server]
; Address is a public URL for this RStudio Package Manager server. If Package Manager
; is deployed behind an HTTP proxy, this should be the URL for Package Manager in
; terms of that proxy. It must be configured if RSPM is served from a subdirectory like
; `/rspm` to facilitate generating URLs for the `rspm url create` command, Swagger docs,
; and PyPI simple index pages.
; -------------- Server Configuration -------------- ;
;
; https://docs.posit.co/rspm/admin/appendix/configuration.html#Server.Settings
; Core server settings including the public URL, data directories, and logging options.
; Server.Address is required if Package Manager is served from a subdirectory, uses
; OpenID Connect authentication, or needs correct URLs for PyPI index pages and API docs.

Address = https://packagemanager.posit.co/
[Server]

; Public URL for this Posit Package Manager server. If Package Manager is deployed
; behind an HTTP proxy, this should be the URL in terms of that proxy. Required if
; served from a subdirectory (e.g., /rspm) to facilitate generating URLs for rspm CLI,
; Swagger docs, and PyPI simple index pages.
; https://docs.posit.co/rspm/admin/appendix/configuration.html#Server.Settings
Address = {{ REPLACEME }}

; DataDir is the directory where Package Manager stores variable data (SQLite DB, cache,
; packages, etc.). Change this if you want data on another volume (e.g. larger disk, NFS).
; Default: /var/lib/rstudio-pm
;DataDir = /var/lib/rstudio-pm

; Git sources require a configured R installation. R is often installed at `/usr/lib/R`
; or `/usr/lib64/R`.
; TempDir for temporary files; must not be a subdirectory of DataDir.
; If unset, uses $TMPDIR or /tmp
;TempDir = /tmp

RVersion = /opt/R/#.#.#
; R and Python paths (if you don't want Package Manager to auto-detect them)
;RVersion = /opt/R/4.4.1/bin/R
;PythonVersion = /usr/bin/python3

; -------------- Logging Configuration -------------- ;
;
; https://docs.posit.co/rspm/admin/logging.html
; Access logs track HTTP requests; Service logs track package serving activity.
; Default access log: /var/log/rstudio/rstudio-pm/rstudio-pm.access.log (combined format).

; Customize the data directory if necessary. This is where all packages and metadata are
; stored by default. Refer to Admin Guide for details.
;https://docs.posit.co/rspm/admin/appendix/configuration/#Server.DataDir
; Optional service log for package downloads (source/binary)
;ServiceLog = /var/log/rstudio/rstudio-pm/rstudio-pm.service.log

DataDir = /mnt/rspm/data
; Access log path and format (default: combined format to rstudio-pm.access.log)
;AccessLog = /var/log/rstudio/rstudio-pm/rstudio-pm.access.log
;AccessLogFormat = combined

;[HTTP]
; RStudio Package Manager will listen on this network address for HTTP connections.
;Listen =
; -------------- HTTPS / TLS Configuration -------------- ;
;
; https://docs.posit.co/rspm/admin/appendix/configuration.html#https
; HTTPS configuration including certificates, network binding, and secure cookie settings.
; Permanent=true enables HSTS (HTTP Strict Transport Security) and sets secure flag on
; cookies, forcing browsers to always use HTTPS.

[HTTPS]
; Path to a TLS certificate file. If the certificate is signed by a certificate authority, the
; certificate file should be the concatenation of the server's certificate followed by the CA's
; certificate. Must be paired with `HTTPS.Key`.
;https://docs.posit.co/rspm/admin/appendix/configuration/#HTTPS.Settings

Certificate = "/path/to/certificate/file"

; Path to a private key file corresponding to the certificate specified with `HTTPS.Certificate`.
; Required when `HTTPS.Certificate` is specified.
; Path to a TLS certificate file. If the certificate is signed by a certificate authority,
; the certificate file should be the concatenation of the server's certificate followed
; by the CA's certificate. Must be paired with HTTPS.Key.
; https://docs.posit.co/rspm/admin/networking.html#configuring-ssl-certificates
Certificate = {{ REPLACEME }}

Key = "/path/to/key"

;RStudio Package Manager will listen on this network address for HTTPS connections.
;The network address can be of the form :443 or 192.168.0.1:443.
;Either HTTP.Listen or HTTPS.Listen is required.
; Path to a private key file corresponding to the certificate specified with HTTPS.Certificate
; Required when HTTPS.Certificate is specified
Key = {{ REPLACEME }}

; Posit Package Manager will listen on this network address for HTTPS connections.
; The network address can be of the form :443 or 192.168.0.1:443.
; Either HTTP.Listen or HTTPS.Listen is required.
Listen = ":443"

;Advertises to all visitors that this server should only ever be hosted securely via HTTPS.
;WARNING: if this is set to true -- even temporarily -- visitors may be permanently denied
;access to your server over an unsecured (non-HTTPS) protocol. This sets the secure flag on all
;session cookies and adds a Strict-Transport-Security HTTP header with a value of 30 days.
;https://docs.posit.co/rspm/admin/appendix/configuration/#HTTPS.Permanent
; Permanent advertises to all visitors that this server should only ever be hosted
; securely via HTTPS. WARNING: if this is set to true -- even temporarily -- visitors
; may be permanently denied access to your server over an unsecured (non-HTTPS) protocol.
; This sets the secure flag on all session cookies and adds a Strict-Transport-Security
; HTTP header with a value of 30 days.
; https://docs.posit.co/rspm/admin/security/server.html#security
Permanent = true

;Permanent = true
; MinimumTLS restricts to TLS 1.2 and above for security hardening
MinimumTLS = 1.2

[HttpRedirect]
; -------------- HTTP Redirect Configuration -------------- ;
;
; https://docs.posit.co/rspm/admin/networking.html#configuring-ssl-certificates
; Automatically redirects HTTP traffic to HTTPS when HTTPS.Permanent is enabled above.

[HttpRedirect]
Listen = ":80"

[CRAN]
; Customize the default schedule for CRAN sync.
;SyncSchedule = "0 0 * * *"
; -------------- Database Configuration -------------- ;
;
; https://docs.posit.co/rspm/admin/database.html
; Package Manager can use SQLite (default) or PostgreSQL. PostgreSQL is recommended
; for production and high-availability deployments.

[Bioconductor]
; Customize the default schedule for Bioconductor syncs.
;SyncSchedule = "0 2 * * *"
; SQLite (default) - suitable for single-server deployments
[SQLite]
;Dir = /var/lib/rstudio-pm

[PyPI]
; Customize the default schedule for PyPI syncs.
;SyncSchedule = "0 1 * * *"
; PostgreSQL - recommended for HA and production deployments
; Uncomment and configure for PostgreSQL
;[Postgres]
;URL = "postgres://username:password@hostname:5432/database_name?sslmode=require"

; Configure Git if you are intending to build and share packages stored in Git repositories.
;https://docs.posit.co/rspm/admin/appendix/configuration/#git
[Git]
; The amount of time to wait between polling git repos to look for package changes.
;PollInterval = 5m
; -------------- Proxy Configuration -------------- ;
;
; The maximum number of times to attempt building a git package when the build fails.
;BuildRetries = 3

;https://docs.posit.co/rspm/admin/appendix/configuration/#binaries
[Binaries]
Distributions = "all"
; https://docs.posit.co/rspm/admin/proxy.html
; Configure outbound proxy for accessing external repositories (CRAN, PyPI, etc.).
; Required if Package Manager cannot directly access the internet.

[Authentication]
APITokenAuth = true
[Proxy]
;URL = http://proxy.company.com:3128
;User = {{ REPLACEME }}
;Password = {{ REPLACEME }}

;[Manifest]
;URL = file:///opt/efs/

[Database]
Provider = postgres
; -------------- Git Sources Configuration -------------- ;
;
; https://docs.posit.co/rspm/admin/package-sources.html
; Git integration for package sources. Configure Git credentials and build settings.

[Git]
BuilderDir = /tmp/git

[Postgres]
<<<<<<< Updated upstream
;https://docs.posit.co/rspm/admin/database/#usage-data
;https://docs.posit.co/rspm/admin/appendix/encryption/
URL = postgres://username@postgres_url.com/db
Password = encrypted_password
UsageDataURL = postgres://username@postgres_url/data_usage_db
UsageDataPassword = encrypted_password


=======
;https://docs.posit.co/rspm/admin/appendix/encryption/
;https://docs.posit.co/rspm/admin/database/#usage-data
URL = postgres://username@postgres_url.com/db
Password = encrypted_password
UsageDataURL = postgres://username@postgres_url.com/data_usage_db
UsageDataPassword = encrypted_password



>>>>>>> Stashed changes

[Metrics]
Enabled = true
; Poll interval for checking Git repositories for updates
;PollInterval = 5m

; -------------- Air-Gapped / Offline Configuration -------------- ;
;
; https://docs.posit.co/rspm/admin/appendix/airgapped-installs.html#configuring-package-manager
; Configuration for air-gapped deployments where Package Manager cannot access external
; repositories. Requires offline data files to be downloaded separately.

[Manifest]
;URL = file:///path/to/offline/data
28 changes: 23 additions & 5 deletions workbench/jupyter.conf
Original file line number Diff line number Diff line change
@@ -1,8 +1,26 @@
# Jupyter Lab Configuration Settings
# Posit Workbench Jupyter Configuration File
#
#https://docs.posit.co/ide/server-pro/jupyter_sessions/configuration.html
jupyter-exe=/usr/local/bin/jupyter
notebooks-enabled=1
# Full Configuration Reference: https://docs.posit.co/ide/server-pro/admin/jupyter_sessions/configuration.html

#-----------------------------------------------------------------------------------------#
# Jupyter Lab Configuration
#
# https://docs.posit.co/ide/server-pro/admin/jupyter_sessions/configuration.html
# Enable Jupyter Lab sessions in Workbench. Requires Jupyter to be installed on the system
# or in a location accessible by the jupyter-exe path. labs-enabled controls whether Jupyter
# sessions are available to users. default-session-cluster specifies which Job Launcher
# cluster to use for Jupyter sessions (typically "Local" for local execution or a Kubernetes/
# Slurm cluster name for distributed execution).
#-----------------------------------------------------------------------------------------#
jupyter-exe=/opt/python/{{ REPLACEME }}/bin/python
labs-enabled=1
default-session-cluster=Local
session-cull-minutes=240

#-----------------------------------------------------------------------------------------#
# Session Timeout Configuration
#
# https://docs.posit.co/ide/server-pro/admin/jupyter_sessions/configuration.html
# session-cull-minutes controls automatic termination of idle Jupyter sessions.
# Default is 240 minutes (4 hours). Set to 0 to disable automatic culling.
#-----------------------------------------------------------------------------------------#
session-cull-minutes=240
20 changes: 9 additions & 11 deletions workbench/launcher-env
Original file line number Diff line number Diff line change
@@ -1,16 +1,14 @@
#Launcher Environment Configuration
#https://docs.posit.co/ide/server-pro/job_launcher/configuration.html#launcher-environment

#JobType: session
#Environment: IS_LAUNCHER_SESSION=1
# IS_ADHOC_JOB=0
# USER_HOME=/home/{USER}
JobType: any
Workbench: any

#JobType: adhoc
#Environment: IS_LAUNCHER_SESSION=0
# IS_ADHOC_JOB=1
# USER_HOME=/home/{USER}
# RHEL Environment setting to make Python use the system certificate store
# {{ REPLACEME }}
#Environment: REQUESTS_CA_BUNDLE=/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem

#JobType: any
#Cluster: Kubernetes
#ENVIRONMENT: IS_KUBERNETES=1

# Ubuntu/Deb Environment setting to make Python use the system certificate store
# {{ REPLACEME }}
#Environment: REQUESTS_CA_BUNDLE=/etc/ssl/certs/ca-certificates.crt
67 changes: 44 additions & 23 deletions workbench/launcher.conf
Original file line number Diff line number Diff line change
@@ -1,36 +1,57 @@
# Job Launcher Configuration
# Posit Workbench Job Launcher Configuration File
#
# There are two section types, [server] and [cluster]. There should be one [server] section for the config,
# and one [cluster] section for each cluster you want the Job Launcher to connect to.
# Full Configuration Reference: https://docs.posit.co/ide/server-pro/admin/job_launcher/configuration.html
#
# https://docs.posit.co/ide/server-pro/job_launcher/configuration.html
# There are two section types: [server] and [cluster]. There should be one [server]
# section for the config, and one [cluster] section for each cluster you want the
# Job Launcher to connect to.

#-----------------------------------------------------------------------------------------#
# Server Configuration
#
# https://docs.posit.co/ide/server-pro/admin/job_launcher/configuration.html#server-options
# Core Job Launcher server settings including network binding, user/group configuration,
# and logging options. The address and port must match the launcher configuration in
# rserver.conf (launcher-address and launcher-port).
#-----------------------------------------------------------------------------------------#
[server]
address=127.0.0.1
port=5559
server-user=posit-server
admin-group=posit-server
authorization-enabled=1
enable-debug-logging=1
#scratch-path=/var/lib/rstudio-launcher
#logging-dir=/var/log/rstudio/launcher

# User and group the launcher runs as (defaults to rstudio-server)
;server-user=rstudio-server
;admin-group=rstudio-server

# Enable authorization checks (recommended for production)
;authorization-enabled=1

# Enable debug logging for troubleshooting
;enable-debug-logging=1

# Paths for launcher data and logs
;scratch-path=/var/lib/rstudio-launcher
;logging-dir=/var/log/rstudio/launcher

#-----------------------------------------------------------------------------------------#
# Launcher Encryption Configuration
# End to end encryption settings for launcher. Not required in most cases unless there is a requirement
# for end to end encryption.
#
# https://docs.posit.co/ide/server-pro/job_launcher/configuration.html#ssl-considerations
#enable-ssl=0
#certificate-file=/path/to/certificate_chain
#certificate-key-file=/path/to/private_key
# https://docs.posit.co/ide/server-pro/admin/job_launcher/configuration.html#ssl-considerations
# End-to-end encryption settings for launcher. Not required in most cases unless there is
# a requirement for encryption between Workbench and the launcher (e.g., when launcher
# runs on a separate host or in security-sensitive environments).
#-----------------------------------------------------------------------------------------#
# Cluster Level Configuration
;enable-ssl=0
;certificate-file=/path/to/certificate_chain
;certificate-key-file=/path/to/private_key

#-----------------------------------------------------------------------------------------#
# Cluster Configuration - Local Execution
#
# https://docs.posit.co/ide/server-pro/job_launcher/configuration.html#cluster-options
[cluster1]
# https://docs.posit.co/ide/server-pro/admin/job_launcher/configuration.html#cluster-options
# Local cluster runs sessions directly on the Workbench server without container or HPC
# integration. This is the default and simplest configuration. Additional clusters can be
# added below for Kubernetes, Slurm, or other execution backends.
#-----------------------------------------------------------------------------------------#
[cluster]
name=Local
type=Local
#allowed-groups=devs,admins
[cluster2]
name=Kubernetes
type=Kubernetes
10 changes: 0 additions & 10 deletions workbench/launcher.kubernetes.conf

This file was deleted.

14 changes: 0 additions & 14 deletions workbench/launcher.kubernetes.profiles.conf

This file was deleted.

Loading
Loading