Commit Graph

16 Commits

Author SHA1 Message Date
Min RK
2760e1adcd consolidate paths in config.py 2018-07-31 12:04:40 +02:00
Min RK
000ac05e14 Add traefik in front of CHP
introduces configuration for manual tls and letsencrypt
2018-07-30 14:04:35 +02:00
yuvipanda
9bf4a64826 Dynamically set authenticator properties from YAML
We don't wanna explicitly map keys from the YAML to traitlet
config for the authentication - that's a lot of busywork for no
gain. We instead switch to using snake_case everywhere, and
dynamically set traitlet config from YAML config!
2018-07-16 01:39:59 -07:00
yuvipanda
9e1bf84647 Prefix user accounts we create
- Helps protect against users named 'root'
- Makes it clearer that you should not rely on these users
  for general PAM work, because they are prefixed.

Fixes #9
2018-07-12 13:33:24 -07:00
yuvipanda
570802ba74 Simplify template used for generating systemd unit names 2018-06-29 01:24:30 -07:00
yuvipanda
2cb286c6f1 Set default shell to bash explicitly
sh was being used otherwise
2018-06-28 01:33:28 -07:00
yuvipanda
1a4cf5673b Use high ports for CHP API + JupyterHub
This makes it easier to test this distro out on machines
with JupyterHub running already
2018-06-27 17:38:42 -07:00
yuvipanda
47ef27af96 Read yaml config from config.yaml, not jupyterhub.yaml
Consistent with z2jh's nomenclature of config.yaml
2018-06-27 16:04:35 -07:00
yuvipanda
12698a20ed Move all config files inside INSTALL_PREFIX
Makes cleanup easier!
2018-06-27 03:17:01 -07:00
yuvipanda
f03e093b90 Explicitly tell JupyterHub it is running on port 80
Because it is!
2018-06-27 02:27:37 -07:00
yuvipanda
e957fc3bf0 Don't use sudo for everything
We are running as root, and will rely on dropping privs via
systemd rather than sudo
2018-06-27 02:07:49 -07:00
yuvipanda
cf4bd7e36e Separate jupyterhub & chp services
Allows restarting hub for config changes without disrupting user
service!
2018-06-27 02:03:08 -07:00
yuvipanda
459b985a19 Load user lists & auth config from a YAML file
- Load config only once at startup.
  A lot of jupyterhub config (like user lists) take effect only at
  startup, so live reload is not super useful. It will make the
  software more complex, so let's not do it.
- Add pyyaml as a dependency of tljh.
- Remove escapism dependency since it is not actually used
2018-06-27 01:19:10 -07:00
yuvipanda
9f35602d42 Remove sudo rights from admins when they are no longer admins 2018-06-27 00:33:41 -07:00
yuvipanda
f90a0fa540 Use classic unix users rather than systemd dynamic users
Dynamic Users are neat and probably very useful for a tmpnb
style situation. However, for regular use they have the following
problems:

1. Can't set ProtectHome=no, so you can never apt install or
   similar from inside admin accounts.
2. Dynamic uid / gid makes it hard to write sudo rules. We want
   admin users to have sudo.
3. Persistent uids / gids are very useful for ad-hoc ACLs between
   users. gid sharing isn't the most flexible sharing mechanism,
   but it is well known & quite useful.
4. /etc/skel is pretty useful!
2018-06-26 23:50:07 -07:00
yuvipanda
4042288e91 Move jupyterhub_config.py inside the package
This is where it's referred to from the systemd package
2018-06-26 18:36:53 -07:00