From a20055928c25b42b9ece85949f99f7c9e93306f4 Mon Sep 17 00:00:00 2001 From: "mkanat%bugzilla.org" <> Date: Sat, 29 Jul 2006 01:00:52 +0000 Subject: Bug 346212: Create POD for checksetup.pl, and move --help message into Pod::Usage output Patch By Max Kanat-Alexander (module owner) a=myk --- checksetup.pl | 288 +++++++++++++++++++++++++++++++++++----------------------- 1 file changed, 172 insertions(+), 116 deletions(-) (limited to 'checksetup.pl') diff --git a/checksetup.pl b/checksetup.pl index a7f459bb1..44451bbf8 100755 --- a/checksetup.pl +++ b/checksetup.pl @@ -35,94 +35,176 @@ # Lance Larsh # A. Karl Kornel # Marc Schumann -# -# -# -# Hey, what's this? -# -# 'checksetup.pl' is a script that is supposed to run during installation -# time and also after every upgrade. -# -# The goal of this script is to make the installation even easier. -# It does this by doing things for you as well as testing for problems -# in advance. -# -# You can run the script whenever you like. You SHOULD run it after -# you update Bugzilla, because it may then update your SQL table -# definitions to resync them with the code. -# -# Currently, this module does the following: -# -# - check for required perl modules -# - set defaults for local configuration variables -# - create and populate the data directory after installation -# - set the proper rights for the *.cgi, *.html, etc. files -# - verify that the code can access the database server -# - creates the database 'bugs' if it does not exist -# - creates the tables inside the database if they don't exist -# - automatically changes the table definitions if they are from -# an older version of Bugzilla -# - populates the groups -# - put the first user into all groups so that the system can -# be administrated -# - changes preexisting SQL tables if you change your local -# settings, e.g. when you add a new platform -# - ... and a whole lot more. -# -# There should be no need for Bugzilla Administrators to modify -# this script; all user-configurable stuff has been moved -# into a local configuration file called 'localconfig'. When that file -# in changed and 'checkconfig.pl' is run, then the user's changes -# will be reflected back into the database. -# -# Developers, however, have to modify this file at various places. To -# make this easier, there are some special tags for which one -# can search. -# -# To Search for -# -# add/delete local configuration variables --LOCAL-- -# check for more required modules --MODULES-- -# add more database-related checks --DATABASE-- -# change the defaults for local configuration vars --DATA-- -# update the assigned file permissions --CHMOD-- -# change table definitions --TABLE-- -# add more groups --GROUPS-- -# add user-adjustable settings --SETTINGS-- -# create initial administrator account --ADMIN-- -# -# Note: sometimes those special comments occur more than once. For -# example, --LOCAL-- is used at least 3 times in this code! --TABLE-- -# is also used more than once, so search for each and every occurrence! -# -# To operate checksetup non-interactively, run it with a single argument -# specifying a filename that contains the information usually obtained by -# prompting the user or by editing localconfig. -# -# The format of that file is as follows: -# -# -# $answer{'db_host'} = q[ -# $db_host = 'localhost'; -# $db_driver = 'mydbdriver'; -# $db_port = 3306; -# $db_name = 'mydbname'; -# $db_user = 'mydbuser'; -# ]; -# -# $answer{'db_pass'} = q[$db_pass = 'mydbpass';]; -# -# $answer{'ADMIN_OK'} = 'Y'; -# $answer{'ADMIN_EMAIL'} = 'myadmin@mydomain.net'; -# $answer{'ADMIN_PASSWORD'} = 'fooey'; -# $answer{'ADMIN_REALNAME'} = 'Joel Peshkin'; -# -# $answer{'SMTP_SERVER'} = 'mail.mydomain.net'; -# -# -# Note: Only information that supersedes defaults from LocalVar() -# function calls needs to be specified in this file. -# + +=head1 NAME + +checksetup.pl - A do-it-all upgrade and installation script for Bugzilla. + +=head1 SYNOPSIS + + ./checksetup.pl [--help|--check-modules] + ./checksetup.pl [SCRIPT [--verbose]] [--no-templates|-t] + +=head1 OPTIONS + +=over + +=item F