Commit Graph

182 Commits

Author SHA1 Message Date
Min RK
bcf31a979c fix permissions on initial install
running installer as root allows some file ownership from the archive to be set as a user other than root
2018-07-19 01:30:04 -07:00
Min RK
00797b404c move state outside envs
so it can be managed separately more easily
2018-07-18 23:15:47 -07:00
Min RK
24b535d524 move proxy secret to state dir 2018-07-18 23:12:18 -07:00
yuvipanda
d1bb4c8a1d Install nbgitpuller by default 2018-07-18 15:48:40 -07:00
yuvipanda
3d74ee71b3 Add option to install requirements.txt file on install
Also add docs about --admin option

Refer #49
2018-07-18 01:01:37 -07:00
yuvipanda
0385f8e5f7 Add LDAP & OAuthenticator to initial install 2018-07-16 16:19:16 -07:00
yuvipanda
3b6a964a4d Install all python packages in hub environment with pip 2018-07-16 01:28:18 -07:00
Romain Primet
61a7f80df2 handle 404 and 503 transient errors 2018-07-13 14:56:00 +00:00
Romain Primet
c24b536bd9 handle 503 as well 2018-07-13 16:29:30 +02:00
Romain Primet
baef6d0bd9 handle transient 404 2018-07-13 15:55:41 +02:00
Romain Primet
7c245d0868 remove hard-coded constant from retry loop 2018-07-13 15:36:44 +02:00
yuvipanda
e4a059a81a Bump systemdspawner version 2018-07-12 16:56:20 -07:00
yuvipanda
6d3efffcb5 Upgrade systemdspawner to v0.10 2018-07-11 14:29:24 -07:00
yuvipanda
76ddc5b047 Bump version of conda installed in user environment 2018-07-11 13:07:45 -07:00
yuvipanda
6e6ecdb26b Fix checking for JupyterHub service being up
Would always fail before, since we never returned on
success
2018-07-11 13:01:57 -07:00
yuvipanda
54ebfbce23 Check JupyterHub is running before finishing installer
Integration CI failures were probably caused by us testing
too soon. This should make that less likely
2018-07-11 12:56:52 -07:00
yuvipanda
154cc00a31 Add --admin params to bootstrap / installer to set up admin accts
This removes a big step requiring file changes from the quickstart
path. You can specify the admin username on the commandline.
2018-07-03 16:18:32 -07:00
yuvipanda
2b20a0b766 Make firstuseauthenticator the default
Fixes #14
2018-07-03 11:54:42 -07:00
yuvipanda
715860707b Rewrite bootstrapper in Python
- This was going to get too complex for bash. Only way to
  kill those scripts is before they get too complex.
- Better progress messages from bootstrapper.
- Differentiate between bootstrapper & installer
- Cleanup documentation a little bit
2018-07-02 15:12:26 -07:00
yuvipanda
82e7fa6cdc Add nteract to base install too
- This gives us two alternative notebook frontends
- Also install as many things from pip as possible, to keep
  consistency in the user environment
2018-06-29 00:27:00 -07:00
yuvipanda
3e78ea9040 Add trailing newline to sudoers file
Required by sudo's config syntax
2018-06-28 01:30:14 -07:00
yuvipanda
3f0c8942cc Preserve PATH when using sudo -E
jupyterhub admins should be able to run `sudo -E pip install numpy`
and install numpy into the user environment. However, since pip
is in the PATH we explicitly set in jupyterhub_config.py and
sudo doesn't preserve PATH, this won't work.

We exempt jupyterhub-admins groups from the PATH restriction,
so sudo -E works. This has some security costs, but we are already
allowing passwordless roots for them with unrestricted paths...
2018-06-28 01:22:27 -07:00
yuvipanda
dd53176889 Start JupyterHub / CHP when system starts 2018-06-28 00:49:36 -07:00
yuvipanda
8401012ab6 Start / Restart JupyterHub / CHP as required 2018-06-28 00:06:11 -07:00
yuvipanda
582ef74a61 Restart JupyterHub after each install
Restarting JupyterHub should be non-disruptive, and helps
make the config changes come true ASAP.
2018-06-27 18:07:59 -07:00
yuvipanda
8a19b02864 Install conda & jupyterlab explicitly
conda was not installed in the user environment explicitly,
so users can't install conda packages themselves.

Also install JupyterLab while we're at it :)
2018-06-27 18:05:20 -07:00
yuvipanda
bfd2a8bca3 Store hub state inside install_prefix
rm -rf'ing the prefix should get rid of almost everything
2018-06-27 14:21:08 -07:00
yuvipanda
12698a20ed Move all config files inside INSTALL_PREFIX
Makes cleanup easier!
2018-06-27 03:17:01 -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
4bfc04c225 Add escapism as a package dependency 2018-06-27 00:35:17 -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
5f4aed5b4b Add a simple installer!
Sortof re-invents what debian packages do a little bit.
2018-06-26 18:37:24 -07:00