repo2jupyterlite icon indicating copy to clipboard operation
repo2jupyterlite copied to clipboard

Bring up a `binderlite` test/beta service

Open stevejpurves opened this issue 2 years ago • 15 comments

As discussed at JupyterCon (@yuvipanda, @jtpio) and especially after seeing @yuvipanda's lighting talk -- a good next step would be to get a test service setup, publicise this and then go from there based on feedback.

Curvenote has some space that is can make available to host this and @yuvipanda I sent you some details out of band - did you get those ok?

Happy to iterate on that to make sure perms etc are set up ok (I have a terraform repo I could share and iterate on for those). Do we need to get anything else in place for this?

stevejpurves avatar May 22 '23 11:05 stevejpurves

Thanks @stevejpurves for opening this issue :+1:

It would indeed be very useful to have an instance up and running somewhere so it's easier to play around with it.

iirc there were also some discussions about supporting object storage before making this available under https://lite.binder.org.

jtpio avatar May 22 '23 11:05 jtpio

The space we have is on AWS (perms already setup for EC2, S3 & CDN) so if an object storage adapter is needed, best to target S3 initially.

stevejpurves avatar May 22 '23 13:05 stevejpurves

@stevejpurves I'm trying out the account details just now (THANK YOU!) and am getting the following error when trying to change password:

Either user is not authorized to perform iam:ChangePassword or entered password does not comply with account password policy set by administrator

yuvipanda avatar May 22 '23 13:05 yuvipanda

I've a fairly strong password with special chars, etc, so not sure if I have the permission?

yuvipanda avatar May 22 '23 13:05 yuvipanda

@yuvipanda guess I messed up initial aws permissions - I have just added you to a private repo that has the terraform script for the IAM setup (see aws/binderlite). Hopefully you should be able to log in and set a new password now?? but if not if you could suggest any changes to the permissions setup you need I can review and apply them.

stevejpurves avatar May 22 '23 20:05 stevejpurves

@stevejpurves I can login now! And I have a temporary trivial deployment running at http://184.72.30.248. THANK YOU! This is not stable, but a great start to play around with!

I opened https://github.com/stevejpurves/open-infrastructure/pull/2 to grant myself ELB permissions so I can create a loadbalancer.

yuvipanda avatar May 27 '23 17:05 yuvipanda

@stevejpurves @jtpio ok, now also accessible at https://binderlite-prototype-yuvi.mybinder.org/v1/gh/yuvipanda/environment.yml/a6a14732eb23cbc522d4e74e2ba9dc6aeeda1ae0/lab/index.html! Note some of the URL structure things I outlined in #7 have been implemented :) This will resolve the 'main' to a more permanent URL and send appropriate cache-headers (although this needs work). Caching is currently provided by fastly.

yuvipanda avatar May 28 '23 08:05 yuvipanda

@yuvipanda If you're able to get CloudFront working (as well as or instead of Fastly) that would reduce network costs too. Cloudfront includes 1TB of free network egress, and AFAIK there's no charge for S3->cloudfront transfers.

manics avatar May 31 '23 10:05 manics

@yuvipanda is the current deployment work at an endpoint? or did you want to do additional work on this to change the url etc...?

Also what is our next step? is the idea to advertise this publically and get some initial testing and feedback going? or are we not quite ready for that?

stevejpurves avatar Jun 21 '23 09:06 stevejpurves

😍 btw

image

stevejpurves avatar Jun 21 '23 09:06 stevejpurves

@stevejpurves next step would be to actually provide logs of the build process, so when repos fail (most repos will still fail! most packages don't work on jupyterlite!), the user actually sees an error message...

yuvipanda avatar Jun 21 '23 16:06 yuvipanda

@yuvipanda where do you think a binderlite deployment sits versus the https://notebooksharing.space/ stuff you've been doing? does the binder route still serve a bit of a different use case? and so worth bringing up fully still?

stevejpurves avatar Jan 17 '24 13:01 stevejpurves

Yes BinderLite / repo2jupyterlite is still very much needed, to allow for installing additional dependencies and stay close to the repo2docker configuration.

I guess the JupyterLite integration in https://notebooksharing.space/ is more for "convenience" so folks have something to play with if they want to, but it does not try to do more than that? Also it looks like there is only one JupyterLite deployment for https://notebooksharing.space/, while there would be one deployment per repo with BinderLite / repo2jupyterlite.

jtpio avatar Jan 17 '24 15:01 jtpio

cool - I'm about to start looking into wider lite support for thebe with xeus kernel support and also wanted to have a clear picture of how this is working -- I'd love to make the current deployment here real over time too.

Is the current deployment terraformed somewhere or otherwise is there a way to contribute to that i.e. is there a common way tht contributors could easily deploy or ci?

stevejpurves avatar Jan 17 '24 17:01 stevejpurves

cool - I'm about to start looking into wider lite support for thebe with xeus kernel support and also wanted to have a clear picture of how this is working -- I'd love to make the current deployment here real over time too.

That would be great!

The new jupyterlite-xeus loader package might help with this: https://github.com/jupyterlite/repo2jupyterlite/issues/17

Is the current deployment terraformed somewhere or otherwise is there a way to contribute to that i.e. is there a common way tht contributors could easily deploy or ci?

Good question. Maybe the config files should be available somewhere (on this repo, or somewhere else).

jtpio avatar Jan 17 '24 18:01 jtpio