Test

14
USA Football Drupal Upgrade to Version 7 Dated: 04/06/2013

description

 

Transcript of Test

USA Football Drupal Upgrade to Version 7

Dated: 04/06/2013

Table of Contents

1. New in Drupal 7………………………………………………………….. 2

2. Why USA Football should upgrade …………………………………… 4

3. Where we must be careful……………………………………………… 5

4. Upgrade Process ……………………………………………………….. 6

5. Impact on USA Football ………………………………………………. 10

6. Other Efforts …………………………………………………………….10

7. List of current USAF Drupal modules and impact..............………... 10

What's New In Drupal 7? 2

1.1 Security:

• More secure implementation.

• More secure password system - Redesigned password strength validator to make it kinder

and gentler, and clearer.

• More secure log-in system.

1.2 Usability:

• Easier administration - No need to include any separate module for administration menus

• Built in editor to perform better designing of the content

• Added more drag-and-drop for administrative tasks.

• Permissions now have the ability to handle more meta-data which is help full to increase the

SEO for the website

• Added features to the default (tagging on the Article content type).

• Setting up automated task runs (cron) can now be achieved via Drupal's configuration alone,

without having to install any scripts on the web server.

• Provides most of the features of the former Content Construction Kit (CCK) module.

• Custom data fields may be attached to nodes, users, comments and taxonomy terms.

1.3 Database:

• Added query builders for INSERT, UPDATE, DELETE, MERGE, and SELECT queries.

• Support for master/slave replication, transactions, multi-insert queries, delayed inserts, and

other features.

• Default to InnoDB engine, rather than MyISAM, on MySQL when available for greater

scalability and data integrity.

• More normalized database structure to handle large amount of data.

1.4 Several Performance Improvements Implemented

• Hook API documentation now included in Drupal core.

• Added OPML import functionality for RSS feeds.

• Added feed update options.

• Added support for language-aware searches.

1.5 File handling:

• Files are now first class Drupal objects with file_load(), file_save(),

and file_validate() functions and corresponding hooks.

• Files use PHP stream wrappers to enable support for both public and private files and to

support pluggable storage mechanisms and access to remote resources (e.g. S3 storage or

Flickr photos).

3

• Added a field specifically for uploading files, previously provided by

the contributed module FileField.

2 Image handling:

• Improved image handling, including better support for add-on image

libraries.

• Added a field specifically for uploading images, previously provided by the contributed

module ImageField

Why USA Football should upgrade? 4

• In Drupal 7 the database structure is more normalized which leads to handling more data

with high performance, provided the amount of data we’re already dealing with in USAF.

• In built Caching mechanisms which manages the caching automatically.

• Main reason to upgrade is that in future if we will be upgrading the system with new software

most of the PHP methods which have been used in Drupal 6 would be deprecated. Software

getting evolved day by day so we need to upgrade our application too accordingly.

• Drupal will soon launch Drupal 8 we should be easily able to upgrade our application to that

level if we already have performed the upgrading to Drupal 7.

• It’ll help to make it workable with the new software release.

• As we’re moving towards an overall responsive site, it’ll be helpful to have the pages done

with the new Drupal version.

Where we must be careful 5

• We should create a separate instance for the upgrading, as we have huge amount of data

and we can't afford to lose a bit of it.

• We need to take care of the theme which we are creating either we need to use some auto

upgradable free theme plugins like Zen theme which provides compatible upgrade time to

time.

• A report is attached with the existing module which we are using and their stability /

deprecation status.

The Complete Upgrade Process how to Proceed 6

Note: DO NOT run the conventional instalation ( install.php ) at any time during an upgrade. It will empty

your content from the database.

1. Update Drupal core, modules and themes to the latest Drupal 6 versions. (Follow best practices

here. As usual, you should back up your site and database prior to doing this.)

2. Backup your existing site and database.

3. Log in as user ID 1 (the site maintenance user).

• This is the user name that you created during the installation process for your site.

4. Put your site in maintenance mode

• Go to the site maintenance page (Administer > Site configuration > Site maintenance).

Select "Off-line" and save the configuration.

• If you have defined a custom maintenance theme in your settings.php file, comment it out

before proceeding.

5. Change all themes to Garland

• Go to the Themes page (Administer > Site building > Themes). Enable "Garland" and select

it as the default theme.

• If you have been using a separate theme for administration, select "Garland" for your

administration theme as well. You can find the administration theme setting at (Administer >

Site configuration > Administration Theme)

6. Disable non-core modules

• Go to the Modules page (Administer > Site building > Modules). Disable all modules that are

not listed under "Core - required" or "Core - optional".

Note: It is possible that some modules cannot be disabled, because others depend on them.

Repeat this step until all non-core modules are disabled.

• If you know that you will not re-enable some modules for Drupal 7.x and you no longer need

their data, then you can uninstall them under the Uninstall tab after disabling them.

7. Remove default settings file

• On the command line or in your FTP client, remove the file sites/default/default.settings.php

8. Remove all old core files and directories

• Remove all old core files and directories, except for the 'sites' directory and any custom files

you added elsewhere.

7

• If you made modifications to files like .htaccess or robots.txt, you will need to re-apply them

from your backup, after the new files are in place.

9. Remove uninstalled modules

• If you uninstalled any modules, remove them from the sites/all/modules and other

sites/*/modules directories.

• Leave other modules in place, even though they are incompatible with Drupal 7.x.

10. Download Drupal 7

• Download the latest Drupal 7.x release to a directory outside of your web root. Extract the

archive and copy the files into your Drupal directory.

11. Re-apply modifications to core files

• Re-apply any modifications to files such as .htaccess or robots.txt.

12. Make your settings.php file writeable

• Make your settings.php file writeable, so that the update process can convert it to the format

of Drupal 7.x. settings.php is usually located in sites/default/settings.php

13. Run the update script

• Run update.php. This will update the core database tables.

• If you are unable to access update.php do the following:

Open settings.php with a text editor.

Find the line that says:

$update_free_access = FALSE;

Change it into:

$update_free_access = TRUE;

Once the upgrade is done, $update_free_access must be reverted to FALSE.

14. Backup your database

• Backup your database after the core upgrade has run.

15. Upgrade fields

• If you were using CCK (and perhaps additional modules) to create fields for your content

types, you will need to upgrade the data in those fields as a separate step.

• Download the Drupal 7 CCK module, and turn on Content Migration. Go to Structure >

Migrate Fields for a page to walk you through the migration process.

Note: There are now several types of fields in core, but not every type. You might need to

download Drupal 7 versions of contributed modules to support other types of fields

8

• Update contrib modules and themes

16. Replace and update your non-core modules and themes

17. Check the Status Report

• Go to the Status Report page (Administration > Reports > Status). Verify that everything is

working as expected.

18. Make sure setting.php is secure

• Ensure that $update_free_access is FALSE in settings.php.

• Remove write permissions.

19. Remove your site from Maintenance Mode

• Go to the Maintenance Mode page (Administration > Configuration > Development >

Maintenance).

• Disable the "Put site into maintenance mode" checkbox and save the configuration.

What will be the impact on USA Football 9

• Significantly faster application.

• Easily administrable application

• Robust support for more data.

• Can easily upgrade our hardware with new software and it will not affect the application.

• Can use much more responsive features if we want.

Other Efforts

• Theme designing and integration

• Refactoring the modules whose upgrade is not available

• Testing all the upgraded modules and matching them with our current flow

List of current USAF Drupal modules and impact on them: 10

List of available modules

# Module Name Upgrade Availablity Comment Url For More help

1 ad Dev Version

Available

2 admin_menu Stable Version

Available

3 amfphp Merged in serviec

module Integrated with service

module

4 autoadmin Merged in Core

drupal

Functionality is Merged in

Drupal 7 core, No need to

have this module

http://drupal.org/proj

ect/autoadmin

6 cck Merged in 7 Core Moset of the Functionality is

Merged in Drupal 7 core

http://drupal.org/proj

ect/cck

7 cdn Stable Version

Available

http://drupal.org/proj

ect/cdn

8 chart Dev Version

Available

9 computed_field Beta Version

Available

10 content_access Beta Version

Available

11 context Beta Version

Available

12 ctools Stable Version

Available

13 custompage Alpha Version

Available

15 devel Stable Version

Available

16 devel_themer Dev Version

Available

17 disqus Stable Version

Available

18 elements Stable Version

Available

19 filefield Merged in 7 Core

Functionality is Merged in

Drupal 7 core with cck

module Can be removed

http://drupal.org/proj

ect/filefield

21 google_analytics Stable Version

Available

22 imagecache_actio

ns

Stable Version

Available

23 imagefield Merged in 7 Core Functionality is Merged in

Drupal 7 core

http://drupal.org/proj

ect/imagefield

24 imagefield_crop

Stable Version

Available

25 imce Stable Version

Available

26 imce_wysiwyg Stable Version

Available

29 masquerade Alpha Version

Available

30 matrix Dev Version

Available

31 memcache Stable Version

Available

32 menu_attributes Alpha Version

Available

33 menu_html Dev Version

Available

34 menu_per_role Dev Version

Available

36 menu_token Alpha version

available

35 messaging Alpha version

available

36 nodeaccess Stable Version

Available

37 nodewords New Module

introduced

Use the new Meta-tag

module which is a ground-up

rewrite of Nodewords with

an upgrade path being

worked on.

39 page_title Stable Version

Available

40 rules Stable Version

Available

41 schema Alpha Version

Available

42 services Stable Version

Available

43 simplenews Stable Version

Available

45 smart_ip Stable Version

Available

46 smsframework Dev Version

Available

47 sms_twilio Dev Version

Available

48 taxonomy_image Dev Version

Available

49 teamusa_forms Custome Module

listed Under contrib

This is custopm module listed

in the contrib site

50 token_custom

Beta And Stable

Version Available

51 token_filter Stable Version

Available

52 transliteration Stable Version

Available

53 twitter Stable Version

Available

54 varnish Beta Version

Available

55 views Stable Version

Available

56 views_customfield New Module

introduced Views php.

http://drupal.org/proj

ect/views_customfield

57 views_datasource Dev Version

Available

58 vntf Beta Version

Available

59 webform_mysql_v

iews

Stable Version

Available

60 webform_rules Stable Version

Available

61 wysiwyg Stable Version

Available

62 menu_token Dev Version

Available

63 node_export Stable Version

Available

64 calendar_events Stable Version

Available

65 cas Stable Version

Available

66 galleria Beta Version

Available

67 jcarousel Stable Version

Available

68 mimemail Alpha Version

Available

69 quicktabs Stable Version

Available

70 shadowbox Stable Version

Available

Note: All above modules we are using into USAF Drupal site. We can upgrade these modules as per the

compatibility for the respective Drupal version

List of deprecated/unavailable modules

Module Name Upgrade

Availablity Comment Url For More help

1 cacherouter Not Available Alternatively We can use

Drupal Caching

http://drupal.org/project/cach

erouter

2 dashplayer Not Available

3 flashvideo Not Available

4 logincookie Not Available

5 jquery_popupwi

ndow Depricated

As the newer version of

Jquery have been

introduced in Drupal 7 Need

to replace with the new

other module

6 ownterm Not Available

7 slider Not Available No information for upgrade

to 7

Note : All these modules are deprecated or unavailable with latest version of drupal (i.e. drupal 7)

While upgrading we will take care to check the use of these modules in our site

and as per that we can search for alternative module if we find.

Or we can do the customization for compatibility with Drupal 7 and will move these modules from

contribe to custome

List of modules requiring customization

# Module Comments

1 articles_import Need To make Compatible to Drupal 7

2 authenticated_landing Need To make Compatible to Drupal 7

3 clinic Need To make Compatible to Drupal 7

4 css_munge Need To make Compatible to Drupal 7

5 features Need To make Compatible to Drupal 7

6 feed_eater Need To make Compatible to Drupal 7

7 quicktabsmain Need To make Compatible to Drupal 7

8 quicktabspromo Need To make Compatible to Drupal 7

9 teamusa Need To make Compatible to Drupal 7

10 usafmenu Need To make Compatible to Drupal 7

11 usafootball_theme Need To make Compatible to Drupal 7

12 usafootball_video Need To make Compatible to Drupal 7

13 uuid Need To make Compatible to Drupal 7

Theme Customization

1 USA Football Theme Need to make compatibility customization for Drupal 7