Skip to content

Upgrading your site to version 4.0 from 3.2

Tyler Rubach edited this page Feb 8, 2024 · 6 revisions

Before updating your site

  • Make sure you have a backup of your site database and files. If possible, test this upgrade out on a non-production/dev site first.
  • Make sure you're on version 3.2 of the ILFW. If you're not on the latest release, it's recommended you update your site one minor version at a time (e.g. 3.0 -> 3.1 -> 3.2) using the upgrade instructions.
  • Check that you're running PHP 8 under the Drupal status page at /admin/reports/status. The process below was tested using PHP 8.2

Steps to upgrade your site to version 4.0

  1. Log in to your site using the local admin account. If you don't know your admin account's password, you can use drush upwd admin <password> to change it. You need to be logged into the local admin account to be able to run the ./update.php script later.

  2. (If your site uses Shibboleth login) There's currently a bug in the simplesaml/saml2 package, and it needs to be set to version 4.6.10 for Shib authentication to work. If you have Shibboleth authentication enabled on your site, run the command below to set your version.

     composer require simplesamlphp/saml2:4.6.10
    
  3. Check if the devel or kint modules are installed on your site. If they are, uninstall them.

  4. Uninstall the modules RDF, Quickedit, and TB Megamenu:

     ./vendor/bin/drush pmu rdf quickedit tb_megamenu
    
  5. (If you have Shibboleth authentication enabled on your site) Copy the your configuration settings for the SimpleSAMLPHP_Auth module at /admin/config/people/simplesamlphp_auth somewhere safe. Next, uninstall the simplesamlphp_auth and externalauth modules:

     ./vendor/bin/drush pmu simplesamlphp_auth externalauth
    
  6. Uninstall the bootstrap4 theme. If you get an "unknown theme" error, that's OK.

     ./vendor/bin/drush thun bootstrap4
    
  7. Update the devel module to version 5.0:

     composer require --dev drupal/devel:^5.0
    
  8. Remove the kint module

     composer remove --dev kint-php/kint
    
  9. (If your site uses Shibboleth login) Remove the old SimpleSAMLPHP modules:

    composer remove drupal/simplesamlphp_auth
    composer config --unset repositories.simplesamlphp
    
  10. Change the default directory permissions to writeable.

    chmod 755 ~/illinois_framework/docroot/sites/default
    
  11. Upgrade your site to version 4.0 of the framework by running the below composer command in the ~/illinois_framework directory:

    COMPOSER_MEMORY_LIMIT=-1 composer require web-illinois/illinois_framework_profile:^4.0 -o -W
    
  12. (If your site uses Shibboleth login) Re-install the simplesamlphp_auth module

    composer require 'drupal/simplesamlphp_auth:^4.0' -W
    composer config repositories.simplesamlphp '{"type": "path", "url": "/var/simplesamlphp-2.1.0"}'
    composer update -W
    
  13. Run Drupal database updates for your site site by going to <yourSiteURL>/update.php in your browser. Continue through the prompts and you should see roughly 56 pending updates to apply. NOTE: Trying to run Drupal's database update by running drush updb will likely throw an error about certain themes not being installed.

  14. Run the distribution update config sync command:

    ./vendor/bin/drush config-distro-update -y
    
  15. If needed, enable the SimpleSAMLPHP module and configure it using the same settings you noted from before

Congratulations, you should now be upgraded to 4.0!