jupyterhub / batchspawner

Custom Spawner for Jupyterhub to start servers in batch scheduled systems
BSD 3-Clause "New" or "Revised" License
190 stars 134 forks source link

Environment handling refactoring. #119

Open rkdarst opened 6 years ago

rkdarst commented 6 years ago

req_keepvars implies that it is for setting environment variables - but to use it, you have to re-add all of the JH defaults. This is not very intuitive, and makes it not very useful.

Rename req_keepvars to req_keepvars_default - this is pre-filled by default with the output from jupyterhub.spawner.Spawner.get_env() which is the environment that JH thinks that singleuser servers need.

Add a new req_keepvars which gets added to req_keepvars_default to become the actual req_keepvars in the batch script. This and previous would probably have helped with #118,

Add a new admin_environment which is added to the environment for running the commands, but not the --export={keepvars} in the scripts. This can be used to authenticate to batch systems in something as an admin. Note that it is not yet guaranteed that this works in all spawners.

Any thoughts on these?

All together these help with #82, considering security.

zonca commented 5 years ago

thanks, in the next 2-3 weeks I am deploying a batchspawner-based JupyterHub, I'll test this branch then if not merged yet to master.