57
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
this post was submitted on 01 Aug 2023
57 points (96.7% liked)
Programming
17305 readers
321 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 !webdev@programming.dev
founded 1 year ago
MODERATORS
Off the top of my head we use AWS ECS which provides a rolling upgrade method. Push up the new container into ECR (from github actions after they pass tests) run the upgrade command, and new containers will start booting. Once they pass their health checks the load balancer starts serving traffic to them. Once they're live, the old containers are removed.
We also use a blue/green deployment method so we don't have to worry about breaking the production database with database changes.
Thanks for weighing in. Yeah! This is basically what I am thinking I'll have to do. I just tried Github actions and runners with a very small internal app and I liked it. I've never worked closely in AWS but I've gotten trained in/used Azure a few times and it's basically the same thing on my end.
Robust tests, larger conditional workflows in github actions, and some sort of staggered rollout I think are the conclusion I'm arriving at.
AWS is expensive and confusingly structured, but I've been impressed with the ECS stuff. The UI for all of it is also way overcomplicated and stupid, but once you have it working it works.