Bugzilla:Infrastructure: Difference between revisions

No more Tinderbox tests and also otherwise sync with reality
m (→‎Servers: Moved build service to infra and updated cg-bugs01 info)
(No more Tinderbox tests and also otherwise sync with reality)
Line 14: Line 14:


*Slave DNS for internal zones.
*Slave DNS for internal zones.
**All zones are transferred from master DNS [[#infra.bugzilla.org|infra.bugzilla.org]].
**All zones are transferred from master DNS [[#infra.bugzilla.lan|infra.bugzilla.lan]].
**Please read master DNS description for other configuration details.
**Please read master DNS description for other configuration details.


Line 21: Line 21:
A virtual server for testing Windows support. Currently unused.
A virtual server for testing Windows support. Currently unused.


==== oracle.bugzilla.org ====
==== oracle.bugzilla.lan ====


A virtual server for testing Oracle database support. Currently unused and unprovisioned. For more information see {{bug|831158}}.
A virtual server for testing Oracle database support. Currently unused.


=== bugzilla1.community.scl3.mozilla.com AKA cg-bugs01.bugzilla.lan ===
=== bugzilla1.community.scl3.mozilla.com AKA cg-bugs01.bugzilla.lan ===


A RHEL 6 server that runs automated tests for the Bugzilla software.
A RHEL 6 server that hosts MySQL and PostgreSQL database servers for internal use by other servers.
 
*Uses Tinderbox Client v2.05 to run Perl, Docs, QA, Xt and checksetup Bugzilla test suites.
*Reports test results to the Tinderbox Server maintained by Mozilla. See [http://tinderbox.mozilla.org/Bugzilla/ tinderbox.mozilla.org/Bugzilla/] for latest results.
*Current activity of the tests can be viewed by attaching to a screen session running under the ''tinderbox'' user. There's two sessions, one for QA tests (named ''qa'') and one for all the other tests (named ''tbox''). Use commands '''screen -r qa''' or '''screen -r tbox''' to attach.
*Selenium Server v2.37.0, Test::WWW::Selenium Perl module v1.24 and Firefox v24 are used by the QA tests. Be careful when updating these so that the trees won't burn unnecessarily.
*Selenium Server is manually installed to the '''/usr/local/share/selenium-server/''' directory. Scripts to start it and to list related processes are in the '''/usr/local/bin/''' directory.
*Firefox at '''/usr/lib64/firefox/firefox''' is referenced from Selenium start scripts and is installed from standard RHEL repositories.
*The perl-Test-WWW-Selenium package is installed/updated from Repoforge (previously known as RPMforge) but is excluded from normal yum updates so it needs to be manually updated (use '''yum update --disableexcludes=rpmforge perl-Test-WWW-Selenium''' command) when needed.
*Replicates bugs_tip, bugs_bugzilla4_4_branch, bugs_bugzilla4_2_branch and bugs_bugzilla4_0_branch databases from landfill to be used in the checksetup update testing.
*Uses various locally built RPM packages from [[#infra.bugzilla.org|a local repository]]) defined in the '''/etc/yum.repos.d/bz.repo''' repository configuration file.


=== bugzilla2.community.scl3.mozilla.com AKA cg-bugs02.bugzilla.lan ===
=== bugzilla2.community.scl3.mozilla.com AKA cg-bugs02.bugzilla.lan ===
Line 45: Line 35:
*Uses qemu+kvm virtualization to run up to four (4) RHEL 6 virtual servers.
*Uses qemu+kvm virtualization to run up to four (4) RHEL 6 virtual servers.


==== updates.bugzilla.org ====
==== updates.bugzilla.org AKA update.bugzilla.lan ====


A virtual RHEL 6 server for Bugzilla update services.
A virtual RHEL 6 server for Bugzilla update services.


*Delivers Bugzilla version information XML to Bugzilla instances all around the world.<br>
*Delivers Bugzilla version information XML to Bugzilla instances all around the world.
*Uses nginx as a high performance web server.
*Uses nginx as a high performance web server.


==== bots.bugzilla.org ====
==== bots.bugzilla.lan ====


A virtual RHEL&nbsp;6 server for IRC bots.
A virtual RHEL&nbsp;6 server for IRC bots.
Line 61: Line 51:
**Maintains a presence on Freenode, Mozilla and GNOME IRC networks on various channels for announcing bug changes and fetching bug information.
**Maintains a presence on Freenode, Mozilla and GNOME IRC networks on various channels for announcing bug changes and fetching bug information.


==== infra.bugzilla.org ====
==== infra.bugzilla.lan ====


A virtual RHEL&nbsp;6 server for basic infrastructure services.
A virtual RHEL&nbsp;6 server for basic infrastructure services.
Line 67: Line 57:
*Master DNS for internal zones.
*Master DNS for internal zones.
**Zones include '''bugzilla.lan''', '''99.168.192.in-addr.arpa''', '''122.168.192.in-addr.arpa''' and '''bugzilla.jp''' that are accessible only internally by Bugzilla servers. Additionally, includes standard zones required to be in every DNS.
**Zones include '''bugzilla.lan''', '''99.168.192.in-addr.arpa''', '''122.168.192.in-addr.arpa''' and '''bugzilla.jp''' that are accessible only internally by Bugzilla servers. Additionally, includes standard zones required to be in every DNS.
**Forwards all external name requests to '''mradm01.mozilla.org''', '''ns2.globalnetoptex.com''' or '''ns2.lax01.mzima.net''' but will fall back to resolving requests directly by itself if none of the forwarders are available.
**Forwards all external name requests to '''google-public-dns-a.google.com''' and '''google-public-dns-b.google.com''' but will fall back to resolving requests directly by itself if none of the forwarders are available.
*Local RPM building and hosting.
*Local RPM building and hosting.
**Log in as ''build'' user to build/update RPMs because that user has a correctly configured RPM build environment.
**Log in as ''build'' user to build/update RPMs because that user has a correctly configured RPM build environment.
**Hosts repo.bugzilla.lan yum repository that provides all the locally built packages. Copy repository configuration file found at http://repo/bz.repo to /etc/yum.repos.d/ to use the local repository in a local server.
**Hosts '''repo.bugzilla.lan''' yum repository that provides all the locally built packages. Copy repository configuration file found at http://repo/bz.repo to /etc/yum.repos.d/ to use the local repository in a local server.
**Save new RPMs to server in '''/usr/share/nginx/published-rpms''' directory and run '''./update-repo.sh''' script as build user to update repository metadata.
*Puppet Master to automate configuration of other Bugzilla Project servers.


=== bugzilla3.scl3.mozilla.com AKA cg-bugs03.bugzilla.lan ===
=== bugzilla3.community.scl3.mozilla.com AKA cg-bugs03.bugzilla.lan ===


A RHEL&nbsp;6 server for hosting automated Bugzilla demo installations.
A RHEL&nbsp;6 server for hosting automated Bugzilla demo installations.
22

edits