How to update shared "Modules" without re-deploy 13 Years, 5 Months ago
|
Karma: 0
|
Hello,
I'm running an extensive multisite where I have a MASTER, a master "slave" and then about 100 "children" that are based on the master, but with their own databases. The reason for this is that each child site begins its life as a duplicate of the master, but is then the content is independently maintained (with the exception of items using the multi-site menu and article sharing plugins).
The problem that I'm running into is that I don't quite understand the process to "update" changes to modules (i.e. installing new modules or upgrading software on existing modules) without redeploying a site, thus overwriting its database and any location-specific content items.
I am using symbollic links to all directories other than images and templates.
How can I push module (software) updates from the master down to the children without completely overwriting the child db's?
Many thanks!
Peter
|
|
|
|
|
Re: How to update shared "Modules" without re-deploy 13 Years, 5 Months ago
|
Karma: 54
|
As explained in user manual chapter 8, there are differents cases:
- Update that mean bug fix or functionality update that does not require database layout modification;
- Upgrade that mean that you also have database layout impact (ie. new fields in tables, ...)
When proceeding with an update, you normally just have the PHP code of the extension that is update and not the DB. In this case, you can only update the master extension.
In general updates concern security fixes.
When proceeding with an upgrade and therefore impact the DB layout, you have to re-install the extension in the slave site to let the extension installer proceed with the upgrade. Jms Multi Sites does not know all the specific rules to modify the existing DB layout. So you need to execute the extension installer in the slave site itself to proceed with the upgrade.
In general, modules and plugins are not affected as they use tables from components.
So you could upgrade the modules and plugins from the master without re-install them in the slave sites.
Mainly the components should be re-isntalled in the slave sites to proceed with the upgrade.
|
|
|
Last Edit: 2011/07/16 18:18 By edwin2win.
|
|
Re: How to update shared "Modules" without re-deploy 13 Years, 5 Months ago
|
Karma: 0
|
Thanks for your response, Edwin. The issue I'm facing specifically has to do with plugins for JFB Connect....essentially adding the Facebook "Like" button to all my child sites. The issue is that while the component was previously installed before I deployed my child sites, the plugin for the module position functionality was not installed in the master site until afterward.
So my question is what happens to the physical files of the module or plugin to be installed in the child site if all the folders/directories for the child site are "aliases" back tot he master site? I specifically did this based on the documentation so that all files could be updated in one place....but I was expecting the child sites to "recognize" that new files were in the modules folder.
Any clarification on this would be greatly appreciated.
Thanks!
|
|
|
|
|
Re: How to update shared "Modules" without re-deploy 13 Years, 5 Months ago
|
Karma: 54
|
When you update an extension in the master, this install the PHP code for this new update.
When this is an update, you should not have DB modifications.
In case of module or plugins, most of the them does not create DB tables.
So when you update them the code PHP is installed and available for all the website (when you use Symbolic Links to share the directories).
The install of the update/upgrade in the master does not modify anything in the slave sites.
So when this is an upgrade of a component that also require to apply DB layout modification, you also have to re-install the extension in the slave site to let it proceed with the DB layout upgrade.
I hope this is more clear.
|
|
|
|
|
|