Inform users of missing dependencies in rb-site install.

Review Request #820 — Created April 17, 2009 and submitted

Information

Review Board SVN (deprecated)
trunk
755, 756

Reviewers

Inform users of missing dependencies in rb-site install.

rb-site previously didn't check for optional or required dependencies,
meaning that a user could get far into the install and then fail at
installation time due to the memcached or database modules not being
available.

This change adds a page after the Introduction page that will list the
missing dependencies, giving users a chance to bail and install them. If
they're missing support for databases altogether, then we force them to
quit.
Went through both console and GTK+ installs and tested that missing dependencies were listed and that the corresponding entries weren't enabled in the UIs.

Simulated not having any required DB modules and verified that I wasn't allowed to continue with the install process.
david
  1. 
      
  2. Theoretically, shouldn't this should check the encoding on $LANG?
    1. Not sure what you meant here. This is in the GTK+ UI and shouldn't really change depending on $LANG, should it? That should always be a bullet character.
      
      I can modify this in another change once I understand what's needed.
    2. Aha, you're right. I was thinking this was in the text UI.
  3. 
      
EH
  1. The rb-site script is no longer working for console input.
  2. In the case where choice is a tuple of (text, enabled), this does not work below when checking if it is in the valid choice list.  I think this should be
    
    valid_choices.append(text)
  3. The variable valid_choice does not exist.  I think this is supposed to be "choice".
  4.