Keeping multiple (10+) CMSMS sites up to date

The place to talk about things that are related to CMS Made simple, but don't fit anywhere else.
Locked
hasanen
Forum Members
Forum Members
Posts: 38
Joined: Tue Feb 15, 2011 8:44 am

Keeping multiple (10+) CMSMS sites up to date

Post by hasanen »

Some background:
I'm making basic sites for everyone who want one. I'm also hosting those sites and keeping installations up to date.

Problem:
Well, every new site means duplication of manual work.

Solution:
I haven't find a good one. I have thought making some selenium test which handles this, but I doesn't sound the best one. Also trying to create one core install and linking all common files has crossed my mind. But it's kind of a hack and might produce more work than it possible saves, so I don't want to do that. As long as I'm hosting the sites, I also want to keep them up to date for the sake of security.

How are you managing your 10+ sites? I hope version 2 would bring some help for this. I have no problem to spend hour or few when new version come out, I just feel that new installation should not mean duplication of manual work.
zaidcrowe
Forum Members
Forum Members
Posts: 109
Joined: Wed Jun 10, 2009 3:43 pm

Re: Keeping multiple (10+) CMSMS sites up to date

Post by zaidcrowe »

This kinda ties into your business model as well i guess.

I leave the choice of upgrading to the discretion of my clients, If a security update is made available I let my customers know, and provide an affordable fee to do the update.

That way, I only have spats of needing to maintain the cmsms version of the sites - but I don't work on these long term/regularly, they tend to get built - and I barely hear from the client for two years, I'm not sure if you're in a situation where you are regularly working on these 10 sites, or what your offering customer is extended hosting, in that you're promising to always keep them update and secure at cms level?

For clients that are lazy/don't see the value in keeping up to date - well, they tend to get a bigger bill later down the line, or more often then not they go bust/loose interest in the site or just move on anyway.

As I've done everything I can to let them know about incremental updates and updating a site x years old can mean module issues, and the potential of having to rebuild certain things etc

I've seen how wordpress handles this, with one click upgrade process - which does work quite well most of the time. But most isn't always :) Third party plugins can break and cause downtime etc

not a solution - but I hope some food for thought!
User avatar
paulbaker
Dev Team Member
Dev Team Member
Posts: 1465
Joined: Sat Apr 18, 2009 10:09 pm
Contact:

Re: Keeping multiple (10+) CMSMS sites up to date

Post by paulbaker »

hasanen wrote:How are you managing your 10+ sites? I hope version 2 would bring some help for this.
I haven't found a magic solution either - but CMSMS 2.0 is promising to make it much easier, take a read of the first section of this post:
http://forum.cmsmadesimple.org/viewtopi ... =1&t=69775
Download a single file, upload it to your server (one command if you have ssh access to your server). And browse to the file. It will guide you through the installation an upgrading process.
Nice.... :P

Meanwhile, I upgrade manually though I confess not every site is completely up to date. I keep a spreadsheet of sites showing their version and information like what modules are installed. Just taken a look and I see that of 28 sites all but 1 is at version 1.11.[something] - that's pretty good I reckon. ;D

BTW there is a module for keeping track of your CMSMS sites but it's stale now; I've never tried it myself:
http://dev.cmsmadesimple.org/projects/simplesiteinfo
calguy1000
Support Guru
Support Guru
Posts: 8169
Joined: Tue Oct 19, 2004 6:44 pm

Re: Keeping multiple (10+) CMSMS sites up to date

Post by calguy1000 »

The CMSMS core will never handle multi-site stuff (i've posted info about this in the past). But a third party module can.

This is because sites become 'abandoned', move to different servers, or have different needs (different modules, different templates, users, groups and permission levels), different images, different request rates, and a billion other variables.

For 'simple' (no third party modules to worry about, very little funky logic happening) sites upgrading usually takes less than 10 minutes per site. Particularly if you're using the command line. Note: my definition of 'simple' may be different than yours. I've even upgraded 'complex' sites in less than half an hour with no difficulties. It's mostly a knowledge and experience thing.

a: 1 command to change to the proper working directory
b: 1 command to read the config.php file to find the database credentials
c: 1 command to backup the database to a .sql file
d: 1 command to backup the files of the distribution including the .sql file to a .tar.gz file
e: 1 command (optional) to copy the backup to an external location
(if you have regular automatic backups, and can get to them easily, you can skip the above steps).

f: 1 command to transfer the new release .tar.gz file (only needed once if all sites are on the same server) to the server.
g: 1 command to untar the new distribution ontop of the existing site
h: browse to the site and go through the upgrade process (only necessary if not installing a diff release).
i: testing

So basically, not counting 'backups' there are 4 manual steps. I don't see how that could get much simpler, and much shorter.

With each site being 'separate' if something pukes because of something you didn't account for, you have one site that is broken. And only one site that needs to be restored from backup and only one customer complaining, not a dozen.

[edit] if your site doesn't offer ssh access, I suggest that you talk to them about enabling 1980's based technology. If you don't know how to use the linux command line I suggest that the time investment to learning how to do things is something you'll never regret.
Follow me on twitter
Please post system information from "Extensions >> System Information" (there is a bbcode option) on all posts asking for assistance.
--------------------
If you can't bother explaining your problem well, you shouldn't expect much in the way of assistance.
calguy1000
Support Guru
Support Guru
Posts: 8169
Joined: Tue Oct 19, 2004 6:44 pm

Re: Keeping multiple (10+) CMSMS sites up to date

Post by calguy1000 »

As @PaulBaker mentioned the new installer for CMSMS 2.0 will make this somewhat easier.

It does not tackle backups. However, depending upon your hosts configuration (you may be able to use this method on some hosts) by uploading the .php file to one central location you may be able to browse to it, and use the same script to upgrade/repair/isntall-language packs for multiple different CMSMS installs.
Follow me on twitter
Please post system information from "Extensions >> System Information" (there is a bbcode option) on all posts asking for assistance.
--------------------
If you can't bother explaining your problem well, you shouldn't expect much in the way of assistance.
hasanen
Forum Members
Forum Members
Posts: 38
Joined: Tue Feb 15, 2011 8:44 am

Re: Keeping multiple (10+) CMSMS sites up to date

Post by hasanen »

Thanks for the responses!
zaidcrowe wrote:or what your offering customer is extended hosting, in that you're promising to always keep them update and secure at cms level?
Basically yes. Although I update modules only when cmsms itself has an update available.
paulbaker wrote: Meanwhile, I upgrade manually though I confess not every site is completely up to date. I keep a spreadsheet of sites showing their version and information like what modules are installed. Just taken a look and I see that of 28 sites all but 1 is at version 1.11.[something] - that's pretty good I reckon. ;D
I'm also keeping cmsms versions on spreadsheet, but not modules.
paulbaker wrote: BTW there is a module for keeping track of your CMSMS sites but it's stale now; I've never tried it myself:
http://dev.cmsmadesimple.org/projects/simplesiteinfo
Thanks, have to check it. If it's good there might be opportunity to fork it :)
calguy1000 wrote:CMSMS the CMSMS core will never handle multi-site stuff (i've posted info about this in the past).
I think I've read at least one of those posts and I understand the reasons. That's why I'd like to know how other are handling multiple sites, before making my mind how I'm going to do it.

calguy1000 wrote:For 'simple' (no third party modules to worry about, very little funky logic happening) sites upgrading usually takes less than 10 minutes per site. Particularly if you're using the command line. Note: my definition of 'simple' may be different than yours.
Well my simple in this context is something like 4 modules max. per site. As I don't yet have a customer who needs more than that.
calguy1000 wrote: I've even upgraded 'complex' sites in less than half an hour with no difficulties. It's mostly a knowledge and experience thing.

a: 1 command to change to the proper working directory
b: 1 command to read the config.php file to find the database credentials
c: 1 command to backup the database to a .sql file
d: 1 command to backup the files of the distribution including the .sql file to a .tar.gz file
e: 1 command (optional) to copy the backup to an external location
(if you have regular automatic backups, and can get to them easily, you can skip the above steps).

f: 1 command to transfer the new release .tar.gz file (only needed once if all sites are on the same server) to the server.
g: 1 command to untar the new distribution ontop of the existing site
h: browse to the site and go through the upgrade process (only necessary if not installing a diff release).
i: testing

So basically, not counting 'backups' there are 4 manual steps. I don't see how that could get much simpler, and much shorter.

With each site being 'separate' if something pukes because of something you didn't account for, you have one site that is broken. And only one site that needs to be restored from backup and only one customer complaining, not a dozen.

[edit] if your site doesn't offer ssh access, I suggest that you talk to them about enabling 1980's based technology. If you don't know how to use the linux command line I suggest that the time investment to learning how to do things is something you'll never regret.
Commandline is one option. It wasn't possible before end of the last year when I moved from bigger hosting company to my own VPS.
calguy1000 wrote:As @PaulBaker mentioned the new installer for CMSMS 2.0 will make this somewhat easier.
I'm looking forward to get hands on with the beta. I think it could be the version where to start automating upgrades.
User avatar
paulbaker
Dev Team Member
Dev Team Member
Posts: 1465
Joined: Sat Apr 18, 2009 10:09 pm
Contact:

Re: Keeping multiple (10+) CMSMS sites up to date

Post by paulbaker »

hasanen wrote:
Thanks, have to check it. If it's good there might be opportunity to fork it :)
Sounds cool, I'll be first in line to beta test it for you ;D
hasanen
Forum Members
Forum Members
Posts: 38
Joined: Tue Feb 15, 2011 8:44 am

Re: Keeping multiple (10+) CMSMS sites up to date

Post by hasanen »

paulbaker wrote:Sounds cool, I'll be first in line to beta test it for you ;D
Just tested it, seems that it isn't ready - not even close :/
User avatar
Rolf
Power Poster
Power Poster
Posts: 7825
Joined: Wed Apr 23, 2008 7:53 am
Contact:

Re: Keeping multiple (10+) CMSMS sites up to date

Post by Rolf »

- + - + - + - + - + - + -
LATEST TUTORIAL AT CMS CAN BE SIMPLE:
Migrating Company Directory module to LISE
- + - + - + - + - + - + -
Image
User avatar
paulbaker
Dev Team Member
Dev Team Member
Posts: 1465
Joined: Sat Apr 18, 2009 10:09 pm
Contact:

Re: Keeping multiple (10+) CMSMS sites up to date

Post by paulbaker »

@Rolf, I like it! :D Can it be extended to show other data, like system information or even Available Upgrades?

For everyone else, this plugin uses the Site User's Guide module to interrogate other CMSMS installations (using a secret key) to find out their version number, here it is in action showing just one site:
version_info.jpg
User avatar
Rolf
Power Poster
Power Poster
Posts: 7825
Joined: Wed Apr 23, 2008 7:53 am
Contact:

Re: Keeping multiple (10+) CMSMS sites up to date

Post by Rolf »

Yeah, it works great ;-)

I haven't released it yet, because I am not sure how I want to do that. I mean release it as a tag in the Forge or add it to my CMSMS blog.
But it will be after CMSMS 2.0 is released and it is tested.

grtz. Rolf
- + - + - + - + - + - + -
LATEST TUTORIAL AT CMS CAN BE SIMPLE:
Migrating Company Directory module to LISE
- + - + - + - + - + - + -
Image
User avatar
Rolf
Power Poster
Power Poster
Posts: 7825
Joined: Wed Apr 23, 2008 7:53 am
Contact:

Re: Keeping multiple (10+) CMSMS sites up to date

Post by Rolf »

I am not going to release the Version Info tag through the Forge.
Instead I added it to my blog! In my opinion better to use and to maintain for both you and me!
https://www.cmscanbesimple.org/blog/sim ... fo-and-mgr

Have fun! Rolf
- + - + - + - + - + - + -
LATEST TUTORIAL AT CMS CAN BE SIMPLE:
Migrating Company Directory module to LISE
- + - + - + - + - + - + -
Image
Locked

Return to “The Lounge”