Skip to content
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: use cloud storage from amalthea #387

Merged
merged 5 commits into from
Sep 27, 2024

Conversation

olevski
Copy link
Member

@olevski olevski commented Sep 4, 2024

Adds cloud storage for the new amalthea operator and with the new csi rclone version.

/deploy renku=feat-jupyter-free-sessions amalthea-sessions=feat-add-cloud-storage renku-notebooks=feat-jupyter-free-sessions renku-gateway=feat-add-renku-refresh-token-for-data-service renku-ui=andrea/custom-launcher-jupyter-free extra-values=amalthea-sessions.deployCrd=false,amalthea-sessions.rcloneStorageClass=csi-rclone-387-secret-annotation #notest

@RenkuBot
Copy link
Contributor

RenkuBot commented Sep 4, 2024

You can access the deployment of this PR at https://renku-ci-ds-387.dev.renku.ch

Copy link
Member

@Panaetius Panaetius left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

General Question: there's still #347 that does a bit of cleanup in cloud storage and probably will cause quite a bit of conflict with this, so I'm wondering what the best way would be for us to bring this together with your changes. There's also lots of changes @leafty is working on in regards to cloud storage, and 3 people working on the same bits of code at the same time is bound to cause issues. maybe we should sync?

name=None,
)
for s in body.cloudstorage or []
if s.storage_id is not None
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

question: historically, users could mount arbitrary, unsaved cloud storage and the UI would just post a body here, in which case it wouldn't have a storage_id. I don't think this is around in v2 but v1 might still use this. So I'm not entirely sure if this if statement will break things and we'd have to generate ad-hoc ids or if this is fine?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For this first implementation of the cloud storage in V2 lets keep things simple and not allow people to mount cloud storage that is unsaved. Then if needed we can add this functionality. This also needs some design because in theory we could allow this in many other places in the API where we currently expect something that exists in the DB. So I will make the storage ID required in the post request to launch a session. If a payload is provided then it just overrides the cloud storage saved in our DB.

components/renku_data_services/notebooks/blueprints.py Outdated Show resolved Hide resolved
@olevski
Copy link
Member Author

olevski commented Sep 23, 2024

General Question: there's still #347 that does a bit of cleanup in cloud storage and probably will cause quite a bit of conflict with this, so I'm wondering what the best way would be for us to bring this together with your changes. There's also lots of changes @leafty is working on in regards to cloud storage, and 3 people working on the same bits of code at the same time is bound to cause issues. maybe we should sync?

When it comes to #347 I think we should split out the API breaking change and merge that at some other time. There is still a lot of testing and minor fixes that are needed on the UI as well. So if we can not have the API breaking change then we dont have to distract the UI with these changes (in addition to many already introduced with the new amalthea). You opened #347 @Panaetius do you think you can split out the API breaking change?

As for the cloud storage changes that @leafty will introduce. I think she is standing by until we merge more things. So after we get this PR and the one furtehr in the stack (#411) I think that @leafty can start targeting the same release branch we have been targeting.

But yeah just to be safe lets have a quick chat in the afternoon tomorrow.

@leafty
Copy link
Member

leafty commented Sep 24, 2024

As for the cloud storage changes that @leafty will introduce. I think she is standing by until we merge more things. So after we get this PR and the one furtehr in the stack (#411) I think that @leafty can start targeting the same release branch we have been targeting.

If I understand things correctly, the new sessions API will not support Renku 1.0. In which case the changes should be reasonable.

@leafty
Copy link
Member

leafty commented Sep 26, 2024

Note: waiting for a rebase, so I can try to work from this branch.

@Panaetius
Copy link
Member

When it comes to #347 I think we should split out the API breaking change and merge that at some other time.

but the API is currently broken and that it works is mostly an accident, any update to sanic or one of its components could break it. So yes, it's a breaking API change but at the same time it's more of a bugfix and unbreaking the API. I wouldn't hold off on this. And it is needed for that PR. Also SwissDataScienceCenter/renku-ui#3299 addressed those changes on the UI AND addresses the changes to storage, so there's a bit of a triangle dependency here.

olevski and others added 4 commits September 27, 2024 13:42
Co-authored-by: Samuel Gaist <samuel.gaist@idiap.ch>

squashme: resolve package version conflicts
squashme: use the amalthea session cache
We have shared errors we raise everywhere which we should use not that
we moved the notebooks code. And we should avoid using the notebooks
errors that came with the old code. We will fully clean out these old
error classes in some follow up work.
@olevski olevski merged commit 689585b into release-amaltheas-migration Sep 27, 2024
15 checks passed
@olevski olevski deleted the feat-add-cloudstorage branch September 27, 2024 14:01
@RenkuBot
Copy link
Contributor

Tearing down the temporary RenkuLab deplyoment for this PR.

olevski added a commit that referenced this pull request Oct 2, 2024
Co-authored-by: Samuel Gaist <samuel.gaist@idiap.ch>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants