зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1508828 - Add a task to run standalone WebRender CI scripts on Windows. r=glandium,jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D15412 --HG-- extra : moz-landing-system : lando
This commit is contained in:
Родитель
b28ebd54d3
Коммит
684b20393f
|
@ -0,0 +1,26 @@
|
|||
[
|
||||
{
|
||||
"version": "Visual Studio 2017 15.8.4 / SDK 10.0.17134.0",
|
||||
"digest": "ecf1e03f6f98f86775059a43f9e7dc7e326f6643d7c08962d9f614e4f5a65b1ca63fa1cfeb0f1a3c2474bf0d4318dda960b378beb2a44ecf8a91111207f4ece5",
|
||||
"size": 349626009,
|
||||
"algorithm": "sha512",
|
||||
"filename": "vs2017_15.8.4.zip",
|
||||
"unpack": true
|
||||
},
|
||||
{
|
||||
"version": "CMake 3.6.2 repack",
|
||||
"size": 19832889,
|
||||
"digest": "39b0508b60f655969d1b54c76753b14b5b2e92dab58613c835aed798a6aeb9077a7df78aebc011c2c753661fdc15007d3353c0c8773a53148380e2ec02afb629",
|
||||
"algorithm": "sha512",
|
||||
"filename": "cmake362.zip",
|
||||
"unpack": true
|
||||
},
|
||||
{
|
||||
"version": "Ninja 1.7.1",
|
||||
"size": 184821,
|
||||
"digest": "e4f9a1ae624a2630e75264ba37d396d9c7407d6e6aea3763056210ba6e1387908bd31cf4037a6a3661a418e86c4d2761e0c333e6a3bd0d66549d2b0d72d3f43b",
|
||||
"algorithm": "sha512",
|
||||
"filename": "ninja171.zip",
|
||||
"unpack": true
|
||||
}
|
||||
]
|
|
@ -19,7 +19,6 @@ job-defaults:
|
|||
kind: other
|
||||
worker:
|
||||
max-run-time: 1800
|
||||
docker-image: {in-tree: webrender}
|
||||
env:
|
||||
RUST_BACKTRACE: 'full'
|
||||
RUSTFLAGS: '--deny warnings'
|
||||
|
@ -28,6 +27,8 @@ jobs:
|
|||
lint-tidy:
|
||||
description: Runs linting checks on WebRender code
|
||||
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
|
||||
worker:
|
||||
docker-image: {in-tree: webrender}
|
||||
run:
|
||||
using: run-task
|
||||
command: >-
|
||||
|
@ -43,6 +44,8 @@ jobs:
|
|||
linux-release:
|
||||
description: Runs release-mode WebRender CI tests on a Linux worker
|
||||
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
|
||||
worker:
|
||||
docker-image: {in-tree: webrender}
|
||||
toolchains:
|
||||
- linux64-rust
|
||||
- wrench-deps
|
||||
|
@ -66,6 +69,8 @@ jobs:
|
|||
linux-debug:
|
||||
description: Runs debug-mode WebRender CI tests on a Linux worker
|
||||
worker-type: aws-provisioner-v1/gecko-{level}-b-linux
|
||||
worker:
|
||||
docker-image: {in-tree: webrender}
|
||||
toolchains:
|
||||
- linux64-rust
|
||||
- wrench-deps
|
||||
|
@ -85,3 +90,27 @@ jobs:
|
|||
when:
|
||||
files-changed:
|
||||
- 'gfx/wr/**'
|
||||
|
||||
windows:
|
||||
description: Runs WebRender CI tests on a Windows worker
|
||||
worker-type: aws-provisioner-v1/gecko-t-win10-64
|
||||
worker:
|
||||
max-run-time: 5400
|
||||
env:
|
||||
TOOLTOOL_MANIFEST: 'browser/config/tooltool-manifests/win64/webrender.manifest'
|
||||
toolchains:
|
||||
- win64-rust
|
||||
- wrench-deps
|
||||
run:
|
||||
using: run-task
|
||||
command: '$GECKO_PATH/taskcluster/scripts/misc/wrench-windows-tests.sh'
|
||||
treeherder:
|
||||
platform: windows10-64-qr/release
|
||||
symbol: WR(wrench)
|
||||
when:
|
||||
files-changed:
|
||||
- 'build/win64/mozconfig.vs2017'
|
||||
- 'browser/config/tooltool-manifests/win64/webrender.manifest'
|
||||
- 'gfx/wr/**'
|
||||
- 'taskcluster/scripts/misc/tooltool-download.sh'
|
||||
- 'taskcluster/scripts/misc/wrench-windows-tests.sh'
|
||||
|
|
|
@ -0,0 +1,58 @@
|
|||
#!/bin/bash
|
||||
set -x -e -v
|
||||
|
||||
# This script runs the windows CI scripts for standalone WebRender. The CI
|
||||
# scripts build WebRender in various "standalone" (without Gecko)
|
||||
# configurations and also run WebRender's reftest suite using the `wrench`
|
||||
# tool in the WebRender repository.
|
||||
# The builds involved require a number of dependencies to be available,
|
||||
# which is all handled below.
|
||||
|
||||
cd $GECKO_PATH
|
||||
|
||||
# This will download the rustc, cmake, ninja, MSVC, and wrench-deps artifacts.
|
||||
WORKSPACE="$PWD/../../" taskcluster/scripts/misc/tooltool-download.sh
|
||||
export PATH=$PATH:$PWD/rustc/bin:$PWD/cmake/bin:$PWD/ninja/bin
|
||||
|
||||
# We will be sourcing mozconfig files, which end up calling mk_add_options with
|
||||
# various settings. We only need the variable settings they create along the
|
||||
# way. Define mk_add_options as empty so the variables are defined but nothing
|
||||
# else happens.
|
||||
# This is adapted from the start of js/src/devtools/automation/winbuildenv.sh
|
||||
# which does a similar thing.
|
||||
mk_add_options() {
|
||||
:
|
||||
}
|
||||
|
||||
export topsrcdir=$PWD
|
||||
. $topsrcdir/build/win64/mozconfig.vs2017
|
||||
|
||||
# In the msys bash that we're running in, environment variables containing paths
|
||||
# will *sometimes* get converted to windows format on their own, but it doesn't
|
||||
# happen consistently. See bug 1508828 around comment 9 onwards for some details.
|
||||
# To ensure we consistently convert the INCLUDE and LIB variables that MSVC
|
||||
# needs for building stuff, we do it here explicitly.
|
||||
|
||||
convert_path_to_win() {
|
||||
echo $1 |
|
||||
sed -e 's#:#\n#g' | # split path components into separate lines
|
||||
sed -e 's#^/\(.\)/#\1:/#' | # replace first path component (if one letter) with equivalent drive letter
|
||||
sed -e 's#/#\\#g' | # convert all forward slashes to backslashes
|
||||
paste -s -d ';' # glue the lines back together
|
||||
}
|
||||
|
||||
export INCLUDE=$(convert_path_to_win "$INCLUDE")
|
||||
export LIB=$(convert_path_to_win "$LIB")
|
||||
|
||||
# Move the wrench-deps vendored crates into place
|
||||
mv wrench-deps/{vendor,.cargo} gfx/wr
|
||||
cd gfx/wr
|
||||
|
||||
# This is needed for the WebRender standalone reftests
|
||||
powershell.exe 'iex (Get-Content -Raw ci-scripts\set-screenresolution.ps1); Set-ScreenResolution 1920 1080'
|
||||
|
||||
# Run the CI scripts
|
||||
export CARGOFLAGS='--verbose --frozen'
|
||||
export FREETYPE_CMAKE_GENERATOR=Ninja
|
||||
cmd.exe /c 'ci-scripts\windows-tests.cmd'
|
||||
cmd.exe /c 'ci-scripts\windows-pathfinder.cmd'
|
Загрузка…
Ссылка в новой задаче