Difference between revisions of "Website application upgrades"

From Gramps
Jump to: navigation, search
(Upgrade WordPress (blog): upgraded to wordpress 5.2.1 https://wordpress.org/support/wordpress-version/version-5-2-1/)
m (Upgrade WordPress (blog): 6.4.3)
 
(48 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{man warn|Notes for the [email protected]|Used in the maintenance of the Gramps website}}
+
{{man warn|Notes for the [email protected]|Used in the maintenance of the Gramps website.}}
 
= Upgrade Mantis Bug Tracker (bug tracker) =
 
= Upgrade Mantis Bug Tracker (bug tracker) =
 +
 +
<code>https://gramps-project.org/bugs/</code>
 +
 
[https://www.mantisbt.org/ MantisBT] is an open source issue tracker.
 
[https://www.mantisbt.org/ MantisBT] is an open source issue tracker.
  
[https://gramps-project.org/bugs/my_view_page.php Current installed version] 2.4.1 (released: 2017-05-20)
+
[https://gramps-project.org/bugs/my_view_page.php Current installed version] 2.22.1 (released: 2019-09-27)
  
 
* Place MantisBT into [https://www.mantisbt.org/docs/master/en-US/Admin_Guide/html/admin.install.upgrade.html readonly mode] using the file <code>mantis_offline.php</code> to prevent users from using the system while the upgrade is in progress.
 
* Place MantisBT into [https://www.mantisbt.org/docs/master/en-US/Admin_Guide/html/admin.install.upgrade.html readonly mode] using the file <code>mantis_offline.php</code> to prevent users from using the system while the upgrade is in progress.
Line 13: Line 16:
 
* Rename the new folder from such as "mantisbt-release-2.10.0" to "bugsnew"
 
* Rename the new folder from such as "mantisbt-release-2.10.0" to "bugsnew"
 
* Copy "config_inc.php" from the old folder into the new folder (the "config_inc.php" file is located in the "config" directory.)
 
* Copy "config_inc.php" from the old folder into the new folder (the "config_inc.php" file is located in the "config" directory.)
* Copy the "phpmailer" folder from the "library" folder from the old "bugs" into the new folder  "bugsnew/library"
 
** Failing to to do this step will result in an unhelpful blank html page! Currently using PhpMailerAutoload v5.2.22 (20170105) check mantisbt readme if this needs to be upgraded. If so download from github.
 
 
* Check any readme type files to make sure there are not any database schema changes required - and follow the directions if there are...
 
* Check any readme type files to make sure there are not any database schema changes required - and follow the directions if there are...
 
** Then check the install by using: "/mantisbt/admin/check/index.php"
 
** Then check the install by using: "/mantisbt/admin/check/index.php"
Line 22: Line 23:
 
<hr>
 
<hr>
 
Update the MantisBT plugins by downloading the updated version and install them (check the readme and follow any instructions)
 
Update the MantisBT plugins by downloading the updated version and install them (check the readme and follow any instructions)
* Source control integration plugin framework for MantisBT, including support for Github ( https://github.com/mantisbt-plugins/source-integration ) 2 part plugin
+
* Source control integration plugin framework for MantisBT, including support for Github ( https://github.com/mantisbt-plugins/source-integration ) 2 part plugin (Get the master branch)[https://mantisbt.org/bugs/view.php?id=21201]
** Source control integration (version 2.1.0)
+
** Source control integration (version 2.3.0)
** Source Github integration (version 2.0.1)
+
** Source Github integration (version 2.1.0)
 
* Google Analytics integration for MantisBT (version 2.0)( https://github.com/mantisbt-plugins/google-analytics )
 
* Google Analytics integration for MantisBT (version 2.0)( https://github.com/mantisbt-plugins/google-analytics )
 
<hr>
 
<hr>
Line 44: Line 45:
 
* Move the "bugsold" folder to <code>/home/gramps/</code> to prevent access.
 
* Move the "bugsold" folder to <code>/home/gramps/</code> to prevent access.
 
* After a two weeks, remove the "bugsold" folder.
 
* After a two weeks, remove the "bugsold" folder.
<hr>
 
Final required modifications to MantisBT source code so that the "Gramps > Product Version" is required by default when raising bug reports:
 
 
* In <code>[https://github.com/mantisbt/mantisbt/blob/master/core/bug_api.php core/bug_api.php]</code> find:
 
<pre>function validate( $p_update_extended =  true)</pre>
 
 
and add this in just below (check braces are balanced):
 
<pre>
 
{
 
 
if($this->project_id !== 3) {
 
        if( is_blank( $this->version ) ) {
 
error_parameters( lang_get( 'version' ) );
 
trigger_error( ERROR_EMPTY_FIELD, ERROR );
 
}
 
}
 
</pre>
 
 
 
* In <code>[https://github.com/mantisbt/mantisbt/blob/master/bug_report_page.php bug_report_page.php]</code> added line to make the red '''*''' (Asterisk character) show after the "Gramps > Product Version" change:
 
<br><code><?php echo lang_get( 'product_version' ) ?></code>
 
<br>To read:
 
<br><code><?php echo '<span class="required">*</span>' . lang_get( 'product_version' ) ?></code>
 
 
<hr>
 
<hr>
 
Also check that the following two links work and are not blank:
 
Also check that the following two links work and are not blank:
Line 76: Line 54:
  
 
= Upgrade MediaWiki (wiki) =
 
= Upgrade MediaWiki (wiki) =
 +
 +
<code>https://gramps-project.org/wiki/</code>
 +
 
[https://www.mediawiki.org/wiki/MediaWiki MediaWiki] is a free software open source wiki package written in PHP, originally for use on Wikipedia.
 
[https://www.mediawiki.org/wiki/MediaWiki MediaWiki] is a free software open source wiki package written in PHP, originally for use on Wikipedia.
  
[https://gramps-project.org/wiki/index.php?title=Special:Version Current installed version] 1.28.2 (released: 2017-04-30)
+
[https://gramps-project.org/wiki/index.php?title=Special:Version Current installed version] [https://www.mediawiki.org/wiki/MediaWiki_1.31 1.31.3] (released: 2019-07-02) LTS (Supported until [https://www.mediawiki.org/wiki/Version_lifecycle#Versions_and_their_end-of-life June 2021])
  
 
The gramps_wiki mysql database is quite a large, and MediaWiki upgrades are generally more likely to have problems when upgrading than other actions on the Gramps website!
 
The gramps_wiki mysql database is quite a large, and MediaWiki upgrades are generally more likely to have problems when upgrading than other actions on the Gramps website!
Line 85: Line 66:
 
* Using the Gramps Cpanel interface go to the MySQL section, then select "phpMyAdmin" and remove the often large cache tables of gramps_wiki ( "l10n_cache" and "objectcache" ).
 
* Using the Gramps Cpanel interface go to the MySQL section, then select "phpMyAdmin" and remove the often large cache tables of gramps_wiki ( "l10n_cache" and "objectcache" ).
 
* Backup gramps_wiki mysql database using phpMyAdmin from the CPanel interface using the SQL format.
 
* Backup gramps_wiki mysql database using phpMyAdmin from the CPanel interface using the SQL format.
** If this does not work due to timeouts on Godaddy try using SSH and the mysql command or even phpMyAdmin to clone/copy the existing database.
+
** If a timeout occurs try using SSH and the mysql command or even phpMyAdmin to clone/copy the existing database.
 
* Download latest version of MediaWiki ( https://www.mediawiki.org/wiki/Download ) - (Use the ".tar.gz" file.)
 
* Download latest version of MediaWiki ( https://www.mediawiki.org/wiki/Download ) - (Use the ".tar.gz" file.)
 
* Upload the MediaWiki ".tar.gz" file into the Gramps hosting site either using ftp or the CPanel "File Manager".
 
* Upload the MediaWiki ".tar.gz" file into the Gramps hosting site either using ftp or the CPanel "File Manager".
* Use the CPanel "File Manager" to unarchive it into <code>/</code> - it will create a new folder such as "mediawiki-1.30.0"
+
* Use the CPanel "File Manager" to unarchive it into <code>/</code> - it will create a new folder such as "mediawiki-1.31.3"
  
 
From here, you can use a combination of the Cpanel "File Manager" or ssh, so long as you get it all done!
 
From here, you can use a combination of the Cpanel "File Manager" or ssh, so long as you get it all done!
* Rename the new folder from such as "mediawiki-1.30.0" to "wikinew"
+
* Rename the new folder from such as "mediawiki-1.31.3" to "wikinew"
 
* Copy the "LocalSettings.php" file from "wiki" to "wikinew" folder.
 
* Copy the "LocalSettings.php" file from "wiki" to "wikinew" folder.
* Copy the entire "images" folder (quite large - nearly 1.7GB) from "wiki" to "wikinew" - you will be replacing an existing folder in wikinew.  Again, you could do this with the filemanager or use ssh if you are comfortable with it).  Even using ssh it takes quite a while, and I'm pretty sure it puts a load on the server...
+
* Copy the entire "images" folder (quite large - nearly 1.9GB) from "wiki" to "wikinew" - you will be replacing an existing folder in wikinew.  Again, you could do this with the filemanager or use ssh if you are comfortable with it).  Even using ssh it takes quite a while, and I'm pretty sure it puts a load on the server...
* Copy folders from the "extensions" folder in "wiki" into "wikinew".  '''Copy only the ones that do not exist there''' (that is, don't overwrite folders in the extensions directory with older versions - only copy across the ones that are not already there).  We use the extensions listed below that do not come with the base install as well as a few alos listed from the base install that you should not copy over.  You need to check and see if there are new versions of these, as sometimes the original versions will not work with the new version of MediaWiki. Installed extensions are listed on the following page: https://gramps-project.org/wiki/index.php?title=Special:Version  
+
* Copy folders from the "extensions" folder in "wiki" into "wikinew".  '''Copy only the ones that do not exist there''' (that is, don't overwrite folders in the extensions directory with older versions - only copy across the ones that are not already there).  We use the extensions listed below that do not come with the base install as well as a few also listed from the base install that you should not copy over.  You need to check and see if there are new versions of these, as sometimes the original versions will not work with the new version of MediaWiki. Installed extensions are listed on the following page: https://gramps-project.org/wiki/index.php?title=Special:Version  
 
** Extension that Gramps wiki uses that come with MediaWiki (do not need to be installed) but are listed in the LocalSettings.php file
 
** Extension that Gramps wiki uses that come with MediaWiki (do not need to be installed) but are listed in the LocalSettings.php file
*** ParserFunctions 1.6.0 - Enhance parser with logical functions
+
*** ParserFunctions - Enhance parser with logical functions
*** TitleBlacklist 1.5.0 -
 
 
** Thirdparty Extensions
 
** Thirdparty Extensions
*** <s>Collection - (v1.7.0 RE1_30) - Create pdf books from wiki pages</s> '''Disabled due to server load issues!'''
+
*** Confirm User Accounts – Gives bureaucrats the ability to confirm account requests
*** Confirm User Accounts - (- 21.21 : 25 October 2016) – Gives bureaucrats the ability to confirm account requests
+
*** LabeledSectionTransclusion
*** UserMerge - (v1.10.1 RE1_30) -  Merges references from one user to another user in the wiki database - will also delete old users following merge. Requires usermerge privileges
+
*** Variables - Parser functions allowing to work with dynamic variables in an article scoped context
*** LabeledSectionTransclusion - (- 4.52 : 1 September 2017) -
+
*** Google Analytics Integration
*** Variables - (v2.2.0 RE1_30) - Parser functions allowing to work with dynamic variables in an article scoped context
+
** [https://www.mediawiki.org/wiki/Manual:Skins Mediawiki:Skins](Themes)
*** Google Analytics Integration - (v3.0.1 : 14 August 2017 RE1_30) -
+
*** Default is "Vector" as it has been customised for Gramps ( see https://gramps-project.org/wiki/index.php/MediaWiki:Common.css )
 +
*** MobileFrontEnd
 +
**** "MinervaNeue" mobile Skin (which is the same one used on Wikipedia)
  
 
If there are any database schema changes, you may need to run the "update.php" file that is in the MediaWiki maintenance directory.
 
If there are any database schema changes, you may need to run the "update.php" file that is in the MediaWiki maintenance directory.
Line 123: Line 105:
 
* After a two weeks, remove the "wikiold" folder.
 
* After a two weeks, remove the "wikiold" folder.
  
Skins (Themes)
 
* Default is "Vector" as it has been customised for Gramps
 
  
 
'''Backup the website.'''
 
'''Backup the website.'''
  
 
= Upgrade WordPress (blog) =
 
= Upgrade WordPress (blog) =
 +
 +
<code>https://gramps-project.org/blog/</code>
 +
 
[https://wordpress.org/ WordPress] is open source software used to create the blog.
 
[https://wordpress.org/ WordPress] is open source software used to create the blog.
  
Current installed version 5.2.1 (released: 2019-05-21)
+
Current installed version 6.4.3 ([https://wordpress.org/download/releases/ released:] 2024-01-30)
  
 
* Backup gramps_blog mysql database using phpMyAdmin from the CPanel interface using the SQL format.
 
* Backup gramps_blog mysql database using phpMyAdmin from the CPanel interface using the SQL format.
* Login to the Gramps blog ( https://gramps-project.org/introduction-WP/wp-login.php ) using an admin login.
+
* Login to the Gramps blog ( https://gramps-project.org/blog/wp-login.php ) using an admin login.
  
 
The Dashboard will indicated to you if there is a newer version available for updating/upgrading.
 
The Dashboard will indicated to you if there is a newer version available for updating/upgrading.
Line 168: Line 151:
  
 
-->
 
-->
 +
=Changing to a new Hosting service=
 +
{{stub}}
 +
General summary of steps taken on move to current host.
 +
 
=See also=
 
=See also=
 
*[[.dtd_and_.rng]]
 
*[[.dtd_and_.rng]]

Latest revision as of 11:26, 11 February 2024

Gnome-important.png
Notes for the [email protected]

Used in the maintenance of the Gramps website.

Upgrade Mantis Bug Tracker (bug tracker)

https://gramps-project.org/bugs/

MantisBT is an open source issue tracker.

Current installed version 2.22.1 (released: 2019-09-27)

  • Place MantisBT into readonly mode using the file mantis_offline.php to prevent users from using the system while the upgrade is in progress.
  • Backup gramps_bugs mysql database using phpMyAdmin from the CPanel interface using the SQL format.
    • Note that mantis attachments are stored in the /home/gramps/public_html/files folder.
  • Download latest version of MantisBT ( https://github.com/mantisbt/mantisbt/releases ) - (Use the ".tar.gz" file.)
  • Upload the MantisBT ".tar.gz" file into the Gramps hosting site either using ftp or the CPanel "File Manager".
  • Use the CPanel "File Manager" to unarchive into /home/gramps/ - it will create a new folder such as "mantisbt-release-2.10.0"
  • Rename the new folder from such as "mantisbt-release-2.10.0" to "bugsnew"
  • Copy "config_inc.php" from the old folder into the new folder (the "config_inc.php" file is located in the "config" directory.)
  • Check any readme type files to make sure there are not any database schema changes required - and follow the directions if there are...
    • Then check the install by using: "/mantisbt/admin/check/index.php"
    • And then upgrade the installation using: "/mantisbt/admin/install.php"
  • Rename the original folder from "bugs" to "bugsold"
  • Rename the new folder from "bugsnew" to "bugs"

Update the MantisBT plugins by downloading the updated version and install them (check the readme and follow any instructions)


See if it works!

  • Place MantisBT into normal mode by removing mantis_offline.php
  • Login as a user
    • Use the test user (see offline support document)
  • Test a few things (Edit note/create feature/issue)
  • Look at the bottom left corner of the main overview page where it will display the current upgraded to version number so you know you are looking at the new install (You may need to refresh to get a new copy, as there is probably some caching involved...)

If not immediately functional

  • Revert by renaming "bugs" to "bugsnew" and "bugsold" to "bugs"
  • If any database schema changes had been made restore the original "gramps_bugs.sql" mysql database using phpMyAdmin.

that should put MantisBT back to square one...


Otherwise if it worked.

  • Remove the "admin" folder (Or else there is a warning each time you login to do this).
  • Remove the MantisBT ".tar.gz" file you uploaded.
  • Move the "bugsold" folder to /home/gramps/ to prevent access.
  • After a two weeks, remove the "bugsold" folder.

Also check that the following two links work and are not blank:

  • Changelog page
  • Roadmap.

If they are follow the instructions in the offline support document.


Backup the website!

Upgrade MediaWiki (wiki)

https://gramps-project.org/wiki/

MediaWiki is a free software open source wiki package written in PHP, originally for use on Wikipedia.

Current installed version 1.31.3 (released: 2019-07-02) LTS (Supported until June 2021)

The gramps_wiki mysql database is quite a large, and MediaWiki upgrades are generally more likely to have problems when upgrading than other actions on the Gramps website!

  • Place MediaWiki into restricted editing mode (See "LocalSettings.php" and uncomment the relevant section)
  • Using the Gramps Cpanel interface go to the MySQL section, then select "phpMyAdmin" and remove the often large cache tables of gramps_wiki ( "l10n_cache" and "objectcache" ).
  • Backup gramps_wiki mysql database using phpMyAdmin from the CPanel interface using the SQL format.
    • If a timeout occurs try using SSH and the mysql command or even phpMyAdmin to clone/copy the existing database.
  • Download latest version of MediaWiki ( https://www.mediawiki.org/wiki/Download ) - (Use the ".tar.gz" file.)
  • Upload the MediaWiki ".tar.gz" file into the Gramps hosting site either using ftp or the CPanel "File Manager".
  • Use the CPanel "File Manager" to unarchive it into / - it will create a new folder such as "mediawiki-1.31.3"

From here, you can use a combination of the Cpanel "File Manager" or ssh, so long as you get it all done!

  • Rename the new folder from such as "mediawiki-1.31.3" to "wikinew"
  • Copy the "LocalSettings.php" file from "wiki" to "wikinew" folder.
  • Copy the entire "images" folder (quite large - nearly 1.9GB) from "wiki" to "wikinew" - you will be replacing an existing folder in wikinew. Again, you could do this with the filemanager or use ssh if you are comfortable with it). Even using ssh it takes quite a while, and I'm pretty sure it puts a load on the server...
  • Copy folders from the "extensions" folder in "wiki" into "wikinew". Copy only the ones that do not exist there (that is, don't overwrite folders in the extensions directory with older versions - only copy across the ones that are not already there). We use the extensions listed below that do not come with the base install as well as a few also listed from the base install that you should not copy over. You need to check and see if there are new versions of these, as sometimes the original versions will not work with the new version of MediaWiki. Installed extensions are listed on the following page: https://gramps-project.org/wiki/index.php?title=Special:Version
    • Extension that Gramps wiki uses that come with MediaWiki (do not need to be installed) but are listed in the LocalSettings.php file
      • ParserFunctions - Enhance parser with logical functions
    • Thirdparty Extensions
      • Confirm User Accounts – Gives bureaucrats the ability to confirm account requests
      • LabeledSectionTransclusion
      • Variables - Parser functions allowing to work with dynamic variables in an article scoped context
      • Google Analytics Integration
    • Mediawiki:Skins(Themes)

If there are any database schema changes, you may need to run the "update.php" file that is in the MediaWiki maintenance directory.

  • Do that by using ssh (see offline support document) and changing to the "wiki/maintenance" directory and run php update.php

There may be some warnings about deprecated functions and the option to bail out - you should be able to continue to do the schema upgrade... If it were to fail, you'll need to revert to the original files (by renaming the folders) and probably do a database restore to the unchanged version of the gramps_wiki SQL file. Just hope it doesn't happen to you!

  • Rename the original folder from "wiki" to "wikiold"
  • Rename the new folder from "wikinew" to "wiki"

Otherwise if it worked.

  • Place MediaWiki into normal mode
  • Check the upgraded MediaWiki version details and all extensions are updated:

https://gramps-project.org/wiki/index.php?title=Special:Version

  • Remove the MediaWiki ".tar.gz" file you uploaded.
  • For the "wikiold" folder add a webprotect in the .Htaccess file to stop access to the old MediaWiki version (especially important if database schema update occurred)
  • After a two weeks, remove the "wikiold" folder.


Backup the website.

Upgrade WordPress (blog)

https://gramps-project.org/blog/

WordPress is open source software used to create the blog.

Current installed version 6.4.3 (released: 2024-01-30)

The Dashboard will indicated to you if there is a newer version available for updating/upgrading.

You can expect pretty good results by just:

  • Clicking on the appropriate "Update to x.x.x" button to upgrade the main install.

After the update return to the Dashboard, Upgrades screen and

  • Upgrade any plugins (after checking the compatibility notes for each) the following plugins are used on Gramps blog:
    • Akismet Anti-Spam
    • Autoptimize
    • Manage Notification Emails (Virgial)
    • Easy HTTPS (SSL) Redirection
    • Google Captcha (reCAPTCHA) by BestWebSoft
    • PHP Compatibility Checker
    • WordPress HTTPS
    • WP-Optimize

Themes

  • Do not update the Gramps Theme named "Hello Gramps!" as it has been customised by Jason Simanek (Unless you know how)
  • Upgrade only the themes that come with WordPress

Backup the website.

Announcement of upgrade email template

  • See the source for this wiki page (embedded as a comment).

Changing to a new Hosting service

Gramps-notes.png

This article's content is incomplete or a placeholder stub.
Please update or expand this section.


General summary of steps taken on move to current host.

See also