Auto-tools/staging

From MozillaWiki
Jump to navigation Jump to search

Tools Staging Environment Booking

masters

Master User Testing Notes Dates Interruptable Waiting
mozilla-tests1 (9010) - - - - - -
mozilla-tests2 (9012) - - - - - -

slaves

001 slaves are attached to mozilla-tests1, 002 slaves are attached to mozilla-tests2. The slaves themselves can also be removed from the pool and booked individually.

currently booked

Slave User Testing/Notes Dates
- - - -

known slaves

Platform Slaves
Linux tools-r3-fed-{001,002}
Linux64 tools-r3-fed64-{001,002}
Mac tools-r3-leopard-{001,002}
Mac64 tools-r3-snow-{001,002}
Win32 tools-r3-xp-{001,002}, tools-r3-w7-{001,002}
Win64 tools-r3-w764-{001,002}

Notes

test-master1

  • uses 001 slaves
  • master path
/builds/buildbot/mozilla-tests1
  • buildbotcustom path
/tools/buildbotcustom/buildbotcustom
  • user configs
/builds/buildbot/user-configs

test-master2

  • uses 002 slaves
  • master path
/builds/buildbot/mozilla-tests2
  • buildbotcustom path
/tools/buildbotcustom2/buildbotcustom
  • user configs
/builds/buildbot/user-configs2

switching users

create your own user environment

  • go to the user configs path for your master
  • create configs-{your_name}
cp -r configs-clean configs-{your_name}

create your own buildbotcustom

  • go to the buildbotcustom path for your master
  • create buildbotcustom-{your_name}
cp -r buildbotcustom-clean buildbotcustom-{your_name}

switch master to use your configs/buildbotcustom

  • book the master you want to use
  • go to the directory of your master
  • run
./switch-user {your_name}

buildbot config files and what they do

  • you will be working out of
configs-{your_name}/mozilla-tests

config.py

  • contains configuration for talos tests
  • contains configuration for which talos tests are run on which branches
  • shared between production and staging machines

staging-config.py

  • contains graph server configuration (points to graphs-stage)
  • contains slave names
    • NOTE have to be updated to point to tools machine names instead of releng stage talos machine names)

staging_tests_master_stm{01,02}_localconfig.py

  • sets slave port number
  • sets master waterfall link
    • NOTE has to be updated to point to correct tools set up
  • sets active branches + platforms
    • can switch on/off branches to narrow down testing to some/all branches
    • can switch on/off platforms to narrow testing to some/all OSes

how to run custom talos code

  • talos code is checked out per-run by default
  • edit
/tools/buildbotcustom{ ,2}/buildbotcustom-{your-name}/process/factory.py
#self.customTalos = customTalos
self.customTalos = 'talos.zip' #customTalos
  • there is already a copy of talos in your user configs that you can edit
/build/buildbot/user-configs{ ,2}/configs-{your_name}/talos
  • just package it into and it will be downloaded and unzipped per-run
/build/buildbot/user-configs{ ,2}/configs-{your_name}/talos.zip