canmove, Confirmed users
1,126
edits
(Update contacts etc) |
(Remove content that is out of date) |
||
Line 36: | Line 36: | ||
(I'm going to start a design doc right here, though it should probably be broken out to a different wiki page at some point.) | (I'm going to start a design doc right here, though it should probably be broken out to a different wiki page at some point.) | ||
TBPL is mostly about useful presentation of data that's already available elsewhere. For example, the list of pushes to a repository is at hg.mozilla.org/repository/pushloghtml ([http://hg.mozilla.org/mozilla-central/pushloghtml e.g. mozilla-central pushlog]). Another example is the [https://build.mozilla.org/buildapi/self-serve self-serve UI] that allows one to cancel and restart builds. So it's TBPL's job to reassemble that data in a way that's as accessible for developers as possible. | TBPL is mostly about useful presentation of data that's already available elsewhere. For example, the list of pushes to a repository is at hg.mozilla.org/repository/pushloghtml ([http://hg.mozilla.org/mozilla-central/pushloghtml e.g. mozilla-central pushlog]). Another example is the [https://build.mozilla.org/buildapi/self-serve self-serve UI] that allows one to cancel and restart builds. So it's TBPL's job to reassemble that data in a way that's as accessible for developers as possible. | ||
For some of that source data, TBPL is the only human-readable presentation. Run result data, for example, is only available as JSON (from Buildbot | For some of that source data, TBPL is the only human-readable presentation. Run result data, for example, is only available as JSON (from Buildbot). | ||
There are two exceptions to the "data comes from outside" principle: Job comments (also called "build stars") and the list of hidden builders will be stored on the TBPL server itself, in a MongoDB database. In Tinderbox mode both these things were stored on Tinderbox. | |||
=== Architecture === | === Architecture === | ||
Line 59: | Line 57: | ||
(to be continued...) | (to be continued...) | ||
= Hardware = | = Hardware = | ||
Line 79: | Line 69: | ||
Any form of unix that's supported by Apache, PHP, Python and MongoDB should work. IT will decide what will actually be used. | Any form of unix that's supported by Apache, PHP, Python and MongoDB should work. IT will decide what will actually be used. | ||
= Network flows = | = Network flows = | ||
Line 128: | Line 108: | ||
Stage: tbpl_allizom_org | Stage: tbpl_allizom_org | ||
Dev: tbpl_dev_allizom_org | Dev: tbpl_dev_allizom_org | ||
= File storage = | = File storage = | ||
Line 147: | Line 125: | ||
There needs to be a cron job that periodically runs tbpl/dataimport/import-buildbot-data.py in order to import buildbot data into the MongoDB. The import frequency hasn't been fixed yet, but it's probably going to be between one and 5 minutes. (The Buildbot source data is regenerated every minute.) | There needs to be a cron job that periodically runs tbpl/dataimport/import-buildbot-data.py in order to import buildbot data into the MongoDB. The import frequency hasn't been fixed yet, but it's probably going to be between one and 5 minutes. (The Buildbot source data is regenerated every minute.) | ||
The importer is idempotent; it never destroys data and it doesn't insert duplicates. | The importer is idempotent; it never destroys data and it doesn't insert duplicates. | ||
= Developer Contacts = | = Developer Contacts = |