this post was submitted on 01 Aug 2023
57 points (96.7% liked)

Programming

17666 readers
382 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities [email protected]



founded 2 years ago
MODERATORS
 

Hey all!

I'm seeking guidance. I have a lot of apps that use ORMs like Mongoose or Sequelize or Sqlalchemy, or even just init-db scripts with raw SQL. Point is a lot of apps have changes to the data layer. When we program and make apps they tend to describe how they need to see a database. Sometimes its no trivial feat to do an upgrade - and even if you have a CI/CD pipeline in place what does that look like to have something like even lemmy upgrade in a container.

If you have these apps in production how are you handling these apps? Both developer perspective and devops welcomed.

I see the devs offering insight into maybe how the backend recognizes database state, while the devops perhaps either describing process and implementation.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 6 points 1 year ago

We do migrations for schema on app startup (built into the app).

Any general data changes are done outside the pipeline as a pre or post deployment step.

Migrations on startup aren’t perfect, you have to be careful that it doesn’t take too long on startup.

Honestly the pros outweighs the cons. You can fire up a new site/db without much effort which is something we do often.