Last active
June 29, 2026 13:18
-
-
Save manics/3bb2a4b0ffdb1a1311386f3f95c38d50 to your computer and use it in GitHub Desktop.
repo2docker start env
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| { | |
| "ServerApp": { | |
| "jpserver_extensions": { | |
| "insecure_param_setenv_ext": true | |
| } | |
| } | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import os | |
| from jupyter_server.auth import authorized | |
| from jupyter_server.extension.application import ExtensionApp | |
| from jupyter_server.base.handlers import JupyterHandler | |
| class InsecureParamSetenvHandler(JupyterHandler): | |
| @authorized | |
| def get(self): | |
| for key in self.request.query_arguments: | |
| val = self.get_query_argument(key) | |
| name = key.upper() | |
| self.log.info(f"INSECURE: Setting secure environment variable from URL parameter: {name}={val}") | |
| os.environ[name] = val | |
| self.redirect(self.settings.get("lab_url", "/lab")) | |
| class InsecureParamSetenvExtension(ExtensionApp): | |
| name = "insecure_param_setenv_ext" | |
| def initialize_handlers(self): | |
| self.handlers.extend([ | |
| (r"/insecure-param-setenv", InsecureParamSetenvHandler) | |
| ]) | |
| def _jupyter_server_extension_points(): | |
| """ | |
| Returns a list of dictionaries with metadata describing | |
| where to find the `_load_jupyter_server_extension` function. | |
| """ | |
| return [{"module": "insecure_param_setenv_ext"}] | |
| def _load_jupyter_server_extension(serverapp: jupyter_server.serverapp.ServerApp): | |
| handlers = [("/insecure-param-setenv", InsecureParamSetenvExtension)] | |
| serverapp.web_app.add_handlers(".*$", handlers) | |
| # main = launch_instance = InsecureParamSetenvExtension.launch_instance |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| set -eux | |
| USER_SITE_DIR=$(python -msite --user-site) | |
| mkdir -p "$USER_SITE_DIR" | |
| mv insecure_param_setenv_ext.py "$USER_SITE_DIR" | |
| mv insecure_param_setenv_ext.json /srv/conda/envs/notebook/etc/jupyter/jupyter_server_config.d/ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| python-3.14 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment