svthalia / concrexit

Thalia Website built on Django.
https://thalia.nu
Other
22 stars 11 forks source link

Look into GitHub Codespaces #3372

Open DeD1rk opened 9 months ago

DeD1rk commented 9 months ago

What?

Github provides a cloud dev environment that you can connect to with VSCode. This is fully isolated, and integrated with GitHub. It makes it really easy to setup a dev environment with one click.

Why?

Setting up concrexit is scary, and codespaces can take away that work. It can really lower the threshold to work on concrexit (no more setting up github ssh auth, no more installing the right python version, no more difficulty getting poetry to work, no need to worry about native dependencies).

Github currently gives everyone 60 hours of free codespaces each month (or 90 for education github pro users), which is more than anyone (except maybe me) spends working on concrexit.

Apart from being low effort for new people, it's also a convenient tool for checking out specific commits.

How?

We should investigate whether we can set stuff up (.devcontainers.json and a Dockerfile) to allow starting a codespace that's immediately ready for ./manage.py runserver.

T8902 commented 3 weeks ago

@DeD1rk Any updates on this? Because this is quite cool for people who want to get started would be nice to have it before next year's open technicie day to prevent time waisting on setup. If it's possible if not it is what it is.

DeD1rk commented 3 weeks ago

I've tried running a codespace once without any customizations, which seemed to go great. But we should definitely try it out a bit more before the new year yes!

For miniconcrexit I assume it'll be even easier as it has fewer dependencies. There it would probably also help a lot in that we wouldn't need to help people get SSH keys setup etc.

T8902 commented 3 weeks ago

Okay, we can look at it together if you want to start testing and maybe writing some documentation for people to get started since I think we can get this to work before next year then. Because that would be really cool :)