Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Do not merge] Sync WPT with upstream (04-12-2019), from Linux #25086

Closed
Closed
Changes from 1 commit
Commits
File filter...
Filter file types
Jump to…
Jump to file
Failed to load files.

Always

Just for now

Next

Move WPT update task to Linux

  • Loading branch information
SimonSapin committed Dec 4, 2019
commit 533735e9a15ab7f8615aba0bfdcfa61172f54d9a
@@ -67,7 +67,7 @@ function cleanup() {
# Build Servo and run the full WPT testsuite, saving the results to a log file.
function unsafe_run_tests() {
# Run the full testsuite and record the new test results.
./mach test-wpt --release --processes 6 --log-raw "${1}" \
./mach test-wpt --release --processes 12 --log-raw "${1}" \
--always-succeed || return 1

# Run the bluetooth testsuite, which uses the webdriver test harness.
@@ -579,28 +579,22 @@ def macos_nightly():


def update_wpt():
build_task = macos_release_build_with_debug_assertions()
update_task = (
macos_task("WPT update")
.with_python2()
.with_treeherder("macOS x64", "WPT update")
build_task = linux_release_build_with_debug_assertions(layout_2020=False)
return (
linux_task("WPT update")
.with_treeherder("Linux x64", "WPT update")
.with_dockerfile(dockerfile_path("run"))
.with_features("taskclusterProxy")
.with_scopes("secrets:get:project/servo/wpt-sync")
.with_index_and_artifacts_expire_in(log_artifacts_expire_in)
.with_max_run_time_minutes(8 * 60)
# Not using the bundle, pushing the new changes to the git remote requires a full repo.
.with_repo(alternate_object_dir="/var/cache/servo.git/objects")
)
return (
with_homebrew(update_task, [
"etc/taskcluster/macos/Brewfile-wpt-update",
"etc/taskcluster/macos/Brewfile",
])
.with_repo()
.with_curl_artifact_script(build_task, "target.tar.gz")
.with_script("""
export PKG_CONFIG_PATH="$(brew --prefix libffi)/lib/pkgconfig/"
tar -xzf target.tar.gz
./etc/ci/update-wpt-checkout fetch-and-update-expectations
# Use `cat` to force wptrunner’s non-interactive mode
./etc/ci/update-wpt-checkout fetch-and-update-expectations | cat
./etc/ci/update-wpt-checkout open-pr
./etc/ci/update-wpt-checkout cleanup
""")
@@ -627,32 +621,7 @@ def macos_release_build_with_debug_assertions(priority=None):
)


def macos_wpt():
priority = "high" if CONFIG.git_ref == "refs/heads/auto" else None
build_task = macos_release_build_with_debug_assertions(priority=priority)
def macos_run_task(name):
task = macos_task(name).with_python2() \
.with_repo_bundle(alternate_object_dir="/var/cache/servo.git/objects")
return with_homebrew(task, ["etc/taskcluster/macos/Brewfile"])
wpt_chunks(
"macOS x64",
macos_run_task,
build_task,
repo_dir="repo",
total_chunks=30,
processes=4,
)


def linux_wpt():
linux_wpt_common(total_chunks=4, layout_2020=False)


def linux_wpt_layout_2020():
linux_wpt_common(total_chunks=1, layout_2020=True)


def linux_wpt_common(total_chunks, layout_2020):
def linux_release_build_with_debug_assertions(layout_2020):
if layout_2020:
name_prefix = "Layout 2020 "
build_args = "--with-layout-2020"
@@ -661,7 +630,7 @@ def linux_wpt_common(total_chunks, layout_2020):
name_prefix = ""
build_args = ""
index_key_suffix = ""
release_build_task = (
return (
linux_build_task(name_prefix + "Release build, with debug assertions")
.with_treeherder("Linux x64", "Release+A")
.with_script("""
@@ -681,6 +650,35 @@ def linux_wpt_common(total_chunks, layout_2020):
CONFIG.task_id(),
))
)


def macos_wpt():
priority = "high" if CONFIG.git_ref == "refs/heads/auto" else None
build_task = macos_release_build_with_debug_assertions(priority=priority)
def macos_run_task(name):
task = macos_task(name).with_python2() \
.with_repo_bundle(alternate_object_dir="/var/cache/servo.git/objects")
return with_homebrew(task, ["etc/taskcluster/macos/Brewfile"])
wpt_chunks(
"macOS x64",
macos_run_task,
build_task,
repo_dir="repo",
total_chunks=30,
processes=4,
)


def linux_wpt():
linux_wpt_common(total_chunks=4, layout_2020=False)


def linux_wpt_layout_2020():
linux_wpt_common(total_chunks=1, layout_2020=True)


def linux_wpt_common(total_chunks, layout_2020):
release_build_task = linux_release_build_with_debug_assertions(layout_2020)
def linux_run_task(name):
return linux_task(name).with_dockerfile(dockerfile_path("run")).with_repo_bundle()
wpt_chunks("Linux x64", linux_run_task, release_build_task, repo_dir="/repo",
ProTip! Use n and p to navigate between commits in a pull request.
You can’t perform that action at this time.