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

Experiment with Code Spaces and related tooling #3829

Open
awwaiid opened this issue Aug 13, 2023 · 16 comments · May be fixed by #4482
Open

Experiment with Code Spaces and related tooling #3829

awwaiid opened this issue Aug 13, 2023 · 16 comments · May be fixed by #4482
Labels

Comments

@awwaiid
Copy link
Collaborator

awwaiid commented Aug 13, 2023

We try to make it as easy as possible to contribute to the project. One of the current tools to explore are Github codespaces, along with docker/docker-compose to make this easy. This ticket is to track research and experimentation around this.

@github-actions
Copy link
Contributor

This issue is marked as stale due to no activity within 30 days. If no further activity is detected within 7 days, it will be unassigned.

@github-actions
Copy link
Contributor

Automatically unassigned after 7 days of inactivity.

@aeisenberg
Copy link
Contributor

Hi, I have some experience with codespaces. I would like to contribute a devcontainer that will help new users get started.

@dorner
Copy link
Collaborator

dorner commented Apr 19, 2024

@aeisenberg give it a shot!

@aeisenberg
Copy link
Contributor

Thanks. I'm giving it a shot and I have something that I think works. With my change, you can create a codespace and after initialization completes, you have the correct ruby version installed, postgres available, and rails setup. All you need to do is call bin/start.

The downside is that there are no pre-built docker images for Ruby 3.2.2 right now since the latest is 3.2.3. This means that before the container can be initialized, we must download and compile 3.2.2. This takes a while. I'll put up what I have after I clean it up a bit, but I'd like some guidance on how to make this better.

@aeisenberg
Copy link
Contributor

I spoke too soon (or typed too soon). I found an image that provides 3.2.2 by default. This significantly speeds up the codespace startup. However, when you move to a new version of ruby, we'll need to update the image as well. I'll put that in the README.

@aeisenberg
Copy link
Contributor

PR created. I hope this will be useful for you. I wanted to work on this because when I tried to set up the project myself, I had trouble getting the dev environment correct. With this change, it should be one-click to get a working environment (though it will take a little time).

When the ruby version changes, it would be nice (but not necessary) to also update the docker image.

Copy link
Contributor

Automatically unassigned after 7 days of inactivity.

@aeisenberg
Copy link
Contributor

I'm still working on this and getting feedback on #4292. Can someone reassign me?

Copy link
Contributor

github-actions bot commented May 7, 2024

Automatically unassigned after 7 days of inactivity.

@aeisenberg
Copy link
Contributor

Still working on this. 😄 Can you reassign?

@cielf
Copy link
Collaborator

cielf commented May 7, 2024

Done.

Copy link
Contributor

Automatically unassigned after 7 days of inactivity.

@aeisenberg
Copy link
Contributor

Will be fixed by #4353

@lsfernandes92
Copy link

Hello there! It's great to see the improvements in action. I managed to run the project within the codespace environment. Kudos to @aeisenberg and @awwaiid for the accessibility enhancements! 👏

I'm here because last week (before those codespace changes), I was going through the documentation and trying to set up the project locally to contribute. At that time, the only method I found was to manually install Ruby and Postgres, along with all the required libraries, Bundler, rbenv/rvm, XCode's command line tools, homebrew, etc...

However, I managed to containerize the project to run with Docker Compose. This provides another convenient way to contribute, as it allows setting up and running the application without any environment configuration. The only requirements are Docker and Docker Compose installed on your machine.

That being said, do you still think it's worth Dockerizing the project? If that's the case, can I work on it?

@dorner
Copy link
Collaborator

dorner commented May 17, 2024

Heh... this is a perennial request. We've had it before and actually removed it.

For some more history and context, see #3781 (comment) and more importantly #1856 (comment) .

@awwaiid is this issue OK to close since we merged the codespaces stuff?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
5 participants