Auto merge of #24679 - servo:try-windows-ami, r=jdm

Run non-macOS tasks on Community-TC for push events

These tasks will run on *both* TC deployments, and with https://github.com/servo/saltfs/pull/983 PRs will not land if *either* deployment has any failure. Note that this does not include WPT, so intermittents should not be an issue.
This commit is contained in:
bors-servo 2019-11-07 08:41:17 -05:00 committed by GitHub
commit 77a5a1834b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 40 additions and 12 deletions

View file

@ -24,10 +24,6 @@ def main(task_for):
magicleap_nightly = lambda: None
if task_for == "github-push":
if not CONFIG.legacy_tc_deployment: # pragma: no cover
# Do nothing (other than the decision task itsef) on community-tc by default for now
return
# FIXME https://github.com/servo/servo/issues/22187
# In-emulator testing is disabled for now. (Instead we only compile.)
# This local variable shadows the module-level function of the same name.
@ -75,6 +71,25 @@ def main(task_for):
android_x86_wpt
],
}
if not CONFIG.legacy_tc_deployment: # pragma: no cover
by_branch_name = {
"auto": [
# Everything not running on macOS,
# which only has one worker on Community-TC for now
linux_tidy_unit_docs,
windows_unit,
windows_arm64,
windows_uwp_x64,
android_arm32_dev,
android_arm32_release,
android_x86_wpt,
linux_wpt,
linux_release,
],
"master": [
upload_docs,
],
}
for function in by_branch_name.get(branch, []):
function()
@ -90,6 +105,10 @@ def main(task_for):
linux_tidy_unit_untrusted()
elif task_for == "try-windows-ami":
CONFIG.git_sha_is_current_head()
windows_unit(os.environ["NEW_AMI_WORKER_TYPE"], cached=False)
# https://tools.taskcluster.net/hooks/project-servo/daily
elif task_for == "daily":
daily_tasks_setup()
@ -447,9 +466,9 @@ def uwp_nightly():
)
def windows_unit():
return (
windows_build_task("Dev build + unit tests")
def windows_unit(worker_type=None, cached=True):
task = (
windows_build_task("Dev build + unit tests", worker_type=worker_type)
.with_treeherder("Windows x64", "Unit")
.with_script(
# Not necessary as this would be done at the start of `build`,
@ -464,8 +483,11 @@ def windows_unit():
)
.with_artifacts("repo/target/debug/msi/Servo.exe",
"repo/target/debug/msi/Servo.zip")
.find_or_create("build.windows_x64_dev." + CONFIG.task_id())
)
if cached:
return task.find_or_create("build.windows_x64_dev." + CONFIG.task_id())
else:
return task.create()
def windows_release():
@ -744,10 +766,12 @@ def linux_task(name):
)
def windows_task(name):
def windows_task(name, worker_type=None):
if worker_type is None:
worker_type = "servo-win2016" if CONFIG.legacy_tc_deployment else "win2016"
return (
decisionlib.WindowsGenericWorkerTask(name)
.with_worker_type("servo-win2016" if CONFIG.legacy_tc_deployment else "win2016")
.with_worker_type(worker_type)
.with_treeherder_required()
)
@ -799,7 +823,7 @@ def android_build_task(name):
)
def windows_build_task(name, package=True, arch="x86_64"):
def windows_build_task(name, package=True, arch="x86_64", worker_type=None):
hashes = {
"devel": {
"x86_64": "c136cbfb0330041d52fe6ec4e3e468563176333c857f6ed71191ebc37fc9d605",
@ -813,7 +837,7 @@ def windows_build_task(name, package=True, arch="x86_64"):
}
version = "1.16.0"
task = (
windows_task(name)
windows_task(name, worker_type=worker_type)
.with_max_run_time_minutes(90)
.with_env(
**build_env,

View file

@ -46,6 +46,7 @@ os.environ.update(**{k: k for k in "TASK_ID TASK_OWNER TASK_SOURCE GIT_URL GIT_S
os.environ["GIT_REF"] = "refs/heads/auto"
os.environ["TASKCLUSTER_ROOT_URL"] = "https://taskcluster.net"
os.environ["TASKCLUSTER_PROXY_URL"] = "http://taskcluster"
os.environ["NEW_AMI_WORKER_TYPE"] = "-"
import decision_task
print("\n# Push:")
@ -64,6 +65,9 @@ decision_task.main("github-push")
print("\n# Daily:")
decision_task.main("daily")
print("\n# Try AMI:")
decision_task.main("try-windows-ami")
print("\n# PR:")
decision_task.main("github-pull-request")