Closed Bug 803248 Opened 12 years ago Closed 11 years ago

buildbot config changes to support panda_android*

Categories

(Infrastructure & Operations Graveyard :: CIDuty, task)

x86
macOS
task
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: kmoir, Assigned: kmoir)

References

Details

(Whiteboard: [reit-panda])

Attachments

(8 files, 3 obsolete files)

2.68 KB, patch
mozilla
: review+
kmoir
: checked-in+
Details | Diff | Splinter Review
6.20 KB, patch
mozilla
: review+
kmoir
: checked-in+
Details | Diff | Splinter Review
1.36 KB, patch
Callek
: review+
kmoir
: checked-in+
Details | Diff | Splinter Review
3.99 KB, patch
Callek
: review+
Details | Diff | Splinter Review
11.14 KB, patch
Callek
: review+
kmoir
: checked-in+
Details | Diff | Splinter Review
2.51 KB, patch
Callek
: review+
kmoir
: checked-in+
Details | Diff | Splinter Review
11.99 KB, patch
Callek
: review+
kmoir
: checked-in+
Details | Diff | Splinter Review
27.79 KB, patch
armenzg
: review+
kmoir
: checked-in+
Details | Diff | Splinter Review
      No description provided.
Assignee: nobody → kmoir
Whiteboard: [reit-panda]
This bug is most closely associated with putting the first pandas-for-android in production (they are running in staging now). Adding a few interested parties to the cc list for "up to the minute" status.
Not sure what slaves will be allocated to staging yet.  Also, I'm unsure of how to only enable a tests on the cedar branch.
An example that might help is Win7x64 which is only enabled on mozilla-central:
http://hg.mozilla.org/build/buildbot-configs/file/default/mozilla-tests/config.py#l741
   747             'enable_opt_unittests': False,
   749             'enable_debug_unittests': False,

http://hg.mozilla.org/build/buildbot-configs/file/default/mozilla-tests/config.py#l955
   956 # XXX hacking warning - this code could get out of date easily
   957 BRANCHES['mozilla-central']['platforms']['win64']['enable_opt_unittests'] = True
   958 for suite in SUITES.keys():
   959     options = SUITES[suite]['options']
   960     if options[1] == ALL_PLATFORMS:
   961         options = (options[0], ALL_PLATFORMS + PLATFORMS['win64']['slave_platforms'])
   962     if options[1] == NO_MAC:
   963         options = (options[0], NO_MAC + PLATFORMS['win64']['slave_platforms'])
   964     if not SUITES[suite]['enable_by_default']:
   965         # Suites that are turned off by default
   966         BRANCHES['mozilla-central'][suite + '_tests'] = (0, True) + options
   967     else:
   968         # Suites that are turned on by default
   969         BRANCHES['mozilla-central'][suite + '_tests'] = (1, True) + options

I hope it helps; even though "cedar" additions are best suited inside of project_branches.py:
http://hg.mozilla.org/build/buildbot-configs/file/default/mozilla/project_branches.py#l238

It won't be an easy patch from my experience.
Attachment #675685 - Attachment is obsolete: true
Attachment #677493 - Flags: review?(aki)
Attachment #675683 - Flags: review?(aki)
Attachment #675683 - Flags: review?(aki) → review+
Comment on attachment 677493 [details] [diff] [review]
buildbot config to enable tests for android + panda in cedar branch

> -PLATFORMS['android']['slave_platforms'] = ['tegra_android']
> +PLATFORMS['android']['slave_platforms'] = ['tegra_android','panda_android']

Style nit: please put a space after the comma.

> +        [('panda-%04i' % x, {'http_port': '30%03i' % x, 'ssl_port': '31%03i' % x}) for x in range(22,34) + range(46,81)]
> +    ),             

Pet peeve: please remove trailing whitespace.
Attachment #677493 - Flags: review?(aki) → review+
Comment on attachment 677493 [details] [diff] [review]
buildbot config to enable tests for android + panda in cedar branch

Review of attachment 677493 [details] [diff] [review]:
-----------------------------------------------------------------

::: mozilla-tests/config.py
@@ +161,4 @@
>  PLATFORMS['android']['env_name'] = 'android-perf'
>  PLATFORMS['android']['is_mobile'] = True
>  PLATFORMS['android']['tegra_android'] = {'name': "Android Tegra 250"}
> +PLATFORMS['android']['panda_android'] = {'name': "Android Panda"}

Bikeshed-NIT: I'm more a fan of "Android ICS Panda" or "Android ICS Opt" or something

But this bikeshed should not block landing!

::: mozilla-tests/production_config.py
@@ +15,5 @@
>          if x not in range(122,129) + [30,31,33,34,43,44,49,65,69,77,131,137,143,147,\
>              153,156,161,175,176,180,184,185,186,193,197,198,202,203,204,205,222,224,\
>              226,239,241,268,275,289,291,292,301]]), # decommissioned tegras
> +     'panda_android': dict(
> +        [('panda-%04i' % x, {'http_port': '30%03i' % x, 'ssl_port': '31%03i' % x}) for x in range(22,34) + range(46,81)]

nit: *when* we get into 4 digit panda numbers here, these port specs will fail to work properly, we should plan to find a good solution there. but WFM for now
Depends on: 800047
(In reply to Justin Wood (:Callek) from comment #7)
> >  PLATFORMS['android']['tegra_android'] = {'name': "Android Tegra 250"}
> > +PLATFORMS['android']['panda_android'] = {'name': "Android Panda"}
> 
> Bikeshed-NIT: I'm more a fan of "Android ICS Panda" or "Android ICS Opt" or
> something

The proposal Clint made in bug 800047 was: "Android 4.0 Panda" (we would later also change "Android Tegra 250" to "Android 2.2 Tegra 250"). I tend to get confused with the codenames, so would prefer the version.

This also must have something between the "Android" and "Panda", or we'll have to make the regexes a bit hacky in TBPL to avoid causing false-positives against b2g panda or android 2.2.
Ok.

I think we're ok to land anyway, as long as we fix up naming while we're still on Cedar.  Correct?
(In reply to Aki Sasaki [:aki] from comment #9)
> Ok.
> 
> I think we're ok to land anyway, as long as we fix up naming while we're
> still on Cedar.  Correct?

correct, naming for a cedar-landing is not blocking, but still a nice-to-have. We'll discuss it amongst ourselves [releng] tomorrow with myself, kim, armen and coop, and if we have an agreement we'll land this with that, otherwise we'll land this as-is and adjust later without worry for TBPL.
updated with correct name for pandas + excluded devices from chassis 2 (jmaher testing) and 6 (not working) from production
Attachment #677833 - Flags: review?(bugspam.Callek)
Attachment #677833 - Attachment is patch: true
Comment on attachment 677833 [details] [diff] [review]
buildbot config to enable tests for android + panda in cedar branch

r+ per interdiff
Attachment #677833 - Flags: review?(bugspam.Callek) → review+
I forgot to explicitly exclude builds from running in non-cedar branches in the previous patch.  Here's the interdiff

> @@ -1028,16 +1030,22 @@ for branch in ('mozilla-central', 'mozil
>                  BRANCHES[branch]['platforms'][pf][slave_pf]['debug_unittest_suites'] += [('jetpack', ['jetpack'])]
>                  continue
>              if pf == "macosx64" and slave_pf == "leopard":
>                  BRANCHES[branch]['platforms'][pf][slave_pf]['opt_unittest_suites'] += [('jetpack', ['jetpack'])]
>                  continue
>              BRANCHES[branch]['platforms'][pf][slave_pf]['opt_unittest_suites'] += [('jetpack', ['jetpack'])]
>              BRANCHES[branch]['platforms'][pf][slave_pf]['debug_unittest_suites'] += [('jetpack', ['jetpack'])]
>  
> +#exclude android builds from running on non-cedar branches on pandas
> +for branch in ['mozilla-aurora', 'mozilla-beta', 'mozilla-release', 'mozilla-esr10'] + ACTIVE_PROJECT_BRANCHES:
> +    if 'android' in BRANCHES[branch]['platforms'] and branch != "cedar" :
> +        del BRANCHES[branch]['platforms']['android']['panda_android']
> +        BRANCHES[branch]['platforms']['android']['slave_platforms'] = ['tegra_android']
> +
>  # Let's load Marionette for the following branches:
>  for branch in ('mozilla-central', 'mozilla-inbound', 'try', 'fx-team', 'services-central', ):
>      for pf in PLATFORMS:
>          if 'android' in pf:
>              # this is just for desktop Firefox
>              continue
>          config_file = "marionette/prod_config.py"
>          if pf.startswith('win'):
Attachment #677855 - Flags: review?(aki)
Comment on attachment 677855 [details] [diff] [review]
fixed to exclude running non-cedar branch builds on android pandas

That's not pretty, but it'll go away when we're ready.
Attachment #677855 - Flags: review?(aki) → review+
Attachment #677493 - Attachment is obsolete: true
Attachment #677833 - Attachment is obsolete: true
Attachment #675683 - Flags: checked-in+
Attachment #677855 - Flags: checked-in+
Attachment #678417 - Flags: review?(bugspam.Callek)
Comment on attachment 678417 [details] [diff] [review]
patch to revert addition of esr17

Review of attachment 678417 [details] [diff] [review]:
-----------------------------------------------------------------

Sorry for the think-o when reading this part of the patch and making that suggestion
Attachment #678417 - Flags: review?(bugspam.Callek) → review+
Attachment #678417 - Flags: checked-in+
In production

Two things 
-Android 2.2 builds are runing in cedar builds, we don't know why, will investigate tomorrow
-Android builders appear on the bm29, this should be disabled, only panda ones should appear
Attached patch fix pandasSplinter Review
Attachment #678604 - Flags: review?(bugspam.Callek)
Attachment #678604 - Flags: review?(bugspam.Callek) → review+
Last patch is in production
Depends on: 808951
As imaged in bug 820825 (pandas-[0808-0873] which are panda-chassis-[073-078])
Attachment #691511 - Flags: review?(bugspam.Callek)
Comment on attachment 691511 [details] [diff] [review]
patch to add 66 pandas to production + enable bm44

Review of attachment 691511 [details] [diff] [review]:
-----------------------------------------------------------------

Beyond skimming I did not do a close sanity check (e.g. are the panda-relays/id's correct, is there a typo in there, etc. I leave as a 'I trust you did it right')

I did however verify that all relay's used are identified as "Configured" in Bug 809932 properly.

::: buildfarm/mobile/devices.json
@@ +2306,5 @@
> +    "panda-0840": {
> +        "foopy": "foopy99",
> +        "relayhost": "panda-relay-075.p9.releng.scl1.mozilla.com",
> +        "relayid": "2:7"
> +    },    

nit whitespace EOL
Attachment #691511 - Flags: review?(bugspam.Callek) → review+
Attachment #691511 - Flags: checked-in+
Attachment #691920 - Flags: review?(bugspam.Callek)
Attachment #691920 - Flags: review?(bugspam.Callek) → review+
(In reply to Justin Wood (:Callek) from comment #21)
> Comment on attachment 691511 [details] [diff] [review]
> patch to add 66 pandas to production + enable bm44

So, nick just hit probs while reconfig'ing this host, since its auth_keys was out of date. And I also noticed the master was not even started.

While I was there I also noticed it didn't have any keys on the host, which is needed for log uploads. for histroy. I added the keys (recursive scp from bm22), but did not start the master.
Blocks: 820827
Attachment #691920 - Flags: checked-in+
Attachment #692318 - Flags: review?(bugspam.Callek)
Comment on attachment 692318 [details] [diff] [review]
patch to fix how foopies line up

Review of attachment 692318 [details] [diff] [review]:
-----------------------------------------------------------------

::: buildfarm/mobile/devices.json
@@ +2308,3 @@
>          "relayhost": "panda-relay-075.p9.releng.scl1.mozilla.com",
>          "relayid": "2:7"
>      },    

nit whitespace EOL
Attachment #692318 - Flags: review?(bugspam.Callek) → review+
Attachment #692318 - Flags: checked-in+
Note:   This patch is just to assign the pandas to foopies in racks 7 and 8.  There are still some more to be assigned in rack 9.  

I didn't realize that we should be assigning 12 or 13 boards to each foopy when I set up the 66 pandas (rack 9) earlier. Previously, I assigned 11 boards so each chassis would map to a foopy. But this doesn't scale because we don't have enough foopies in the matching network to do this.

I'll reorganize the board assignments for the foopies in rack 9 once these new boards are online.
Attachment #697467 - Flags: review?(armenzg)
Comment on attachment 697467 [details] [diff] [review]
add new pandas in racks 7 and 8 as requested in bug 824766

I attached in some bug a script that helps sorting out the assignment of boards to foopies taking into consideration the 88 to 7 foopies ratio.

Tangential to the patch:
Is rack #6 going to be fully used? I only see some of its devices listed on devices.json.
Attachment #697467 - Flags: review?(armenzg) → review+
Thanks for the review Armen.

Right now Joel is just using some of the devices in rack 6, see bug 825876 for details.  I assume we'll use the rest if them too.
Attachment #697467 - Flags: checked-in+
What is left on this bug? (trying to do new year cleanup)
The only thing that's left is to do is to update the devices.json as I put more panda boards into production so I can attach those patches to other bugs.  Closing.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Product: mozilla.org → Release Engineering
Component: Platform Support → Buildduty
Product: Release Engineering → Infrastructure & Operations
Product: Infrastructure & Operations → Infrastructure & Operations Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: