ReleaseEngineering/Slave Naming: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
No edit summary
Line 19: Line 19:
2) O = OS + instruction size (optional)
2) O = OS + instruction size (optional)
* xp32/w732/w864
* xp32/w732/w864
* w08/w12
* w2008/w2012
** we currently use "w64" for "w08"
** we currently use "w64" for "w2008"
* linux32/linux64
* linux32/linux64
** for linux we camouflage the distro
** for linux we camouflage the distro
Line 47: Line 47:
* b-linux64-vm-XXX
* b-linux64-vm-XXX
** we still use *some* in-house Linux build VMs for esr17
** we still use *some* in-house Linux build VMs for esr17
* b-w12-ec2-XXX (15 chars)
* b-w2012-ec2-XXX (15 chars)
** this platform is forward thinking if we build on AWS for Windows
** this platform is forward thinking if we build on AWS for Windows
* b-w08-ix-XXX (14 chars)
* b-w2008-ix-XXX (14 chars)
** currently named w64-ix-slaveXXX
** currently named w64-ix-slaveXXX
*  b-lion-r#-XXX
*  b-lion-r#-XXX

Revision as of 19:48, 13 January 2014

Introduction

On Release Engineering we do builds and tests of Firefox, Firefox for Android, Firefox OS and Thunderbird. We also do some other tier-2 type of jobs but we use the same hardware used to ship the mentioned products. For builds, we build both on real hardware and VMs (in-house & AWS). For unit and performance tests (aka talos), we build both on real desktop machines, VMs (EC2) and mobile development boards (tegras & pandas). As we move everything to scl3, we can see the purpose of the machine indicated on the full hostname (try build machines VS release build machines VS test machines VS "Windows" vlan).

Notes

  • We only use "try" for ec2 instances since renaming is harder with in-house hosts
  • Moving machines from the try vlan to the build vlan will require hostname changes (after the first 'dot')

Proposed naming

Desktop hostname convention

P-O-T-XXX

1) P = purpose

  • "b-" - for build purposes
  • "t-" - for test machines


2) O = OS + instruction size (optional)

  • xp32/w732/w864
  • w2008/w2012
    • we currently use "w64" for "w2008"
  • linux32/linux64
    • for linux we camouflage the distro
  • snow/lion/mtnlion


3) T = Type of hardware For VMs:

  • "ec2" for Amazon
  • "vm" if run in-house
    • "vmw" for in-house vmware


For real hardware:

  • "hp" for hp machines
  • "ix" for ix machines
  • "r#" - # depends on the revision of Mac mini that we use


4) XXX = number Fixed digits allow lexical sorting, but limit to 999 slaves per type. This is at variance with numbering throughout the rest of Mozilla, where zero-padding is not used.

Examples

Build machine examples:

  • b-linux64-hp-XXX
  • b-linux64-ec2-XXX
  • b-linux64-vm-XXX
    • we still use *some* in-house Linux build VMs for esr17
  • b-w2012-ec2-XXX (15 chars)
    • this platform is forward thinking if we build on AWS for Windows
  • b-w2008-ix-XXX (14 chars)
    • currently named w64-ix-slaveXXX
  • b-lion-r#-XXX


Test machine examples:

  • t-linux32-ec2-XXX
  • t-linux64-ec2-XXX
  • t-linux32-ix-XXX
  • t-linux64-ix-XXX
  • t-snow-r4-XXX
  • t-lion-r4-XXX
  • t-mountainlion-r5-XXX
  • t-xp32-ix-XXX
  • t-w732-ix-XXX
  • t-w864-ix-XXX

Mobile hostname convention

T-XXXX

T = type (e.g. panda or tegra) Examples:

  • panda-XXXX
  • tegra-XXXX

Other infra

buildbot-masterXX - for buildbot masters foopyXXX - for foopy machines that

Current naming differences

NOTE: Differences are bolded to make it easier to read As of April, 2013

Proposed Current
b-linux64-T-XXX
  • bld-centos6-hp-XXX
  • bld-linux64-ix-XXX
b-linux64-ec2-XXX bld-linux64-ec2-XXX
b-linux64-vm-XXX bld-centos5-32-vmw-XXX (not supported)
b-w2008-ix-XXX w64-ix-slaveXXX
b-w2012-ec2-XXX
b-lion-r#-XXX bld-lion-r#-XXX
t-linux32-ec2-XXX tst-linux32-ec2-XXX
t-linux64-ec2-XXX tst-linux64-ec2-XXX
t-linux32-ix-XXX talos-linux32-ix-XXX
t-linux64-ix-XXX talos-linux64-ix-XXX
t-snow-r4-XXX talos-r4-snow-XXX
t-lion-r5-XXX talos-r4-lion-XXX
t-mtnlion-r5-XXX talos-mtnlion-r5-XXX
t-xp32-ix-XXX same
t-w732-ix-XXX same
t-w864-ix-XXX same