1
I notice a few other competitor CMS's, Portal and blog tools have update tools. That is a module which updates the core and module and also some of them download modules or applications for the CMS.
I am going to write this for 2.6 so we have a system where it will download core patches and updates as well as applications for XOOPS that have been mounted on it. It will also support the downloading of Themes and Patches.
What i will be interested in if someone is interested in being the Quality Control Officer for it (Ideally someone like cesag who is proactive in testing modules would volunteer). The role will give you a slightly different access to the module which allows you to check the packaging and quanlity of a module or core release and approve it to be farmed out via API (X-REST) to the sites that will also have notification that an update is available.
Due to the size of the modules etc, older versions will be depreciated on the farm and deleted. However it will involve creating a username on the system once it is created and then creating an entry in the core, module, theme modules which will create a folder to upload your files unzipped to on a public ftp, where they will be once you have notified the upload is finished copy and mount the files to the queue area for quality control then release to public.
File structure will be like so on the public ftp:
themes/
modules/
core/
inside these primary folders you will find a folder say your module is called 'inventor' it would be:
modules/inventors/
where it follows the standard packaging method in xoops which MUST BE USED!! of
modules/inventors/docs
modules/inventors/htdocs
modules/inventors/extra
modules/inventors/upgrades
htdocs will have the following folder paths under it as per your packaging
modules/inventors/htdocs/class
modules/inventors/htdocs/kernel
modules/inventors/htdocs/Frameworks
modules/inventors/htdocs/include
modules/inventors/htdocs/modules
modules/inventors/htdocs/themes
modules/inventors/htdocs/xoops_data
modules/inventors/htdocs/xoops_lib
The upgrade version you are upgrade from, the last release version, any files which have changed are in this; previous upgrade version will not be deleted in depreciating an upload for stepping up multiple version in small file downloads the folder structure of this version say it is going from 3.01 to 3.02 would be like so:
modules/inventors/upgrades/3.01-3.02/htdocs/class
modules/inventors/upgrades/3.01-3.02/htdocs/kernel
modules/inventors/upgrades/3.01-3.02/htdocs/Frameworks
modules/inventors/upgrades/3.01-3.02/htdocs/include
modules/inventors/upgrades/3.01-3.02/htdocs/modules
modules/inventors/upgrades/3.01-3.02/htdocs/themes
modules/inventors/upgrades/3.01-3.02/htdocs/xoops_data
modules/inventors/upgrades/3.01-3.02/htdocs/xoops_lib
inside these primary folders you will find a folder say your theme is called 'messagers' it would be:
theme/messagers/
where it follows the standard packaging method in xoops which MUST BE USED!! of
theme/messagers/docs
theme/messagers/htdocs
theme/messagers/extra
htdocs will have the following folder paths under it as per your packaging
theme/messagers/htdocs/class
theme/messagers/htdocs/kernel
theme/messagers/htdocs/Frameworks
theme/messagers/htdocs/include
theme/messagers/htdocs/modules
theme/messagers/htdocs/themes
inside these primary folders you will find a folder say your core is called '2.6.0rc' it would be:
core/2.6.0rc/
where it follows the standard packaging method in xoops which MUST BE USED!! of
core/2.6.0rc/upgrades
core/2.6.0rc/complete
core/2.6.0rc/extra
complete will have the following folder paths under it as per your packaging
core/2.6.0rc/complete/htdocs/class
core/2.6.0rc/complete/htdocs/kernel
core/2.6.0rc/complete/htdocs/Frameworks
core/2.6.0rc/complete/htdocs/include
core/2.6.0rc/complete/htdocs/modules
core/2.6.0rc/complete/htdocs/themes
core/2.6.0rc/complete/htdocs/xoops_data
core/2.6.0rc/complete/htdocs/xoops_lib
upgrade will contain directors of versions for upgrading and the files for them in the same directory structure of the xoops ZIPS
ie. 2.5.0 - 2.5.5 version update would be in the folders like so, well the files being upgraded, the folder must be version-version after upgrade ie. '2.5.0-2.5.5':
core/2.6.0rc/upgrade/2.5.0-2.5.5/htdocs/class
core/2.6.0rc/upgrade/2.5.0-2.5.5/htdocs/kernel
core/2.6.0rc/upgrade/2.5.0-2.5.5/htdocs/Frameworks
core/2.6.0rc/upgrade/2.5.0-2.5.5/htdocs/include
core/2.6.0rc/upgrade/2.5.0-2.5.5/htdocs/modules
core/2.6.0rc/upgrade/2.5.0-2.5.5/htdocs/themes
core/2.6.0rc/upgrade/2.5.0-2.5.5/htdocs/xoops_data
core/2.6.0rc/upgrade/2.5.0-2.5.5/htdocs/xoops_lib