openfoodfoundation / openfoodnetwork

Connect suppliers, distributors and consumers to trade local produce.
https://www.openfoodnetwork.org
GNU Affero General Public License v3.0
1.1k stars 715 forks source link

Fix Docker setup to ease entry for new contributors #8823

Open mkllnk opened 2 years ago

mkllnk commented 2 years ago

What we should change and why (this is tech debt)

Our Docker setup has been contributed and updated by volunteer contributors. Unfortunately, it often fails because the core team doesn't use it and doesn't update it. It's also not tested.

A lot of new contributors point out that the Docker setup is broken and get stuck. While Docker is a bit slow for regular work, it's convenient to try something out without much setup work, in a disposable container.

Offering a working Docker setup to the community will enable more people to contribute, lower the frustration and reduce requests for help.

Issue list

Many people ask on Slack and some open issues here. We can extend this list with more strategic work:

cbordei commented 2 years ago

not sure if this is contained in any of the above tickets, but recently I made a fresh setup and the sample_data rake failed when doing SampleData::OrderFactory.new.create_samples

[ofn:sample_data] - complete order - shipped
rake aborted!
StateMachines::InvalidTransition: Cannot transition state via :ship from :pending (Reason(s): State cannot transition via "ship")
/Users/srbaker/Projects/openfoodnetwork/lib/tasks/sample_data/order_factory.rb:36:in `create_samples'
/Users/srbaker/Projects/openfoodnetwork/lib/tasks/sample_data.rake:56:in `block (2 levels) in <main>'
/Users/srbaker/.rbenv/versions/3.0.3/bin/bundle:23:in `load'
/Users/srbaker/.rbenv/versions/3.0.3/bin/bundle:23:in `<main>'
Tasks: TOP => ofn:sample_data
(See full trace by running task with --trace)

there was a conversation in slack about it and it was linked allegedly to the capturing of the order failing, thus not moving the states correctly

sigmundpetersen commented 2 years ago

Hey @cbordei 👋 I think this is issue https://github.com/openfoodfoundation/openfoodnetwork/issues/9024

pacodelaluna commented 2 years ago

I will take a deeper look at this.

mkllnk commented 2 years ago

Cool, someone also compiled a ready-to-use image: https://app.slack.com/client/T02G54U79/CEBMTRCNS

pacodelaluna commented 2 years ago

@mkllnk About the read-to-use image, we will need to create a Docker Hub account and manage these images. I need also to check out with @digicirco how to initially share this image. It can come in a second time.

I was also thinking of removing the ´docker´ directory as it is just using scripts abstracting docker commands. I think it is not necessary in our case as our usage is quite simple. It will just add a new abstraction layer and a potential extra maintenance. It is just my point of view, I think we don't need these scripts.

sigmundpetersen commented 7 months ago

I think this shouldn't have been closed and this can represent the roadmap entry on Docker