Sheriffing/TBPL/ArchitectureAndDependencies

From MozillaWiki
< Sheriffing‎ | TBPL
Revision as of 17:02, 19 July 2011 by Mstange (talk | contribs)
Jump to navigation Jump to search

Modes

  1. Traditional Tinderbox mode
    Was used before bug 669000
  2. Transitory mode
    Uses data from Buildbot or Tinderbox depending on usebuildbot=1 flag
  3. Future pure-Buildbot mode
    Won't use data from Tinderbox any more. Not there yet.

Servers

  • Tinderboxpushlog
    tbpl.mozilla.org
  • Tinderbox
    tinderbox.mozilla.org
  • Buildbot
    build.mozilla.org
  • Mercurial
    hg.mozilla.org
  • Mozilla FTP
    ftp.mozilla.org
  • Bugzilla API
    api-dev.bugzilla.mozilla.org
  • War-on-orange elastic search database
    elasticsearch1.metrics.sjc1.mozilla.com:9200
    (only accessible from tbpl.mozilla.org)

And there's the client, i.e. the user's browser.

Dependencies

Inside the TBPL server

  • MongoDB needs to run
  • TBPL PHP scripts need PHP 5.3 with access to:
    • MongoDB through MongoPHP driver
    • file system for caching
  • TBPL Python script needs Python 2.6 with access to:
    • MongoDB through pymongo driver
  • Cronjob needs to run /dataimport/import-buildbot-data.py periodically

Between TBPL server and other servers

tbpl.mozilla.org needs access to:

  • tinderbox.mozilla.org
    • from /php/getTinderboxSummary.php to /showlog.cgi?...: Build logs
    • from /leak-analysis/index.php to /showlog.cgi?...: Build logs
  • build.mozilla.org
    • from /dataimport/import-buildbot-data.py to /builds/builds-...js.gz: Build data
  • hg.mozilla.org
    • from /dataimport/import-buildbot-data.py to /try/json-pushes?...: Pusher for revision
  • ftp.mozilla.org
    • from /php/inc/RawGzLogDownloader.php to /pub/mozilla.org/...: Build logs
  • api-dev.bugzilla.mozilla.org
    • from /php/submitBugzillaComment.php to /...: Automated commenting on starred orange bugs
  • elasticsearch1.metrics.sjc1.mozilla.com:9200
    • from /php/starcomment.php to /...: Storing and retrieving build stars

Between the client and other servers

Visitors of TBPL (the "client") need access to:

  • tbpl.mozilla.org (duh)
  • tinderbox.mozilla.org
    • to /.../status.html: Tree status
    • to /showbuilds.cgi?...: Build data
    • to /.../json.js: Cached build data
  • build.mozilla.org
    • to /builds/...: Data about pending and running builds
    • to /buildapi/...: Self-serve API to retrigger and cancel builds
  • hg.mozilla.org
    • to /.../pushlog: Push data
  • api-dev.bugzilla.mozilla.org
    • to /...: Showing bug summaries as tooltips for bug numbers

Diagram

being drawn now