Newer
Older
# This file can update the JupyterHub Helm chart's default configuration values.
#
# For reference see the configuration reference and default values, but make
# sure to refer to the Helm chart version of interest to you!
#
# Introduction to YAML: https://www.youtube.com/watch?v=cdLNKUoMc6c
# Chart config reference: https://zero-to-jupyterhub.readthedocs.io/en/stable/resources/reference.html
# Chart default values: https://github.com/jupyterhub/zero-to-jupyterhub-k8s/blob/HEAD/jupyterhub/values.yaml
# Available chart versions: https://jupyterhub.github.io/helm-chart/
#
client_id: $CILOGON_ID
client_secret: $CILOGON_SECRET
oauth_callback_url: https://csusb-hpc.nrp-nautilus.io/hub/oauth_callback
authenticator_class: cilogon
admin_users: ["dvu@csusb.edu", "000065181@csusb.edu", "youngsu.kim@csusb.edu", "006501270@csusb.edu"]
allowed_users:
- 000065181@csusb.edu
- 004793408@csusb.edu
- 006501322@csusb.edu
- 003574622@csusb.edu
- 005795019@csusb.edu
- 005061741@csusb.edu
- 003087200@csusb.edu
- 000030081@csusb.edu
- dmishin@ucsd.edu
extraConfig:
templates: |
c.JupyterHub.template_paths = ['/etc/jupyterhub/custom']
# https://github.com/jupyterhub/zero-to-jupyterhub-k8s/issues/1990
# To use these .gitlab-ci.yml needs to be updated accordingly
extraFiles:
image_select_idp:
mountPath: /usr/local/share/jupyterhub/static/select_idp_cilogon.png
# Files in /usr/local/etc/jupyterhub/jupyterhub_config.d are
# automatically loaded in alphabetical order of the final file
# name when JupyterHub starts.
# for dynamic resource allocation
custom_spawner:
mountPath: /usr/local/etc/jupyterhub/jupyterhub_config.d/my_spawner.py
# Custom profiles list for the spawner above
custom_spawner_profile:
mountPath: /etc/jupyterhub/custom/my_spawner.html
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# Additional custom html files
custom_login_html:
mountPath: /etc/jupyterhub/custom/login.html
custom_page_html:
mountPath: /etc/jupyterhub/custom/page.html
custom_spawn_pending_html:
mountPath: /etc/jupyterhub/custom/spawn_pending.html
nodeSelector:
topology.kubernetes.io/region: "us-west"
kubernetes.io/hostname: "perfsonar.csusb.edu"
# env: system
image:
name: jupyterhub/k8s-hub
tag: '1.2.0'
pullPolicy: ''
pullSecrets: []
livenessProbe:
# The livenessProbe's aim to give JupyterHub sufficient time to startup but
# be able to restart if it becomes unresponsive for ~5 min.
enabled: true
initialDelaySeconds: 300
periodSeconds: 10
failureThreshold: 30
timeoutSeconds: 3
readinessProbe:
# The readinessProbe's aim is to provide a successful startup indication,
# but following that never become unready before its livenessProbe fail and
# restarts it if needed. To become unready following startup serves no
# purpose as there are no other pod to fallback to in our non-HA deployment.
enabled: true
initialDelaySeconds: 0
periodSeconds: 2
failureThreshold: 1000
timeoutSeconds: 1
loadBalancerIP:
deploymentStrategy:
type: Recreate
db:
type: sqlite-pvc
pvc:
accessModes:
- ReadWriteOnce
storageClassName: rook-ceph-block
resources:
limits:
cpu: "2"
service:
type: ClusterIP
chp:
resources:
limits:
cpu: "2"
singleuser:
extraNodeAffinity:
required:
- matchExpressions:
- 'key': 'topology.kubernetes.io/region'
'operator': 'In'
'values': ["us-west"]
cloudMetadata:
blockWithIptables: false
networkPolicy:
enabled: false
storage:
type: dynamic
extraLabels: {}
extraVolumes: []
extraVolumeMounts: []
capacity: 100Gi
homeMountPath: /home/jovyan
dynamic:
storageClass: rook-ceph-block
pvcNameTemplate: claim-{username}{servername}
volumeNameTemplate: volume-{username}{servername}
storageAccessModes: [ReadWriteOnce]
# extraVolumes(Mounts) are overriden by the custom spawner -> extraFiles/my_spawner.py
# extraVolumes:
# - name: csusb-hpc-share
# persistentVolumeClaim:
# claimName: csusb-hpc-share
# - name: mkshare-script
# configMap:
# name: mkshare-script
# defaultMode: 0777
# extraVolumeMounts:
# - name: csusb-hpc-share
# mountPath: /home/shared
# - name: mkshare-script
# mountPath: /usr/local/bin/before-notebook.d/mkshare.sh
# subPath: mkshare.sh
image:
name: localhost:30081/prp/jupyter-stack/prp
tag: latest
startTimeout: 600
cpu:
# cmd: start-notebook.sh
cmd: jupyterhub-singleuser
# profileList:
# - display_name: Stack Minimal
# default: true
# kubespawner_override:
# image_spec: localhost:30081/prp/jupyter-stack/minimal
scheduling:
userScheduler:
enabled: false
# prePuller relates to the hook|continuous-image-puller DaemonsSets
prePuller:
hook:
enabled: false
continuous:
enabled: false
ingress:
enabled: true
annotations:
kubernetes.io/ingress.class: haproxy
users: false
removeNamedServers: false
timeout: 3600
every: 600