Schedule all non-perf unittests against Linux64 Code Coverage builds on Cedar

RESOLVED FIXED

Status

Release Engineering
General Automation
RESOLVED FIXED
3 years ago
3 years ago

People

(Reporter: ahal, Assigned: ahal)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(2 attachments, 2 obsolete attachments)

(Assignee)

Description

3 years ago
Additionally, we need to set the GCOV_PREFIX environment variable to the directory we want the .gdca files saved in.
(Assignee)

Updated

3 years ago
Assignee: nobody → ahalberstadt
Status: NEW → ASSIGNED
(Assignee)

Comment 1

3 years ago
Do we want to run both opt and debug unittests? Or just one or the other?
Flags: needinfo?(Pidgeot18)
(Assignee)

Comment 2

3 years ago
Created attachment 8474527 [details] [diff] [review]
linux64_cc_tests_cedar

This patch should enable both debug and opt. I think this is what we want to do since some tests only run on one or the other (though we will get duplicate numbers if we do this).

Jordan, I think this patch is what we need.. though I'm not really sure how (or if) this gets tied to the build.
Attachment #8474527 - Flags: review?(jlund)
(Assignee)

Comment 3

3 years ago
Hm hang on, I guess we aren't even doing debug code coverage builds yet. I think in that case enabling debug unittests here are a no-op.
(Assignee)

Updated

3 years ago
Flags: needinfo?(Pidgeot18)
Comment on attachment 8474527 [details] [diff] [review]
linux64_cc_tests_cedar

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

I think this patch will yield a no-op.

we will need something like this[1] as PLATFORMS are used throughout this file like here[2]. It is used to describe all our known platforms. I know it seems like it is talos only but IIUC this file was originally for Talos only and unittest stuff was mingled together with it. It's confusing to me too. Note, we don't need the talos_config like here[3]

I'm around if you need any help :)

[1] http://mxr.mozilla.org/build/source/buildbot-configs/mozilla-tests/config.py#222
[2] http://mxr.mozilla.org/build/source/buildbot-configs/mozilla-tests/config.py#1514
[3] http://mxr.mozilla.org/build/source/buildbot-configs/mozilla-tests/config.py#228

::: mozilla-tests/config.py
@@ +2028,5 @@
> +for name in BRANCHES.keys():
> +    if name in ('cedar',):
> +        continue
> +    for platform in ('linux64-cc',):
> +        if platform in BRANCHES[name]'platforms']:

typo: s/]'platforms']/]['platforms']/
Attachment #8474527 - Flags: review?(jlund) → review-
(In reply to Jordan Lund (:jlund) from comment #4)
> Comment on attachment 8474527 [details] [diff] [review]
> linux64_cc_tests_cedar
> 
> Review of attachment 8474527 [details] [diff] [review]:
> -----------------------------------------------------------------
> 
> I think this patch will yield a no-op.
> 
> we will need something like this[1] as PLATFORMS are used throughout this
> file like here[2]. It is used to describe all our known platforms. I know it
> seems like it is talos only but IIUC this file was originally for Talos only
> and unittest stuff was mingled together with it. It's confusing to me too.
> Note, we don't need the talos_config like here[3]
> 
> I'm around if you need any help :)
> 
> [1]
> http://mxr.mozilla.org/build/source/buildbot-configs/mozilla-tests/config.
> py#222
> [2]
> http://mxr.mozilla.org/build/source/buildbot-configs/mozilla-tests/config.
> py#1514
> [3]
> http://mxr.mozilla.org/build/source/buildbot-configs/mozilla-tests/config.
> py#228
> 
> ::: mozilla-tests/config.py
> @@ +2028,5 @@
> > +for name in BRANCHES.keys():
> > +    if name in ('cedar',):
> > +        continue
> > +    for platform in ('linux64-cc',):
> > +        if platform in BRANCHES[name]'platforms']:
> 
> typo: s/]'platforms']/]['platforms']/

everything else I *think* looks good
(Assignee)

Comment 6

3 years ago
Created attachment 8475129 [details] [diff] [review]
linux64_cc_tests_cedar

Thanks, fixed the typo and added an entry to PLATFORMS.
Attachment #8474527 - Attachment is obsolete: true
Attachment #8475129 - Flags: review?(jlund)
Comment on attachment 8475129 [details] [diff] [review]
linux64_cc_tests_cedar

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

cool r+ with in-line change.

I think this will 'just work'. our cc builds will call a unittest sendchange:
e.g. 17:39:46     INFO - Copy/paste: /tools/buildbot/bin/buildbot sendchange --master buildbot-master81.build.mozilla.org:9301 --username sendchange-unittest --branch cedar-linux64-cc-opt-unittest -r 545c16c783530b07a29e001e5c0f9645fe7fa5ff --username james@hoppipolla.co.uk --comments "Update web-platform-tests to revision 7a53a49e4ad0f9d34680b2ba08af31cf62eaf103" --property buildid:20140819163030 --property pgo_build:False --property builduid:ba2b23f6bec1488da4d78f0090de4c35 --property nightly_build:False http://ftp.mozilla.org/pub/mozilla.org/firefox/tinderbox-builds/cedar-linux64-cc/1408491030/firefox-34.0a1.en-US.linux-x86_64.tar.bz2 http://ftp.mozilla.org/pub/mozilla.org/firefox/tinderbox-builds/cedar-linux64-cc/1408491030/firefox-34.0a1.en-US.linux-x86_64.tests.zip

where '--branch cedar-linux64-cc-opt-unittest' will be interpreted and the tests will run along side it. my memory is a bit funny with tbpl. If you're not confident, it be worth pinging sheriffs to see if we need a tbpl patch for the unittests so they show up correctly.

IIRC we discovered that we need one for code coverage builds cause they are showing up under linux64 opt. we should fix that first so the tests are not mingled in between that too.

::: mozilla-tests/config.py
@@ +214,5 @@
>      'config_file': 'talos/linux_config.py',
>  }
>  
> +PLATFORMS['linux64-cc']['slave_platforms'] = ['ubuntu64_vm']
> +PLATFORMS['linux64-cc']['ubuntu64_vm'] = {'name': 'Ubuntu Code Coverage VM 12.04 x64'}

I think this part needs to be like linux64-mulet so:

PLATFORMS['linux64-cc']['ubuntu64_vm'] = {
    'name': 'Ubuntu Code Coverage VM 12.04 x64',
    'build_dir_prefix': 'ubuntu64_vm_cc',
    'scheduler_slave_platform_identifier': 'ubuntu64_vm_cc'
}

without build_dir_prefix, we will end up trying to create duplicate builderdir's on our slaves as it will end up looking exactly like linux64

IOW - without it, 'Ubuntu Code Coverage VM 12.04 x64 cedar opt test mochitest-1' will use builddir cedar_ubuntu64_vm_test-mochitest-1 instead of cedar_ubuntu64_vm_cc_test-mochitest-1
Attachment #8475129 - Flags: review?(jlund) → review+
(Assignee)

Comment 8

3 years ago
(In reply to Jordan Lund (:jlund) from comment #7)
> where '--branch cedar-linux64-cc-opt-unittest' will be interpreted and the
> tests will run along side it. my memory is a bit funny with tbpl. If you're
> not confident, it be worth pinging sheriffs to see if we need a tbpl patch
> for the unittests so they show up correctly.
> 
> IIRC we discovered that we need one for code coverage builds cause they are
> showing up under linux64 opt. we should fix that first so the tests are not
> mingled in between that too.

Cedar is un-sheriffed, so I don't think it matters if it's alongside the other build or not for now, but yeah I'll need to fix it before it rolls out across other branches.
(Assignee)

Comment 9

3 years ago
Created attachment 8475868 [details] [diff] [review]
linux64_cc_tests_cedar

Updated patch with build_dir_prefix change, carry forward r+
Attachment #8475129 - Attachment is obsolete: true
Attachment #8475868 - Flags: review+
(Assignee)

Comment 10

3 years ago
Comment on attachment 8475868 [details] [diff] [review]
linux64_cc_tests_cedar

https://hg.mozilla.org/build/buildbot-configs/rev/b3b46d1bcc14

I'll file a follow up for getting this to show up in tbpl properly depending how it looks.
Attachment #8475868 - Flags: checked-in+
In production with reconfig on 2014-08-20 07:47 PT
(Assignee)

Comment 12

3 years ago
This seems to be working, I'll file a follow up for fixing tbpl to display these builds on a new line.
Status: ASSIGNED → RESOLVED
Last Resolved: 3 years ago
Resolution: --- → FIXED
Jobs are being scheduled, but there are no builders on the masters to run them. I think you need to add 'linux64-cc' to lists like
 http://hg.mozilla.org/build/tools/file/default/buildfarm/maintenance/production-masters.json#l307
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
(Assignee)

Comment 14

3 years ago
Created attachment 8478250 [details] [diff] [review]
Add linux64-cc to production-masters.json

Thanks for the tip!
Attachment #8478250 - Flags: review?(jlund)
Comment on attachment 8478250 [details] [diff] [review]
Add linux64-cc to production-masters.json

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

ah yes, we have to explicitly say what test masters can do. build masters are different as they can do any platform/variant.

we only have one branch in tools. land whenever and it will be picked up on our next reconfig :)
Attachment #8478250 - Flags: review?(jlund) → review+
(Assignee)

Comment 16

3 years ago
Comment on attachment 8478250 [details] [diff] [review]
Add linux64-cc to production-masters.json

Thanks!

https://hg.mozilla.org/build/tools/rev/9fb48b394c11
Attachment #8478250 - Flags: checked-in+
(Assignee)

Comment 17

3 years ago
Tests are now being scheduled and run on Cedar. They are hitting an early exception, but that is not because of this bug. Resolving.
Status: REOPENED → RESOLVED
Last Resolved: 3 years ago3 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.