Description:The goal of this project is to build a secure remote update system for Drupal. This is similar to Red Hat's update system, or FireFox's plugin update system.

The project would require several parts:

  • Extension of the Drupal module, in each Drupal site, to connect to the Drupal.org server. This would extend existing work for the Drupal module which has two way communication with Drupal's project module on Drupal.org.
  • Versioning and meta-data for for Drupal modules and core. Drupal modules would need to self identify their versions with an scheme to confirm what the existing version of modules were, as well as confirm the uploaded module was the intended module. See: http://drupal.org/node/48582 , http://drupal.org/node/48580
  • Secure and tested code repository with meta branches. We would need to offer granularity in the Code repository beyond the existing branches, such as stable, signed, on top the existing Drupal branch versions.
  • Server side versioning would necessary to roll back updates that failed.
  • Module evaluation and feedback would allow the community to rate updated modules and file issues for particular versions.

Motivation:The student would learn important skills related to security, authentication, and tackle one of the most difficult user experience issues for Drupal administrators, upgrading their site.

Success criteria:Drupal administrators keep their sites up to date, and reduce total time administering their sites.