TripSit / comboapp

MIT License
1 stars 2 forks source link

How do deployments work? #10

Closed chmac closed 1 year ago

chmac commented 1 year ago

If there's going to be updates to the codebase here, how will updates get deployed?

Is there any kind of automated deployment pipeline?

What about using GitHub pages?

LunaUrsa commented 1 year ago

Thanks for asking, great questions!

A CI pipeline updates production when updates are made to the main branch, but I'm unsure where that is. I'm inheriting this code base and trying to reverse-engineer a lot.

I've gathered that we could host simple static pages like this on Git Hub. I haven't done this before, but I've had it suggested a few times.

In the background, I'm slowly starting to re-host things in docker containers using Drone CI to update. I'm very open to suggestions on this, as I'm learning as I go. This shouldn't be necessary for these pages, but it's an option if we need something more complex than GitHub pages can offer.

chmac commented 1 year ago

GitHub pages is easy and free!

Yeah, the site is all static. I'm pretty familiar with docker, etc, I've been a full stack dev for >20 years, but I'm not so motivated to work on other parts of the TripSit infrastructure, etc.

LunaUrsa commented 1 year ago

Github pages sound like a great option then

chmac commented 1 year ago

Okay, do you want to set this up then?

Are you familiar with how to build the app and ship it to a branch?

chmac commented 1 year ago

It's a pretty standard create-react-app, but it is by now quite old, and there's no .nvmrc so I'm not certain what version of node it targets, but that can probably be figured out with a little detective work in the package.json file.

LunaUrsa commented 1 year ago

I'm unfamiliar with how to set up GitHub pages; that's definitely something I've wanted to look into. I hope the new permissions enable you to help set that up if you're willing to do that

I believe I have built this app at some point, but it's been a while, I could probably figure it out with enough trial and error. I don't see any engine properties in the package.json, but if I had to guess, it's Node 16 LTE

chmac commented 1 year ago

Node 16 was only released in 2021, so it was definitely built on something older. But maybe it works on 16, that'd be easier.

If you've given me push access to this repo then I could setup the deployment process and push the latest build.

To deploy it we'd need somebody to change the DNS records for the combo.tripsit.me domain. Do you have access to that, or access to somebody who can make the change? Any idea how long that process would take?

I'm travelling this week so earliest I could look at it would be next week.

LunaUrsa commented 1 year ago

I can take care of DNS stuff, and if you message me on discord I can likely take care of it within an hour or so. Next week is more than perfect, I appreciate that you're helping out, no deadlines, thank you!

chmac commented 1 year ago

Awesome. Yeah, no rush on the DNS, just wanted to check in case it might be a hold up for months.

chmac commented 1 year ago

Quick update to say I haven't gotten to this so far this week, it's still on my list, but might slip into next week at this point.

chmac commented 1 year ago

@LunaUrsa I created #12 which merges all the changes I made to be able to deploy to GitHub pages. I'll create a new issue for you to change the DNS stuff.