Closed Bug 1054641 Opened 10 years ago Closed 10 years ago

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

Categories

(Release Engineering :: General, defect)

x86_64
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: ahal, Assigned: ahal)

References

Details

Attachments

(2 files, 2 obsolete files)

Additionally, we need to set the GCOV_PREFIX environment variable to the directory we want the .gdca files saved in.
Assignee: nobody → ahalberstadt
Status: NEW → ASSIGNED
Do we want to run both opt and debug unittests? Or just one or the other?
Flags: needinfo?(Pidgeot18)
Attached patch linux64_cc_tests_cedar (obsolete) (deleted) — Splinter Review
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)
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.
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
Attached patch linux64_cc_tests_cedar (obsolete) (deleted) — Splinter Review
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+
(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.
Attached patch linux64_cc_tests_cedar (deleted) — Splinter Review
Updated patch with build_dir_prefix change, carry forward r+
Attachment #8475129 - Attachment is obsolete: true
Attachment #8475868 - Flags: review+
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
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
Closed: 10 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 → ---
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+
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+
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
Closed: 10 years ago10 years ago
Resolution: --- → FIXED
Component: General Automation → General
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: