diff options
author | Frédéric Buclin <LpSolit@netscape.net> | 2024-11-14 01:00:42 +0100 |
---|---|---|
committer | Frédéric Buclin <LpSolit@netscape.net> | 2024-11-14 01:00:42 +0100 |
commit | 1737588547c8ff5e63aaeac3e7964934bffa17ef (patch) | |
tree | ddba14b1458f46489950aaf1c73b5c6df50c273a /docs | |
parent | b61f723cb60284ec6a5f1349d13bcedb821d6f3c (diff) | |
parent | 152ebcebd590ed3a60d8c100453e01a0fe175a51 (diff) | |
download | bugs-master.tar bugs-master.tar.gz bugs-master.tar.bz2 bugs-master.tar.xz bugs-master.zip |
Diffstat (limited to 'docs')
-rw-r--r-- | docs/en/rst/about/index.rst | 18 | ||||
-rw-r--r-- | docs/en/rst/conf.py | 15 | ||||
-rw-r--r-- | docs/en/rst/installing/essential-post-install-config.rst | 2 | ||||
-rw-r--r-- | docs/en/rst/installing/linux.rst | 151 | ||||
-rw-r--r-- | docs/en/rst/installing/mysql.rst | 18 | ||||
-rw-r--r-- | docs/en/rst/installing/quick-start.rst | 145 | ||||
-rw-r--r-- | docs/en/rst/using/creating-an-account.rst | 4 | ||||
-rw-r--r-- | docs/en/rst/using/filing.rst | 7 | ||||
-rw-r--r-- | docs/en/rst/using/finding.rst | 3 | ||||
-rwxr-xr-x | docs/makedocs.pl | 10 |
10 files changed, 228 insertions, 145 deletions
diff --git a/docs/en/rst/about/index.rst b/docs/en/rst/about/index.rst index 239c6ecea..76c8d5276 100644 --- a/docs/en/rst/about/index.rst +++ b/docs/en/rst/about/index.rst @@ -10,18 +10,16 @@ that tracks millions of bugs and issues for thousands of organizations around the world. The most current version of this document can always be found on the -`Bugzilla website <http://www.bugzilla.org/docs/>`_. +`Bugzilla website <https://www.bugzilla.org/docs/>`_. .. _evaluating: Evaluating Bugzilla ################### -If you want to try out Bugzilla to see if it meets your needs, you can do so -on `Landfill <https://landfill.bugzilla.org/bugzilla-4.4-branch/>`_, our test -server. The `Bugzilla FAQ <https://wiki.mozilla.org/Bugzilla:FAQ>`_ may also -be helpful, as it answers a number of questions people sometimes have about -whether Bugzilla is for them. +The `Bugzilla FAQ <https://wiki.mozilla.org/Bugzilla:FAQ>`_ may be helpful, +as it answers a number of questions people sometimes have about whether +Bugzilla is for them. .. _getting-help: @@ -36,7 +34,7 @@ Google Group. Please first, and then ask your question there. If you need a guaranteed response, commercial support is -`available <http://www.bugzilla.org/support/consulting.html>`_ for Bugzilla +`available <https://www.bugzilla.org/support/consulting.html>`_ for Bugzilla from a number of people and organizations. .. _conventions: @@ -81,13 +79,13 @@ new text and markup. License ####### -Bugzilla is `free <http://www.gnu.org/philosophy/free-sw.html>`_ and -`open source <http://opensource.org/osd>`_ software, which means (among other +Bugzilla is `free <https://www.gnu.org/philosophy/free-sw.html>`_ and +`open source <https://opensource.org/osd>`_ software, which means (among other things) that you can download it, install it, and run it for any purpose whatsoever without the need for license or payment. Isn't that refreshing? Bugzilla's code is made available under the -`Mozilla Public License 2.0 <http://www.mozilla.org/MPL/2.0/>`_ (MPL), +`Mozilla Public License 2.0 <https://www.mozilla.org/MPL/2.0/>`_ (MPL), specifically the variant which is Incompatible with Secondary Licenses. However, again, if you only want to install and run Bugzilla, you don't need to worry about that; it's only relevant if you redistribute the code or any diff --git a/docs/en/rst/conf.py b/docs/en/rst/conf.py index 34acb4778..db493e999 100644 --- a/docs/en/rst/conf.py +++ b/docs/en/rst/conf.py @@ -383,13 +383,10 @@ pdf_fit_background_mode = 'scale' # Temporary highlighting of TODO items todo_include_todos = False -# The readthedocs.org website cannot access POD. -on_rtd = os.environ.get('READTHEDOCS', None) == 'True' +# Originally, the readthedocs.org website could not access POD, +# so we would conditionally override that here if we were building +# on RTD, but that's no longer the case. +base_api_url = '../integrating/api/' -if on_rtd: - base_api_url = 'https://www.bugzilla.org/docs/5.0/en/html/integrating/api/' -else: - base_api_url = '../integrating/api/' - -extlinks = {'bug': ('https://bugzilla.mozilla.org/show_bug.cgi?id=%s', 'bug '), - 'api': (base_api_url + '%s', '')} +extlinks = {'bug': ('https://bugzilla.mozilla.org/show_bug.cgi?id=%s', 'bug %s'), + 'api': (base_api_url + '%s', '%s')} diff --git a/docs/en/rst/installing/essential-post-install-config.rst b/docs/en/rst/installing/essential-post-install-config.rst index 1b9fd6b94..51ff58719 100644 --- a/docs/en/rst/installing/essential-post-install-config.rst +++ b/docs/en/rst/installing/essential-post-install-config.rst @@ -94,7 +94,7 @@ This section corresponds to choosing a :param:`mail_delivery_method` of :paramval:`Sendmail`. Unless you know what you are doing, and can deal with the possible problems -of spam, bounces and blacklists, it is probably unwise to set up your own +of spam, bounces and blocklists, it is probably unwise to set up your own mail server just for Bugzilla. However, if you wish to do so, some guidance follows. diff --git a/docs/en/rst/installing/linux.rst b/docs/en/rst/installing/linux.rst index e2e05c310..65e9f1110 100644 --- a/docs/en/rst/installing/linux.rst +++ b/docs/en/rst/installing/linux.rst @@ -18,7 +18,7 @@ Install Packages ================ Use your distribution's package manager to install Perl, your preferred -database engine (MySQL if in doubt), and a webserver (Apache if in doubt). +database engine (MySQL or MariaDB if in doubt), and a webserver (Apache if in doubt). Some distributions even have a Bugzilla package, although that will vary in age. @@ -28,64 +28,102 @@ is not found, just remove it from the list and reissue the command. If you want to use a different database or webserver, substitute the package names as appropriate. -Fedora and Red Hat ------------------- +Fedora, CentOS Stream and RHEL +------------------------------ -The following command will install Red Hat's packaged version of Bugzilla: +The following command will install Fedora's packaged version of Bugzilla: -:command:`yum install bugzilla httpd mysql-server` +:command:`dnf install bugzilla httpd mariadb-server` Then, you can skip to :ref:`configuring your database <linux-config-database>`. It may be useful to know that Fedora stores the Bugzilla files in :file:`/usr/share/bugzilla`, so that's where you'll run :file:`checksetup.pl`. -If you want to install a version of Bugzilla from the Bugzilla project, you -will instead need: - -:command:`yum install httpd mysql-server mod_perl mod_perl-devel httpd-devel -gd-devel mysql-devel -graphviz patchutils gcc 'perl(Apache2::SizeLimit)' 'perl(Authen::Radius)' -'perl(Authen::SASL)' 'perl(Cache::Memcached)' 'perl(CGI)' 'perl(Chart::Lines)' -'perl(Daemon::Generic)' 'perl(Date::Format)' 'perl(DateTime)' -'perl(DateTime::TimeZone)' 'perl(DBI)' 'perl(Digest::SHA)' 'perl(Email::MIME)' -'perl(Email::Reply)' 'perl(Email::Sender)' 'perl(Encode)' 'perl(Encode::Detect)' -'perl(File::MimeInfo::Magic)' 'perl(GD)' 'perl(GD::Graph)' -'perl(GD::Text)' 'perl(HTML::FormatText::WithLinks)' 'perl(HTML::Parser)' -'perl(HTML::Scrubber)' 'perl(IO::Scalar)' 'perl(JSON::RPC)' 'perl(JSON::XS)' -'perl(List::MoreUtils)' 'perl(LWP::UserAgent)' 'perl(Math::Random::ISAAC)' -'perl(MIME::Parser)' 'perl(mod_perl2)' 'perl(Net::LDAP)' 'perl(Net::SMTP::SSL)' -'perl(PatchReader)' 'perl(SOAP::Lite)' 'perl(Template)' -'perl(Template::Plugin::GD::Image)' 'perl(Test::Taint)' 'perl(TheSchwartz)' -'perl(URI)' 'perl(XMLRPC::Lite)' 'perl(XML::Twig)'` - -If you are running RHEL6, you will have to enable the "RHEL Server Optional" -channel in RHN to get some of those packages. - -If you plan to use a database other than MySQL, you will need to also install +If you want to install a version of Bugzilla from the Bugzilla project +or have it on RHEL or CentOS, you will need to do the following instead: + +On CentOS Stream and RHEl, add the Fedora EPEL repo, in the way described +in the `installation instructions <https://docs.fedoraproject.org/en-US/epel/>`_. + +Run the following to install the base Bugzilla dependencies: + +:command:`dnf install git httpd httpd-devel mariadb-devel gcc +mariadb-server mod_perl mod_perl-devel 'perl(autodie)' 'perl(CGI)' +'perl(Date::Format)' 'perl(DateTime)' 'perl(DateTime::TimeZone)' +'perl(DBI)' 'perl(DBD::mysql)' 'perl(Digest::SHA)' 'perl(Email::MIME)' +'perl(Email::Sender)' 'perl(fields)' 'perl(JSON::XS)' +'perl(List::MoreUtils)' 'perl(Math::Random::ISAAC)' 'perl(Memoize)' +'perl(Safe)' 'perl(Template)' 'perl(URI)'` + +On Fedora, all the optional dependencies are available: + +:command:`dnf install gd-devel graphviz patchutils +'perl(Apache2::SizeLimit)' 'perl(Authen::Radius)' 'perl(Authen::SASL)' +'perl(Cache::Memcached)' 'perl(Chart::Lines)' 'perl(Daemon::Generic)' +'perl(Email::Reply)' 'perl(Encode)' 'perl(Encode::Detect)' +'perl(File::Copy::Recursive)' 'perl(File::MimeInfo::Magic)' +'perl(File::Which)' 'perl(GD)' 'perl(GD::Graph)' 'perl(GD::Text)' 'perl(HTML::FormatText::WithLinks)' 'perl(HTML::Parser)' +'perl(HTML::Scrubber)' 'perl(IO::Scalar)' 'perl(JSON::RPC)' +'perl(LWP::UserAgent)' 'perl(MIME::Parser)' 'perl(mod_perl2)' +'perl(Net::LDAP)' 'perl(Net::SMTP::SSL)' 'perl(PatchReader)' +'perl(SOAP::Lite)' 'perl(Template::Plugin::GD::Image)' +'perl(Test::Taint)' 'perl(TheSchwartz)' 'perl(XMLRPC::Lite)' +'perl(XML::Twig)'` + +On CentOS Stream and RHEL with EPEL, some modules are missing in the +repositories, so use the following instead: + +:command:`dnf install gd-devel graphviz patchutils +'perl(Apache2::SizeLimit)' 'perl(Authen::Radius)' 'perl(Authen::SASL)' +'perl(Cache::Memcached)' 'perl(Encode)' 'perl(Encode::Detect)' +'perl(File::Copy::Recursive)' 'perl(File::MimeInfo::Magic)' +'perl(File::Which)' 'perl(GD)' 'perl(GD::Graph)' 'perl(GD::Text)' +'perl(HTML::Parser)' 'perl(HTML::Scrubber)' 'perl(IO::Scalar)' +'perl(JSON::RPC)' 'perl(LWP::UserAgent)' 'perl(MIME::Parser)' +'perl(mod_perl2)' 'perl(Net::LDAP)' 'perl(Net::SMTP::SSL)' +'perl(SOAP::Lite)' 'perl(Test::Taint)' 'perl(XMLRPC::Lite)' +'perl(XML::Twig)'` + +and install the missing optional modules with: + +:command:`cd /var/www/html/bugzilla/ && ./install-module.pl Chart::Lines +Daemon::Generic Email::Reply HTML::FormatText::WithLinks PatchReader +Template::Plugin::GD::Image TheSchwartz` + +If you plan to use a database other than MariaDB, you will need to also install the appropriate packages for that. Ubuntu and Debian ----------------- -:command:`apt-get install git nano` - -:command:`apt-get install apache2 mysql-server libappconfig-perl -libdate-calc-perl libtemplate-perl libmime-perl build-essential -libdatetime-timezone-perl libdatetime-perl libemail-sender-perl -libemail-mime-perl libemail-mime-modifier-perl libdbi-perl libdbd-mysql-perl -libcgi-pm-perl libmath-random-isaac-perl libmath-random-isaac-xs-perl -apache2-mpm-prefork libapache2-mod-perl2 libapache2-mod-perl2-dev -libchart-perl libxml-perl libxml-twig-perl perlmagick libgd-graph-perl -libtemplate-plugin-gd-perl libsoap-lite-perl libhtml-scrubber-perl -libjson-rpc-perl libdaemon-generic-perl libtheschwartz-perl -libtest-taint-perl libauthen-radius-perl libfile-slurp-perl -libencode-detect-perl libmodule-build-perl libnet-ldap-perl -libauthen-sasl-perl libtemplate-perl-doc libfile-mimeinfo-perl -libhtml-formattext-withlinks-perl libgd-dev libmysqlclient-dev lynx-cur -graphviz python-sphinx` - -If you plan to use a database other than MySQL, you will need to also install -the appropriate packages for that. +You can install required packages with: +:command:`apt install apache2 build-essential git +libcgi-pm-perl libdatetime-perl libdatetime-timezone-perl +libdbi-perl libdigest-sha-perl libemail-address-perl +libemail-mime-perl libemail-sender-perl libjson-xs-perl +liblist-moreutils-perl libmath-random-isaac-perl libtemplate-perl +libtimedate-perl liburi-perl libmariadb-dev-compat libdbd-mysql-perl +mariadb-server` + +If you plan to use a database other than MariaDB, you will need to also install +the appropriate packages for that (in the command above, the packages required +for MariaDB are ``libdbd-mysql-perl``, ``libmariadb-dev-compat`` and ``mariadb-server``). + +You can install optional packages with: +:command:`apt install graphviz libapache2-mod-perl2 +libapache2-mod-perl2-dev libauthen-radius-perl libauthen-sasl-perl +libcache-memcached-perl libchart-perl libdaemon-generic-perl +libemail-reply-perl libencode-detect-perl libencode-perl +libfile-copy-recursive-perl libfile-mimeinfo-perl libfile-which-perl +libgd-dev libgd-graph-perl libgd-perl libgd-text-perl +libhtml-formattext-withlinks-perl libhtml-parser-perl +libhtml-scrubber-perl libio-stringy-perl libjson-rpc-perl +libmime-tools-perl libnet-ldap-perl libnet-smtp-ssl-perl +libsoap-lite-perl libtemplate-plugin-gd-perl libtest-taint-perl +libtheschwartz-perl libwww-perl libxmlrpc-lite-perl libxml-twig-perl` + +There is no Ubuntu package for ``PatchReader`` and so you will have to install that module +outside the package manager if you want it. Gentoo ------ @@ -98,6 +136,16 @@ USE flag enabled, Bugzilla will end up in :file:`/var/www/localhost/bugzilla`. Then, you can skip to :ref:`configuring your database <linux-config-database>`. +openSUSE +-------- + +:command:`zypper in bugzilla` + +has been available in the openSUSE Leap repositories since 15.2 and is +in the openSUSE Tumbleweed repositories, also comes with an optional +``bugzilla-apache`` package, that allows you to skip to +:ref:`configuring your database <linux-config-database>` + .. _linux-install-perl: Perl @@ -185,10 +233,11 @@ We have specific configuration instructions for the following: Database Engine =============== -Bugzilla supports MySQL, PostgreSQL, Oracle and SQLite as database servers. -You only require one of these systems to make use of Bugzilla. MySQL is -most commonly used. SQLite is good for trial installations as it requires no -setup. Configure your server according to the instructions below: +Bugzilla supports MySQL (or MariaDB, its compatible counterpart), PostgreSQL, +Oracle and SQLite as database servers. You only require one of these systems +to make use of Bugzilla. MySQL or MariaDB are most commonly used. SQLite is +good for trial installations as it requires no setup. Configure your server +according to the instructions below: * :ref:`mysql` * :ref:`postgresql` diff --git a/docs/en/rst/installing/mysql.rst b/docs/en/rst/installing/mysql.rst index 1107547a6..66f44de20 100644 --- a/docs/en/rst/installing/mysql.rst +++ b/docs/en/rst/installing/mysql.rst @@ -3,7 +3,13 @@ MySQL ##### -You need MySQL version 5.0.15 or higher. +It is strongly advised to use MariaDB which is a drop-in replacement for +MySQL and is fully compatible with Bugzilla. If MySQL must be used, be +aware that the minimum required version is MySQL 5.0.15 and that MySQL 8 +or higher cannot be used at this time. + +All commands in this document work regardless of whether MySQL or +MariaDB are used. It's possible to test which version of MySQL you have installed with: @@ -15,12 +21,12 @@ Installing Windows ------- -Download the MySQL 32-bit or 64-bit MSI installer from the -`MySQL website <http://www.mysql.com/downloads/mysql/>`_ (~28 MB). +Download the MariaDB 32-bit or 64-bit MSI installer from the +`MariaDB website <https://mariadb.org/download/?t=mariadb&os=windows>`_ (~66 MB). -MySQL has a standard Windows installer. It's ok to select a Typical MySQL -install (the default). The rest of this documentation assumes assume you -have installed MySQL into :file:`C:\\mysql`. Adjust paths appropriately if not. +MariaDB has a standard Windows installer. It's ok to select a the +default install options. The rest of this documentation assumes assume you +have installed MariaDB into :file:`C:\\mysql`. Adjust paths appropriately if not. Linux/Mac OS X -------------- diff --git a/docs/en/rst/installing/quick-start.rst b/docs/en/rst/installing/quick-start.rst index 7ea5ed58a..eda291458 100644 --- a/docs/en/rst/installing/quick-start.rst +++ b/docs/en/rst/installing/quick-start.rst @@ -1,40 +1,35 @@ .. _quick-start: -Quick Start (Ubuntu Linux 14.04) +Quick Start (Ubuntu Linux 22.04) ################################ This quick start guide makes installing Bugzilla as simple as possible for those who are able to choose their environment. It creates a system using -Ubuntu Linux 14.04 LTS, Apache and MySQL. It requires a little familiarity +Ubuntu Linux 22.04 LTS, Apache and MariaDB. It requires a little familiarity with Linux and the command line. Obtain Your Hardware ==================== -Ubuntu 14.04 LTS Server requires a 64-bit processor. +Ubuntu 22.04 LTS Server requires a 64-bit processor. Bugzilla itself has no prerequisites beyond that, although you should pick reliable hardware. You can also probably use any 64-bit virtual machine -or cloud instance that you have root access on. +or cloud instance that you have root access on. Install the OS ============== -Get `Ubuntu Server 14.04 LTS <http://www.ubuntu.com/download/server>`_ -and follow the `installation instructions <http://www.ubuntu.com/download/server/install-ubuntu-server>`_. +Get `Ubuntu Server 22.04 LTS <https://www.ubuntu.com/download/server>`_ +and follow the `installation instructions <https://www.ubuntu.com/download/server/install-ubuntu-server>`_. Here are some tips: -* Choose any server name you like. -* When creating the initial Linux user, call it ``bugzilla``, give it a - strong password, and write that password down. -* You do not need an encrypted home directory. +* You do not need an encrypted lvm group, root or home directory. * Choose all the defaults for the "partitioning" part (excepting of course where the default is "No" and you need to press "Yes" to continue). -* Choose "install security updates automatically" unless you want to do - them manually. -* From the install options, choose "OpenSSH Server" and "LAMP Server". -* Set the password for the MySQL root user to a strong password, and write - that password down. -* Install the Grub boot loader to the Master Boot Record. +* Choose any server name you like. +* When creating the initial Linux user, call it ``bugzilla``, give it a + strong password, and write that password down. +* From the install options, choose "OpenSSH Server". Reboot when the installer finishes. @@ -44,59 +39,61 @@ Become root ssh to the machine as the 'bugzilla' user, or start a console. Then: :command:`sudo su` - + Install Prerequisites ===================== -:command:`apt-get install git nano` - -:command:`apt-get install apache2 mysql-server libappconfig-perl libdate-calc-perl libtemplate-perl libmime-perl build-essential libdatetime-timezone-perl libdatetime-perl libemail-sender-perl libemail-mime-perl libemail-mime-modifier-perl libdbi-perl libdbd-mysql-perl libcgi-pm-perl libmath-random-isaac-perl libmath-random-isaac-xs-perl apache2-mpm-prefork libapache2-mod-perl2 libapache2-mod-perl2-dev libchart-perl libxml-perl libxml-twig-perl perlmagick libgd-graph-perl libtemplate-plugin-gd-perl libsoap-lite-perl libhtml-scrubber-perl libjson-rpc-perl libdaemon-generic-perl libtheschwartz-perl libtest-taint-perl libauthen-radius-perl libfile-slurp-perl libencode-detect-perl libmodule-build-perl libnet-ldap-perl libauthen-sasl-perl libtemplate-perl-doc libfile-mimeinfo-perl libhtml-formattext-withlinks-perl libgd-dev libmysqlclient-dev lynx-cur graphviz python-sphinx` +:command:`apt install git nano` + +:command:`apt install apache2 build-essential mariadb-server +libcgi-pm-perl libdigest-sha-perl libtimedate-perl libdatetime-perl +libdatetime-timezone-perl libdbi-perl libtemplate-perl +libemail-address-perl libemail-sender-perl libemail-mime-perl +liburi-perl liblist-moreutils-perl libmath-random-isaac-perl +libjson-xs-perl libgd-perl libchart-perl libtemplate-plugin-gd-perl +libgd-text-perl libgd-graph-perl libmime-tools-perl libwww-perl +libxml-twig-perl libnet-ldap-perl libauthen-sasl-perl +libnet-smtp-ssl-perl libauthen-radius-perl libsoap-lite-perl +libxmlrpc-lite-perl libjson-rpc-perl libtest-taint-perl +libhtml-parser-perl libhtml-scrubber-perl libencode-perl +libencode-detect-perl libemail-reply-perl +libhtml-formattext-withlinks-perl libtheschwartz-perl +libdaemon-generic-perl libapache2-mod-perl2 libapache2-mod-perl2-dev +libfile-mimeinfo-perl libio-stringy-perl libcache-memcached-perl +libfile-copy-recursive-perl libfile-which-perl libdbd-mysql-perl +perlmagick lynx graphviz python3-sphinx rst2pdf` This will take a little while. It's split into two commands so you can do the next steps (up to step 7) in another terminal while you wait for the second command to finish. If you start another terminal, you will need to :command:`sudo su` again. -Download Bugzilla +Configure MariaDB ================= -Get it from our Git repository: - -:command:`cd /var/www/html` - -:command:`git clone --branch release-X.X-stable https://github.com/bugzilla/bugzilla bugzilla` - -(where "X.X" is the 2-digit version number of the stable release of Bugzilla -that you want - e.g. 5.0) - -Configure MySQL -=============== - The following instructions use the simple :file:`nano` editor, but feel free to use any text editor you are comfortable with. -:command:`nano /etc/mysql/my.cnf` +:command:`nano /etc/mysql/mariadb.conf.d/50-server.cnf` Set the following values, which increase the maximum attachment size and make it possible to search for short words and terms: -* Alter on Line 52: ``max_allowed_packet=100M`` -* Add as new line 32, in the ``[mysqld]`` section: ``ft_min_word_len=2`` +* Uncomment and alter on Line 34 to have a value of at least: ``max_allowed_packet=100M`` +* Add as new line 42, in the ``[mysqld]`` section: ``ft_min_word_len=2`` Save and exit. -Then, add a user to MySQL for Bugzilla to use: +Then, add a user to MariaDB for Bugzilla to use: -:command:`mysql -u root -p -e "GRANT ALL PRIVILEGES ON bugs.* TO bugs@localhost IDENTIFIED BY '$db_pass'"` +:command:`mysql -u root -e "GRANT ALL PRIVILEGES ON bugs.* TO bugs@localhost IDENTIFIED BY '$db_pass'"` Replace ``$db_pass`` with a strong password you have generated. Write it down. -When you run the above command, it will prompt you for the MySQL root password -that you configured when you installed Ubuntu. You should make ``$db_pass`` -different to that password. +You should make ``$db_pass`` different to your password. -Restart MySQL: +Restart MariaDB: -:command:`service mysql restart` +:command:`service mariadb restart` Configure Apache ================ @@ -107,21 +104,37 @@ Paste in the following and save: .. code-block:: apache - ServerName localhost - - <Directory /var/www/html/bugzilla> + Alias /bugzilla /var/www/webapps/bugzilla + <Directory /var/www/webapps/bugzilla> AddHandler cgi-script .cgi Options +ExecCGI DirectoryIndex index.cgi index.html AllowOverride All </Directory> +This configuration sets up Bugzilla to be served on your server under ``/bugzilla`` path. +For more in depth setup instructions, refer to :ref:`Apache section of this documentation <apache>`. + :command:`a2ensite bugzilla` -:command:`a2enmod cgi headers expires` +:command:`a2enmod cgi headers expires rewrite` :command:`service apache2 restart` +Download Bugzilla +================= + +Get it from our Git repository: + +:command:`mkdir -p /var/www/webapps` + +:command:`cd /var/www/webapps` + +:command:`git clone --branch release-X.X-stable https://github.com/bugzilla/bugzilla bugzilla` + +(where "X.X" is the 2-digit version number of the stable release of Bugzilla +that you want - e.g. 5.0) + Check Setup =========== @@ -131,7 +144,7 @@ generates a config file (called :file:`localconfig`) for the database access information, and the second time (step 10) it uses the info you put in the config file to set up the database. -:command:`cd /var/www/html/bugzilla` +:command:`cd /var/www/webapps/bugzilla` :command:`./checksetup.pl` @@ -144,7 +157,7 @@ You will need to set the following values: * Line 29: set ``$webservergroup`` to ``www-data`` * Line 67: set ``$db_pass`` to the password for the ``bugs`` user you created - in MySQL a few steps ago + in MariaDB a few steps ago Check Setup (again) =================== @@ -162,12 +175,10 @@ Test Server :command:`./testserver.pl http://localhost/bugzilla` -All the tests should pass. You will get warnings about deprecation from -the ``Chart::Base`` Perl module; just ignore those. +All the tests should pass. You will get a warning about failing to run +``gdlib-config``; just ignore it. -.. todo:: Chart::Base gives confusing deprecation warnings :-| - https://rt.cpan.org/Public/Bug/Display.html?id=79658 , unfixed for - 2 years. :bug:`1070117`. +.. todo:: ``gdlib-config`` is no longer in Ubuntu. Access Via Web Browser ====================== @@ -183,8 +194,28 @@ You might well need to configure your DNS such that the server has, and is reachable by, a name rather than IP address. Doing so is out of scope of this document. In the mean time, it is available on your local network at ``http://<ip address>/bugzilla``, where ``<ip address>`` is (unless you -have a complex network setup) the "inet addr" value displayed when you run -:command:`ifconfig eth0`. +have a complex network setup) the address starting with 192 displayed when +you run :command:`hostname -I`. + +Accessing Bugzilla from the Internet +==================================== + +To be able to access Bugzilla from anywhere in the world, you don't have +to make it internet facing at all, there are free VPN services that let +you set up your own network that is accessible anywhere. One of those is +Tailscale, which has a fairly accessible `Quick Start guide <https://tailscale.com/kb/1017/install/>`_. + +If you are setting up an internet facing Bugzilla, it's essential to set +up SSL, so that the communication between the server and users is +encrypted. For local and intranet installation this matters less, and +for those cases, you could set up a self signed local certificate +instead. + +There are a few ways to set up free SSL thanks to `Let's Encrypt <https://letsencrypt.org/>`_. +The two major ones would be Apache's `mod_md <https://httpd.apache.org/docs/2.4/mod/mod_md.html>`_ +and EFF's `certbot <https://certbot.eff.org/instructions?ws=apache&os=ubuntufocal>`_, +but we don't cover the exact specifics of this here, as that's out of +scope of this guide. Configure Bugzilla ================== @@ -198,6 +229,8 @@ the following parameters in the :guilabel:`Required Settings` section: * :param:`urlbase`: :paramval:`http://<servername>/bugzilla/` or :paramval:`http://<ip address>/bugzilla/` +* :param:`ssl_redirect`: + :paramval:`on` if you set up an SSL certificate Click :guilabel:`Save Changes` at the bottom of the page. diff --git a/docs/en/rst/using/creating-an-account.rst b/docs/en/rst/using/creating-an-account.rst index 0ea42ee5d..892ad5e4d 100644 --- a/docs/en/rst/using/creating-an-account.rst +++ b/docs/en/rst/using/creating-an-account.rst @@ -5,9 +5,7 @@ Creating an Account If you want to use a particular installation of Bugzilla, first you need to create an account. Ask the administrator responsible for your installation -for the URL you should use to access it. If you're test-driving Bugzilla, -you can use one of the installations on -`Landfill <http://landfill.bugzilla.org/>`_. +for the URL you should use to access it. The process of creating an account is similar to many other websites. diff --git a/docs/en/rst/using/filing.rst b/docs/en/rst/using/filing.rst index 788cebbd5..229a3f823 100644 --- a/docs/en/rst/using/filing.rst +++ b/docs/en/rst/using/filing.rst @@ -8,18 +8,13 @@ Reporting a New Bug Years of bug writing experience has been distilled for your reading pleasure into the -`Bug Writing Guidelines <http://landfill.bugzilla.org/bugzilla-tip/page.cgi?id=bug-writing.html>`_. +`Bug Writing Guidelines <https://developer.mozilla.org/en-US/docs/Mozilla/QA/Bug_writing_guidelines>`_. While some of the advice is Mozilla-specific, the basic principles of reporting Reproducible, Specific bugs and isolating the Product you are using, the Version of the Product, the Component which failed, the Hardware Platform, and Operating System you were using at the time of the failure go a long way toward ensuring accurate, responsible fixes for the bug that bit you. -.. note:: If you want to file a test bug to see how Bugzilla works, - you can do it on one of our test installations on - `Landfill <http://landfill.bugzilla.org/>`_. Please don't do it on anyone's - production Bugzilla installation. - The procedure for filing a bug is as follows: #. Click the :guilabel:`New` link available in the header or footer diff --git a/docs/en/rst/using/finding.rst b/docs/en/rst/using/finding.rst index a8e18eef2..886af33e3 100644 --- a/docs/en/rst/using/finding.rst +++ b/docs/en/rst/using/finding.rst @@ -43,8 +43,7 @@ Advanced Search =============== The Advanced Search page is used to produce a list of all bugs fitting -exact criteria. `You can play with it on -Landfill <http://landfill.bugzilla.org/bugzilla-tip/query.cgi?format=advanced>`_. +exact criteria. Advanced Search has controls for selecting different possible values for all of the fields in a bug, as described above. For some diff --git a/docs/makedocs.pl b/docs/makedocs.pl index 36ffc45b5..8e11de02a 100755 --- a/docs/makedocs.pl +++ b/docs/makedocs.pl @@ -33,6 +33,7 @@ BEGIN { chdir dirname($0); } use lib qw(.. ../lib lib); use Cwd; +use File::Copy qw(copy); use File::Copy::Recursive qw(rcopy); use File::Find; use File::Path qw(rmtree make_path); @@ -82,12 +83,19 @@ END_HTML $converter->contents_page_start($contents_start); $converter->contents_page_end("</body></html>"); - $converter->add_css('./../../../../style.css'); + if (exists($::ENV{'READTHEDOCS'})) { + $converter->add_css('./../../style.css'); + } else { + $converter->add_css('./../../../../style.css'); + } $converter->javascript_flurry(0); $converter->css_flurry(0); make_path('html/integrating/api'); $converter->batch_convert(['../../'], 'html/integrating/api'); + if (exists($::ENV{'READTHEDOCS'})) { + copy('../style.css', 'html/style.css') or die "Copy failed: $!"; + } print "\n"; } |