5.7.44. Bugzilla::Install::Requirements

5.7.44.1. NAME

Bugzilla::Install::Requirements - Functions and variables dealing
with Bugzilla’s perl-module requirements.

5.7.44.2. DESCRIPTION

This module is used primarily by checksetup.pl to determine whether or not all of Bugzilla’s prerequisites are installed. (That is, all the perl modules it requires.)

5.7.44.3. CONSTANTS

  • REQUIRED_MODULES

An arrayref of hashrefs that describes the perl modules required by Bugzilla. The hashes have three keys:

  • package - The name of the Perl package that you’d find on CPAN for this requirement.
  • module - The name of a module that can be passed to the install command in CPAN.pm to install this module.
  • version - The version of this module that we require, or 0 if any version is acceptable.
  • OPTIONAL_MODULES
An arrayref of hashrefs that describes the perl modules that add additional features to Bugzilla if installed. Its hashes have all the fields of REQUIRED_MODULES, plus a feature item–an arrayref of strings that describe what features require this module.
  • FEATURE_FILES
A hashref that describes what files should only be compiled if a certain feature is enabled. The feature is the key, and the values are arrayrefs of file names (which are passed to glob, so shell patterns work).

5.7.44.4. SUBROUTINES

  • check_requirements
  • Description
This checks what optional or required perl modules are installed, like checksetup.pl does.
  • Params
  • $output - true if you want the function to print out information about what it’s doing, and the versions of everything installed.
  • Returns

A hashref containing these values:

  • pass - Whether or not we have all the mandatory requirements.
  • missing - An arrayref containing any required modules that are not installed or that are not up-to-date. Each item in the array is

a hashref in the format of items from REQUIRED_MODULES.

  • optional - The same as missing, but for optional modules.
  • apache - The name of each optional Apache module that is missing.
  • have_one_dbd - True if at least one DBD:: module is installed.
  • any_missing - True if there are any missing Perl modules, even optional modules.
  • check_graphviz($output)
Description: Checks if the graphviz binary specified in the
webdotbase parameter is a valid binary, or a valid URL.
Params: $output - $true if you want the function to
print out information about what it’s doing.

Returns: 1 if the check was successful, 0 otherwise.

  • have_vers($module, $output)
Description: Tells you whether or not you have the appropriate
             version of the module requested. It also prints
             out a message to the user explaining the check
             and the result.

Params:      C<$module> - A hashref, in the format of an item from
                          L</REQUIRED_MODULES>.
             C<$output> - Set to true if you want this function to
                          print information to STDOUT about what it's
                          doing.

Returns:   C<1> if you have the module installed and you have the
           appropriate version. C<0> otherwise.
  • install_command($module)
Description: Prints out the appropriate command to install the
             module specified, depending on whether you're
             on Windows or Linux.

Params:      C<$module> - A hashref, in the format of an item from
                          L</REQUIRED_MODULES>.

Returns:     nothing
  • map_files_to_features
Returns a hashref where file names are the keys and the value is the feature that must be enabled in order to compile that file.

5.7.44.5. Methods in need of POD

  • print_module_instructions

This documentation undoubtedly has bugs; if you find some, please file them here.