- add nodejs module to use npm package provider - add jupyterhub role - add class to configure the jupyterhub instance - add ldap groups - add nginx simpleproxy
46 lines
1.2 KiB
YAML
46 lines
1.2 KiB
YAML
---
|
|
profiles::packages::include:
|
|
python3.12: {}
|
|
python3.12-pip: {}
|
|
|
|
hiera_include:
|
|
- profiles::nginx::simpleproxy
|
|
|
|
# manage a simple nginx reverse proxy
|
|
profiles::nginx::simpleproxy::nginx_vhost: 'jupyterhub.query.consul'
|
|
profiles::nginx::simpleproxy::nginx_aliases:
|
|
- jupyterhub.service.consul
|
|
- jupyterhub.query.consul
|
|
- "jupyterhub.service.%{facts.country}-%{facts.region}.consul"
|
|
|
|
profiles::nginx::simpleproxy::proxy_port: 8000
|
|
profiles::nginx::simpleproxy::proxy_path: '/'
|
|
nginx::client_max_body_size: 20M
|
|
|
|
# additional altnames
|
|
profiles::pki::vault::alt_names:
|
|
- jupyterhub.service.consul
|
|
- jupyterhub.query.consul
|
|
- "jupyterhub.service.%{facts.country}-%{facts.region}.consul"
|
|
|
|
# configure consul service
|
|
consul::services:
|
|
jupyterhub:
|
|
service_name: 'jupyterhub'
|
|
tags:
|
|
- 'jupyterhub'
|
|
address: "%{facts.networking.ip}"
|
|
port: 443
|
|
checks:
|
|
- id: 'jupyterhub_http_check'
|
|
name: 'jupyterhub HTTP Check'
|
|
http: "https://%{facts.networking.fqdn}"
|
|
method: 'GET'
|
|
tls_skip_verify: true
|
|
interval: '10s'
|
|
timeout: '1s'
|
|
profiles::consul::client::node_rules:
|
|
- resource: service
|
|
segment: jupyterhub
|
|
disposition: write
|