Bug 1463190 - Add forced-MSVC builds to CI to keep that platform green. r=ted

This commit is contained in:
David Major 2018-07-09 18:22:45 -04:00
Родитель 71c8139e52
Коммит 2d44c25242
9 изменённых файлов: 204 добавлений и 7 удалений

Просмотреть файл

@ -0,0 +1,5 @@
. "$topsrcdir/browser/config/mozconfigs/win32/debug"
export CC="cl.exe"
export CXX="cl.exe"
export LINKER="link.exe"

Просмотреть файл

@ -0,0 +1,5 @@
. "$topsrcdir/browser/config/mozconfigs/win32/nightly"
export CC="cl.exe"
export CXX="cl.exe"
export LINKER="link.exe"

Просмотреть файл

@ -0,0 +1,5 @@
. "$topsrcdir/browser/config/mozconfigs/win64/debug"
export CC="cl.exe"
export CXX="cl.exe"
export LINKER="link.exe"

Просмотреть файл

@ -0,0 +1,5 @@
. "$topsrcdir/browser/config/mozconfigs/win64/nightly"
export CC="cl.exe"
export CXX="cl.exe"
export LINKER="link.exe"

Просмотреть файл

@ -765,6 +765,134 @@ win32-mingw32/opt:
- linux64-mingw32-nsis - linux64-mingw32-nsis
- linux64-mingw32-fxc2 - linux64-mingw32-fxc2
win32-msvc/debug:
description: "Win32 MSVC Debug"
index:
product: firefox
job-name: win32-msvc-debug
treeherder:
platform: windows2012-32/debug
symbol: Bmsvc
tier: 2
worker-type: aws-provisioner-v1/gecko-{level}-b-win2012
worker:
max-run-time: 7200
env:
TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win32/releng.manifest"
PERFHERDER_EXTRA_OPTIONS: msvc
run:
using: mozharness
options: [append-env-variables-from-configs]
script: mozharness/scripts/fx_desktop_build.py
config:
- builds/releng_base_firefox.py
- builds/taskcluster_base_windows.py
- builds/taskcluster_base_win32.py
- builds/taskcluster_sub_win32/debug.py
extra-config:
mozconfig_variant: 'debug-msvc'
run-on-projects: ['mozilla-central']
toolchains:
- win64-clang-cl
- win64-rust
- win64-sccache
win32-msvc/opt:
description: "Win32 MSVC Opt"
index:
product: firefox
job-name: win32-msvc-opt
treeherder:
platform: windows2012-32/opt
symbol: Bmsvc
tier: 2
worker-type: aws-provisioner-v1/gecko-{level}-b-win2012
worker:
max-run-time: 7200
env:
TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win32/releng.manifest"
PERFHERDER_EXTRA_OPTIONS: msvc
run:
using: mozharness
options: [append-env-variables-from-configs]
script: mozharness/scripts/fx_desktop_build.py
config:
- builds/releng_base_firefox.py
- builds/taskcluster_base_windows.py
- builds/taskcluster_base_win32.py
- builds/taskcluster_sub_win32/opt.py
extra-config:
mozconfig_variant: 'opt-msvc'
run-on-projects: ['mozilla-central']
toolchains:
- win64-clang-cl
- win64-rust
- win64-sccache
win64-msvc/debug:
description: "Win64 MSVC Debug"
index:
product: firefox
job-name: win64-msvc-debug
treeherder:
platform: windows2012-64/debug
symbol: Bmsvc
tier: 2
worker-type: aws-provisioner-v1/gecko-{level}-b-win2012
worker:
max-run-time: 7200
env:
TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win64/releng.manifest"
PERFHERDER_EXTRA_OPTIONS: msvc
run:
using: mozharness
options: [append-env-variables-from-configs]
script: mozharness/scripts/fx_desktop_build.py
config:
- builds/releng_base_firefox.py
- builds/taskcluster_base_windows.py
- builds/taskcluster_base_win64.py
- builds/taskcluster_sub_win64/debug.py
extra-config:
mozconfig_variant: 'debug-msvc'
run-on-projects: ['mozilla-central']
toolchains:
- win64-clang-cl
- win64-rust
- win64-sccache
win64-msvc/opt:
description: "Win64 MSVC Opt"
index:
product: firefox
job-name: win64-msvc-opt
treeherder:
platform: windows2012-64/opt
symbol: Bmsvc
tier: 2
worker-type: aws-provisioner-v1/gecko-{level}-b-win2012
worker:
max-run-time: 7200
env:
TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win64/releng.manifest"
PERFHERDER_EXTRA_OPTIONS: msvc
run:
using: mozharness
options: [append-env-variables-from-configs]
script: mozharness/scripts/fx_desktop_build.py
config:
- builds/releng_base_firefox.py
- builds/taskcluster_base_windows.py
- builds/taskcluster_base_win64.py
- builds/taskcluster_sub_win64/opt.py
extra-config:
mozconfig_variant: 'opt-msvc'
run-on-projects: ['mozilla-central']
toolchains:
- win64-clang-cl
- win64-rust
- win64-sccache
win32-mingw32/debug: win32-mingw32/debug:
description: "Win32 MinGW Debug" description: "Win32 MinGW Debug"
index: index:

Просмотреть файл

@ -127,6 +127,12 @@ windows7-32/debug:
- windows-reftest-gpu - windows-reftest-gpu
- windows-tests - windows-tests
windows7-32-msvc/debug:
build-platform: win32-msvc/debug
test-sets:
- windows-reftest-gpu
- windows-tests
windows7-32/opt: windows7-32/opt:
build-platform: win32/opt build-platform: win32/opt
test-sets: test-sets:
@ -162,6 +168,15 @@ windows7-32-devedition/opt:
- windows-reftest-gpu - windows-reftest-gpu
- windows-tests - windows-tests
windows7-32-msvc/opt:
build-platform: win32-msvc/opt
test-sets:
- awsy
- desktop-screenshot-capture
- windows-reftest-gpu
- windows-talos
- windows-tests
# win64 # win64
windows10-64-ccov/debug: windows10-64-ccov/debug:
build-platform: win64-ccov/debug build-platform: win64-ccov/debug
@ -178,6 +193,12 @@ windows10-64/debug:
- windows-tests - windows-tests
- mochitest-headless - mochitest-headless
windows10-64-msvc/debug:
build-platform: win64-msvc/debug
test-sets:
- windows-tests
- mochitest-headless
windows10-64/opt: windows10-64/opt:
build-platform: win64/opt build-platform: win64/opt
test-sets: test-sets:
@ -217,6 +238,15 @@ windows10-64-asan/opt:
test-sets: test-sets:
- common-tests - common-tests
windows10-64-msvc/opt:
build-platform: win64-msvc/opt
test-sets:
- awsy
- desktop-screenshot-capture
- windows-talos
- windows-tests
- mochitest-headless
# QR builds just run a subset right now. # QR builds just run a subset right now.
windows10-64-qr/debug: windows10-64-qr/debug:
build-platform: win64/debug build-platform: win64/debug

Просмотреть файл

@ -10,7 +10,9 @@ from taskgraph.loader.single_dep import loader as base_loader
# patch because it required some heavy changes in single_dep. # patch because it required some heavy changes in single_dep.
NON_NIGHTLY_LABELS_WHICH_SHOULD_SIGN_BUILDS = ( NON_NIGHTLY_LABELS_WHICH_SHOULD_SIGN_BUILDS = (
'build-win32/debug', 'build-win32/opt', 'build-win32/pgo', 'build-win32/debug', 'build-win32/opt', 'build-win32/pgo',
'build-win32-msvc/debug', 'build-win32-msvc/opt',
'build-win64/debug', 'build-win64/opt', 'build-win64/pgo', 'build-win64/debug', 'build-win64/opt', 'build-win64/pgo',
'build-win64-msvc/debug', 'build-win64-msvc/opt',
'build-win32-devedition/opt', 'build-win64-devedition/opt', 'build-win32-devedition/opt', 'build-win64-devedition/opt',
'build-win64-ccov/debug', 'build-win64-ccov/debug',
'build-linux/opt', 'build-linux64/opt', 'build-macosx64/opt', 'build-linux/opt', 'build-linux64/opt', 'build-macosx64/opt',

Просмотреть файл

@ -110,7 +110,6 @@ def make_task_description(config, jobs):
treeherder = None treeherder = None
if 'partner' not in config.kind and 'eme-free' not in config.kind: if 'partner' not in config.kind and 'eme-free' not in config.kind:
treeherder = job.get('treeherder', {}) treeherder = job.get('treeherder', {})
treeherder.setdefault('symbol', _generate_treeherder_symbol(is_nightly, config.kind))
dep_th_platform = dep_job.task.get('extra', {}).get( dep_th_platform = dep_job.task.get('extra', {}).get(
'treeherder', {}).get('machine', {}).get('platform', '') 'treeherder', {}).get('machine', {}).get('platform', '')
@ -119,8 +118,16 @@ def make_task_description(config, jobs):
treeherder.setdefault('platform', _generate_treeherder_platform( treeherder.setdefault('platform', _generate_treeherder_platform(
dep_th_platform, build_platform, build_type dep_th_platform, build_platform, build_type
)) ))
treeherder.setdefault('symbol', _generate_treeherder_symbol(
is_nightly, build_platform
))
treeherder.setdefault('tier', 1 if '-ccov' not in build_platform else 2) # ccov and msvc builds are tier 2, so they cannot have tier 1 tasks
# depending on them.
if '-ccov' in build_platform or '-msvc' in build_platform:
treeherder.setdefault('tier', 2)
else:
treeherder.setdefault('tier', 1)
treeherder.setdefault('kind', 'build') treeherder.setdefault('kind', 'build')
label = job['label'] label = job['label']
@ -178,8 +185,8 @@ def _generate_treeherder_platform(dep_th_platform, build_platform, build_type):
return '{}/{}'.format(dep_th_platform, actual_build_type) return '{}/{}'.format(dep_th_platform, actual_build_type)
def _generate_treeherder_symbol(is_nightly, kind): def _generate_treeherder_symbol(is_nightly, build_platform):
if is_nightly: symbol = 'Ns' if is_nightly else 'Bs'
return 'Ns' if '-msvc' in build_platform:
else: symbol += '-msvc'
return 'Bs' return symbol

Просмотреть файл

@ -72,6 +72,11 @@ WINDOWS_WORKER_TYPES = {
'virtual-with-gpu': 'aws-provisioner-v1/gecko-t-win7-32-gpu', 'virtual-with-gpu': 'aws-provisioner-v1/gecko-t-win7-32-gpu',
'hardware': 'releng-hardware/gecko-t-win10-64-hw', 'hardware': 'releng-hardware/gecko-t-win10-64-hw',
}, },
'windows7-32-msvc': {
'virtual': 'aws-provisioner-v1/gecko-t-win7-32',
'virtual-with-gpu': 'aws-provisioner-v1/gecko-t-win7-32-gpu',
'hardware': 'releng-hardware/gecko-t-win10-64-hw',
},
'windows10-64': { 'windows10-64': {
'virtual': 'aws-provisioner-v1/gecko-t-win10-64', 'virtual': 'aws-provisioner-v1/gecko-t-win10-64',
'virtual-with-gpu': 'aws-provisioner-v1/gecko-t-win10-64-gpu', 'virtual-with-gpu': 'aws-provisioner-v1/gecko-t-win10-64-gpu',
@ -102,6 +107,11 @@ WINDOWS_WORKER_TYPES = {
'virtual-with-gpu': 'aws-provisioner-v1/gecko-t-win10-64-gpu', 'virtual-with-gpu': 'aws-provisioner-v1/gecko-t-win10-64-gpu',
'hardware': 'releng-hardware/gecko-t-win10-64-hw', 'hardware': 'releng-hardware/gecko-t-win10-64-hw',
}, },
'windows10-64-msvc': {
'virtual': 'aws-provisioner-v1/gecko-t-win10-64',
'virtual-with-gpu': 'aws-provisioner-v1/gecko-t-win10-64-gpu',
'hardware': 'releng-hardware/gecko-t-win10-64-hw',
},
'windows10-64-qr': { 'windows10-64-qr': {
'virtual': 'aws-provisioner-v1/gecko-t-win10-64', 'virtual': 'aws-provisioner-v1/gecko-t-win10-64',
'virtual-with-gpu': 'aws-provisioner-v1/gecko-t-win10-64-gpu', 'virtual-with-gpu': 'aws-provisioner-v1/gecko-t-win10-64-gpu',