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

Make repo installable from offline media #4478

Open
dhruvkb opened this issue Jun 13, 2024 · 3 comments
Open

Make repo installable from offline media #4478

dhruvkb opened this issue Jun 13, 2024 · 3 comments
Labels
🤖 aspect: dx Concerns developers' experience with the codebase ✨ goal: improvement Improvement to an existing user-facing feature 🟨 priority: medium Not blocking but should be addressed soon 🧱 stack: mgmt Related to repo management and automations

Comments

@dhruvkb
Copy link
Member

dhruvkb commented Jun 13, 2024

Description

Openverse should be easy to install from offline media like a flash drive. This will make it extremely easy to set up Openverse for contributors by carrying the repository on a flash drive to various coding events. This requires multiple things:

The repo should be copyable onto a flash drive that can support multiple Unix-like operating systems (with support for file system permissions etc.).

We should have just recipes to

  • download the Docker images offline
  • load the Docker images from offline .tar.gz files

We should have commands and just recipes to ensure that the repo can be cleaned of all untracked files like environment variables and secrets.

Additional context

This issue was identified at contributor day.

@dhruvkb dhruvkb added 🟨 priority: medium Not blocking but should be addressed soon ✨ goal: improvement Improvement to an existing user-facing feature 🤖 aspect: dx Concerns developers' experience with the codebase 🧱 stack: mgmt Related to repo management and automations labels Jun 13, 2024
@openverse-bot openverse-bot moved this to 📋 Backlog in Openverse Backlog Jun 13, 2024
@openverse-bot openverse-bot moved this from 📋 Backlog to 🏗 In Progress in Openverse Backlog Jun 13, 2024
@sarayourfriend
Copy link
Collaborator

@dhruvkb did y'all get to try #4329, by chance? That seems more reasonable than plugging USB flash drives into people's computers at events. Some companies won't allow people to do that anyway (could run into issues with contributors working on laptops supplied by an enterprise company).

I guess this is also solving the problem of needing to download docker images (the base, and then build)? Is that the main one, rather than the git repo?

@dhruvkb
Copy link
Member Author

dhruvkb commented Jun 18, 2024

Yes, we did, and while it was faster than a full download, it was still prone to errors and failures. This is anecdotal, but for the contributor at our table, the repo download failed several times and they had to go plug into a wired connection.

The other concern is Docker images. Even if the repo can be cloned quite fast, the development environment requires many, quite large Docker images to also be downloaded. From the same anecdote, the contributor came back with the cloned repo and we sent him back to also run ov just build, which he did, and came back, and we ran ov just up only to realise that the images for ES, Redis, PostgreSQL etc. were missing.

While some companies will reasonably recommend not plugging USB drives from random people, we should not discount contributors who are bringing their personal laptops to events. They would likely be quite pleased with a disk that can provide the repo and all supporting Docker images with a single recipe to set everything up for them without Internet.

@sarayourfriend
Copy link
Collaborator

Yep, makes sense! So long as whatever solution we use is easy to maintain, it sounds worthwhile.

@dhruvkb dhruvkb removed their assignment Aug 12, 2024
@openverse-bot openverse-bot moved this from 🏗 In Progress to 📋 Backlog in Openverse Backlog Aug 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🤖 aspect: dx Concerns developers' experience with the codebase ✨ goal: improvement Improvement to an existing user-facing feature 🟨 priority: medium Not blocking but should be addressed soon 🧱 stack: mgmt Related to repo management and automations
Projects
Status: 📋 Backlog
Development

Successfully merging a pull request may close this issue.

2 participants