openoakland / woeip

A platform for impacted communities to understand their local air quality and advocate for environmental justice.
https://woaq.org
MIT License
29 stars 16 forks source link

As a developer, I would like to know how to deploy the production app #471

Closed gsehrlich closed 2 years ago

gsehrlich commented 2 years ago

Is your feature request related to a problem? Please describe. We have an up-to-date video walkthrough in the team drive, but the written instructions in .github/deployment.md are out of date.

Describe the solution you'd like Update deployment.md with step-by-step instructions for deploying the develop branch to the live server as described in the video.

Resource Here's a link to the video walkthrough.

theecrit commented 2 years ago

@gsehrlich Can you drop the link to the video here, too?

gsehrlich commented 2 years ago

Good idea! Just updated the OP.

Temidayo32 commented 2 years ago

Hi, I am new here, I would like to know what I need to do to solve this issue.

From the issue, I can tell the developer is making a documentation request for a "how-to" guide on how to deploy the production app.

However, I am a little confused. @gsehrlich commented a solution of updating the out of date documentation with step by step instructions for deploying the develop branch.

But the issue talks about how to deploy the production app. Is it the same thing with "how to deploy to develop branch"?

Thank you

theecrit commented 2 years ago

Hi @Knowledgeissweet, thanks very much for looking into this! I believe the specific process we're trying to capture in documention is explained in the video linked in the issue. Watching the video and documenting the steps explained there may be the easiest way forward.

For context, we currently push all new changes to the develop branch. When we're ready to release those changes to the live website at woaq.org I believe we then have to merge develop into another branch that's used for the "production" version on the live server. Those details should be explained in the video.

Temidayo32 commented 2 years ago

Thanks @theecrit for the response. I will check out the video and work on the documentation. Thanks

gsehrlich commented 2 years ago

@Knowledgeissweet Glad to hear you're interested! Sorry about the unclear issue description; what @theecrit said is right. Individual contributors' pull requests are first merged into develop, which is the repository's default branch. The changes merged to develop can be tested together before deployment.

Each time we want to deploy recent changes into production at woaq.org, we start by merging develop into another protected branch called main. Then we pull main to the woaq.org server and use it to build and serve the production version of the app, which is faster than the development version but difficult to debug.

The video has the rest of the details. Feel free to let me know if there's anything else I can help clarify!

Temidayo32 commented 2 years ago

@gsehrlich @theecrit Actually, this is going to be my first open source contribution so I am having a little bit of some friction. Okay, I have watched the video. So this is the only changes I can suggest to the documentation currently.

From the documentation, under the "workflow for changing and deploying WOAQ" section, the only change I can spot to be done is to the Step 7 & 8

Step 7 currently says : Once changes have accumulated and stabilized on develop, there will be a PR to place cumulative changes onto livewire

My own modification: Once changes have accumulated and stabilized on develop, there will be a PR to place cumulative changes onto main branch

Another step (new step 8): Cumulative changes pushed to main branch will consequently be deployed to DigitalOcean.

Current Step 8: Once on Livewire the changes will be available for live use.

Now Step 9: Once on DigitalOcean, the changes will be available for live use. . Some confusion to clear

Is Livewire what I think it is? By this I mean, is it a live server similar to DigitalOcean? If yes, is it a live server for deployment but no longer in use by WOAQ?

The contributor that spoke in the video talked about Netlify. Netlify isn't currently used for a deployment, right?

So let me know if I am going in the right direction as regards the contribution to be made to the documentation (I seriously don't know if that's the update needed. That what I can think from the video).

Thanks so much once again.

If this is the right update, I will promptly place these changes in my forked branch and make a pull request.

gsehrlich commented 2 years ago

Thanks for taking a look at the video and suggesting the edits, and welcome to your first open-source project! It's great that you're taking this on because you'll notice details that people with more experience might gloss over. For a first contribution, it has some challenges though.

Your changes so far look great to me. Regarding your questions:

General suggestions:

I can make any other suggestions in the pull request after you've opened it.

I'd be happy to orient you via video call if you'd like. In case you're not in Open Oakland Slack workspace, here's a link to the website's contact page with a link to join. https://openoakland.org/contact/

Temidayo32 commented 2 years ago

" I think there's a bit more detail in the video about what to do inside the DigitalOcean droplet console to get the new changes built and served, which we should include after step 9. Do you want to give that a shot?"

Exactly, there was information of what do inside Digital Ocean droplet console, but I couldn't follow, due to a reason: the contributor blurred the DigitalOcean Interface due to the display of some sensitive information (like IP address).

Even some sections of the console while the contributor was executing some commands were blurred. So this made it difficult for me assembling the information into something cohesive (I couldn't understand and grasp the process) and consequently, communicate.

Temidayo32 commented 2 years ago

And absolutely, a video call will be the best help. Thanks so much for that. I really appreciate.

I have joined Openoakland group

gsehrlich commented 2 years ago

Even some sections of the console while the contributor was executing some commands were blurred. So this made it difficult for me assembling the information into something cohesive (I couldn't understand and grasp the process) and consequently, communicate.

Whoops, sorry about that. That was me that did the blurring. I tried to keep the active command line visible, but maybe I didn't do a good job of that. I'm happy to fill in whatever details you're not sure about.

Welcome to the group! I'll reach out to you there to schedule a call.