mobile-staging/master.cfg
author Benjamin Smedberg <benjamin@smedbergs.us>
Fri, 28 Aug 2009 16:37:27 -0700
changeset 1479 8674359326dc19dacd191c38f32e3a5612b36636
parent 1127 7cb377ca0adac93a822c173187fff863ae2506a4
child 1557 d73ddfc825dc7616a22578b604282ff451634744
permissions -rw-r--r--
Break symlinks between mozilla-central and older mozilla-1.9.* trees so that we can perform compiler upgrades on -central. The project branches (places/electrolysis/tracemonkey) keep their symlinks because they should continue to track -central.

###########################################################################
# mobile-staging master.cfg
# Built largely from perf-staging/master.cfg, but will most likely also
# contain unit tests.
###########################################################################

import os.path
import re

from buildbot.buildslave import BuildSlave

from buildbot.process.factory import BuildFactory
from buildbot.scheduler import Scheduler
from buildbot.status import html, tinderbox
from buildbot.status.mail import MailNotifier
from tinderboxmailnotifier import TinderboxMailNotifier
from buildbot.steps.shell import Compile, ShellCommand, WithProperties
from buildbot.status.builder import SUCCESS, WARNINGS, FAILURE, SKIPPED, EXCEPTION

import perfrunner
reload(perfrunner)
from perfrunner import *

import ftppoller
reload(ftppoller)
from ftppoller import FtpPoller


MAEMO_SEARCHSTRING="en-US.linux-arm.tar.bz2"
MAEMO_TRUNK_BUILDDIRS = [
    "http://ftp.mozilla.org/pub/mozilla.org/firefox/tinderbox-builds/mobile-browser-linux-arm/",
    "http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mobile-browser/",
    "http://10.250.3.10/maemo/"
]

TINDERBOX_TREE="MozillaTest"
RESULTS_SERVER="graphs-stage.mozilla.org"

c = BuildmasterConfig = {}

##
## Misc Config
##

c['debugPassword'] = "mozilla"
c['projectName'] = "Talos"
c['projectURL'] = "http://quality.mozilla.org/en/projects/automation/talos"
c['buildbotURL'] = "http://staging-mobile-master.mozilla.org:8011"
c['slavePortnum'] = 9011


##
## Slaves
##

c['slaves'] = [
               BuildSlave("maemo-n810-01", "m0b1l3", max_builds=1),
               BuildSlave("maemo-n810-02", "m0b1l3", max_builds=1),
               BuildSlave("maemo-n810-03", "m0b1l3", max_builds=1),
               BuildSlave("maemo-n810-04", "m0b1l3", max_builds=1),
               BuildSlave("maemo-n810-05", "m0b1l3", max_builds=1),
               BuildSlave("maemo-n810-06", "m0b1l3", max_builds=1),
               BuildSlave("maemo-n810-07", "m0b1l3", max_builds=1),
               BuildSlave("maemo-n810-08", "m0b1l3", max_builds=1),
               BuildSlave("maemo-n810-09", "m0b1l3", max_builds=1),
              ]

##
## Status
##

c['status'] = []
c['status'].append(html.WebStatus(http_port=8011, allowForce=True))

c['status'].append(MailNotifier(
    fromaddr="talos.buildbot@build.mozilla.org",
    sendToInterestedUsers=False,
    extraRecipients=['aki@mozilla.com'],
    mode="failing",
    builders=None,
    relayhost="smtp.mozilla.org"
))

c['status'].append(tinderbox.TinderboxMailNotifier(
    fromaddr="talos.buildbot@build.mozilla.org",
    tree=TINDERBOX_TREE,
    extraRecipients=["tinderbox-daemon@tinderbox.mozilla.org"],
    relayhost="smtp.mozilla.org",
    builders=["N810 Talos Tp", "N810 Talos non-Tp", "N810 Talos Tp JIT"],
    logCompression="bzip2"
))


##
## Sources
##

c['change_source'] = []

c['change_source'].append(FtpPoller(
    tree = "mobile",
    branch = "mobile-browser-maemo",
    pollInterval = 1 * 60,
    ftpURLs = MAEMO_TRUNK_BUILDDIRS,
    searchString = MAEMO_SEARCHSTRING
))


##
## Schedulers
##

c['schedulers'] = []

c['schedulers'].append(Scheduler(
    name="maemo scheduler",
    branch="mobile-browser-maemo",
    treeStableTimer=1*60,
    builderNames=[
        'N810 Talos Tp',
        'N810 Talos non-Tp',
        'N810 Talos Tp JIT',
    ]
))

maemoTalosStepsTp = MaemoTalosFactory(
    activeTests={
        'tp':     90,
    },
    talosConfigFile='mobile.config',
    resultsServer=RESULTS_SERVER,
    branch='mobile-browser',
    hackTbPrint=1,
)

maemoTalosStepsTpJIT = MaemoTalosFactory(
    activeTests={
        'tp':     90,
    },
    disableJit=0,
    talosConfigFile='mobile.config',
    resultsServer=RESULTS_SERVER,
    branch='mobile-browser',
    hackTbPrint=1,
)

maemoTalosStepsNonTp = MaemoTalosFactory(
    activeTests={
        'ts':     60,
        'tdhtml': 60,
        'tsvg':   60,
        'twinopen':   60,
        'tsspider':   60,
        'tgfx':   60,
    },
    talosConfigFile='mobile.config',
    resultsServer=RESULTS_SERVER,
    branch='mobile-browser',
    hackTbPrint=1,
)

n810_trunk_tp = {
    'name': "N810 Talos Tp",
    'slavenames': ['maemo-n810-01', 'maemo-n810-02', 'maemo-n810-03'],
    'builddir': "n810-trunk-tp",
    'factory': maemoTalosStepsTp,
    'category': "Mobile"
}

n810_trunk_non_tp = {
    'name': "N810 Talos non-Tp",
    'slavenames': ['maemo-n810-04', 'maemo-n810-05', 'maemo-n810-06', 'maemo-n810-07', 'maemo-n810-08', 'maemo-n810-09'],
    'builddir': "n810-trunk-non-tp",
    'factory': maemoTalosStepsNonTp,
    'category': "Mobile"
}

n810_trunk_tp_jit = {
    'name': "N810 Talos Tp JIT",
    'slavenames': ['maemo-n810-07', 'maemo-n810-08', 'maemo-n810-09'],
    'builddir': "n810-trunk-tp-jit",
    'factory': maemoTalosStepsTpJIT,
    'category': "Mobile"
}

c['builders'] = [n810_trunk_tp, n810_trunk_non_tp, n810_trunk_tp_jit]