Ranter
Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Comments
-
what works in a lot of cases, that i have experienced so far, is to containerize the applications, and put them on some image repository, whenever the code repo is getting updates on specific branches.
The same automation could also then deploy these containers (docker containers for example) onto the target hardware and run it.
so basically lint + test, build, package & deploy on registry, deploy to hardware & run. That works for dedicated/ on-prem hardware and for cloud infrastructure, and it can be also mass rolled out on multiple targets at once, because the applications are just containers. -
I work on network appliances these days, and many of them use git for versioning of configuration.
You write in configuration live, then save it with a write command and a log message. Then you can roll back to any revision, and backing up is as simple as a push to origin behind the scenes -
hitko31451yI've yet to see a CMS where that would be possible / practical. Basically with CMS you have a number of things that need to be versioned separately:
- Core CMS; that's probably the easiest part, since it already comes with versioning. Just put the selected version in the deploy file and add it to your git repository.
- Add-ons; those also come with their own versioning, so you can create a lockfile to store the exact version of each add-on you use, and keep that file under git (along with any custom add-on code and config files).
- Configuration; here's where things become problematic. CMSs usually store most of their configuration in the database along with any user-generated content. Since configuration usually depends on what version of CMS and add-ons you're using, this pretty much prevents you from doing any kind of automatic rollbacks; you need to manually cherry-pick the relevant data from the DB so it can be restored on rollback (assuming users won't change it through CMS.
Related Rants
-
sasikanth28A group of wolves is called a pack. A group of crows is called a murder. A group of developers is called a m...
-
gururaju56*Now that's what I call a Hacker* MOTHER OF ALL AUTOMATIONS This seems a long post. but you will definitely ...
-
linuxxx70This guy at my last internship. A windows fanboy to the fucking max! He was saying how he'd never use anythi...
Say you have some CMS webapp/site and you want to automate versioning of templates/ theming so you can do reliable rollbacks & more, and have the changes you make deployed to the webapp/site without further intervention.
How would you do it, in rough lines, from source change to auto-deploy?
I am wondering whether this is a good devops question and am curious about actual answers
question
devops
ssh
rsync
ci
sysadmin
git
linux