-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: move notebook service code #301
Conversation
* refactor: minor formatting and unnecessary code removal * feat: include notebook username in pod labels * refactor: minor * feat: use k8s API to get user Jupyter servers * refactor: remove ununsed code * fix: minor fix in README.rst * feat: return server data as needed by UI Co-authored-by: rokroskar <[email protected]> * build: make tests pass * fix: apply review comments
…ves (#190) * fix: use shortened commit-sha to check for an autosave match * fix: use commit-sha of remote branch to create autosave branch name * fix: avoid a None dereferencing * fix: use both local and remote commit-sha for autosave
fix: update telepresence script and add vs code debugger
* feat: handle k8s api errors when querying for logs (#216)
feat: return json data from server_logs and expose lines limit fix #224
- Enable the use of tmpauthenticator for Jupyterhub authentication. This enables notebook sessions for logged-out users. Closes #171 - Enable logged in users without write access to a project to start notebook servers from the project. Closes #275 - Add a helper script which creates a helm values file for a secondary notebooks service deployment from the main Renku values file (some amount of guessing involved).
Add cronjob that periodically deletes users image pull secrets along with unit tests
* fix: cannot create user env due to invalid k8s secret labels
* fix: properly determine user server pod status with multiple containers Co-authored-by: Andreas Bleuler <[email protected]>
* chore: simplify tests * chore: make JH start once per session * feat: add schemas and swagger * feat: add swagger descriptions and security schema * chore: add docstrings to schema classes * fix: return server details when pending and spawning to prevent UI content flicker
* fix: add missing fields in renku-notebooks schemas * chore: update tests * fix: simplify definition of UserPodResources schema
Thank you for doing all this tedious work. does this pass ruff checks? I saw several places that still use Optional[] instead of x | None. It should fail pyupdate checks I think. |
@Panaetius see my responses:
Yes it has to be and I have to add the stuff I removed with
Yes I dont just want to get this merged and do these large changes.
Yes it has to be and I have to add the stuff I removed with
It is deleted
Done
Yes I want to do this a followup PR.
Done
Done
Done
Done
Done
Done
No need, we already use
Yes, changed it.
Agreed I will leave this as a TODO in a followup PR beacuse that section has the weird change to the code where I indented stuff for a better diff and I want to undo that before merging. I can also probably do this after I undo the changes for indentation for a better diff.
Is that a function from sanic? Sure I can use that. Same as above I will do it in a follow up.
Yes. done.
That was mean to be
Agreed
Mypy was not happy when I removed Concatenate even though it is just a single argument. But it probably wants that because it is not a regular argument but a
So the tokens are checked but the signatures are not verified. And we should be verifying the signatures ,just to be safe. Currently from outside of the cluster there is no way to get to the notebook service. And the gateway will always inject verified things in the headers. Either we should clean this up but in the end I think we simply will not use this at all and just fall back to the existing authenticator used everywhere in the data services. So this code will be fully purged. Either way this is a TODO.
It should. I will remove the indentation changes and run the linting.
|
Here is an issue with all followup work: #303 |
4c1247f
to
c60d183
Compare
9ed7b22
to
129d8b3
Compare
You can access the deployment of this PR at https://renku-ci-ds-301.dev.renku.ch |
Pull Request Test Coverage Report for Build 9942973186Details
💛 - Coveralls |
I didn't know that quoting usage but not the import prevents circular import. In any case, we should tidy this up so we don't have circular imports, like with injecting dependencies instead of importing directly in UserServer. Anyways, todo for later
Yes it's a sanic function
for example
#justmypythings I guess 🤷 |
Tearing down the temporary RenkuLab deplyoment for this PR. |
This PR aims to move (but not enable) the notebooks API from the notebook repo into here.
Enabling the handlers will be done in subsequent PRs.
Please look at: https://drive.google.com/file/d/1w40wZfFeG1H0MBjVp8wdsuw1z0gvWP-n/view?usp=sharing for a good diff of the move.
/deploy