diff options
author | bors-servo <lbergstrom+bors@mozilla.com> | 2019-11-07 08:41:17 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-11-07 08:41:17 -0500 |
commit | 77a5a1834b0d7ba0e51b24f0a7c3880479efc20a (patch) | |
tree | 9edb8777c5e502e5ff5329e63979484238a1a9f8 | |
parent | 9a518cf7979b79b34611135d09c1dd0a96945255 (diff) | |
parent | 5d62f8084e015a64a0874b55ebe0f3ab60eaec1a (diff) | |
download | servo-77a5a1834b0d7ba0e51b24f0a7c3880479efc20a.tar.gz servo-77a5a1834b0d7ba0e51b24f0a7c3880479efc20a.zip |
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.
-rw-r--r-- | etc/taskcluster/decision_task.py | 48 | ||||
-rwxr-xr-x | etc/taskcluster/mock.py | 4 |
2 files changed, 40 insertions, 12 deletions
diff --git a/etc/taskcluster/decision_task.py b/etc/taskcluster/decision_task.py index 148ee81cc0c..953a527058f 100644 --- a/etc/taskcluster/decision_task.py +++ b/etc/taskcluster/decision_task.py @@ -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, diff --git a/etc/taskcluster/mock.py b/etc/taskcluster/mock.py index c0b45e6a1f4..1f66eb0c492 100755 --- a/etc/taskcluster/mock.py +++ b/etc/taskcluster/mock.py @@ -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") |