diff options
-rw-r--r-- | etc/taskcluster/decision_task.py | 66 | ||||
-rw-r--r-- | etc/taskcluster/windows/first-boot.ps1 | 2 | ||||
-rw-r--r-- | python/servo/package_commands.py | 6 |
3 files changed, 45 insertions, 29 deletions
diff --git a/etc/taskcluster/decision_task.py b/etc/taskcluster/decision_task.py index e5b16c5b952..04012248a2e 100644 --- a/etc/taskcluster/decision_task.py +++ b/etc/taskcluster/decision_task.py @@ -90,10 +90,10 @@ def main(task_for): daily_tasks_setup() with_rust_nightly() linux_nightly() - android_nightly("arm") - android_nightly("x86") + android_nightly() windows_nightly() macos_nightly() + update_wpt() # These are disabled in a "real" decision task, @@ -264,36 +264,27 @@ def android_arm32_dev(): ) -def android_nightly(job): - details = { - "arm": { - "mach_flag": "--android", - "name": "ARMv7", - "target": "armv7-linux-androideabi", - }, - "x86": { - "mach_flag": "--target i686-linux-android", - "name": "x86", - "target": "i686-linux-android", - } - } - +def android_nightly(): return ( android_build_task("Nightly build and upload") - .with_treeherder("Android " + details[job]["name"], "Nightly") + .with_treeherder("Android Nightlies") .with_features("taskclusterProxy") .with_scopes("secrets:get:project/servo/s3-upload-credentials") .with_script(""" - ./mach build {flag} --release - ./mach package {flag} --release --maven + ./mach build --release --android + ./mach package --release --android --maven + ./mach build --release --target i686-linux-android + ./mach package --release --target i686-linux-android --maven ./mach upload-nightly android --secret-from-taskcluster ./mach upload-nightly maven --secret-from-taskcluster - """.format(flag=details[job]["mach_flag"])) + """) .with_artifacts( - "/repo/target/android/%s/release/servoapp.apk" % details[job]["target"], - "/repo/target/android/%s/release/servoview.aar" % details[job]["target"], + "/repo/target/android/armv7-linux-androideabi/release/servoapp.apk", + "/repo/target/android/armv7-linux-androideabi/release/servoview.aar", + "/repo/target/android/i686-linux-android/release/servoapp.apk", + "/repo/target/android/i686-linux-android/release/servoview.aar", ) - .find_or_create(("build.android_%s_nightly." + CONFIG.git_sha) % details[job]["name"].lower()) + .find_or_create("build.android_nightlies." + CONFIG.git_sha) ) @@ -395,6 +386,7 @@ def windows_nightly(): return ( windows_build_task("Nightly build and upload") .with_treeherder("Windows x64", "Nightly") + .with_features("taskclusterProxy") .with_scopes("secrets:get:project/servo/s3-upload-credentials") .with_script("mach build --release", "mach package --release", @@ -459,15 +451,33 @@ def macos_nightly(): "./mach upload-nightly mac --secret-from-taskcluster", ) .with_artifacts("repo/target/release/servo-tech-demo.dmg") - .with_script( - "./etc/ci/update-wpt-checkout fetch-and-update-expectations", - "./etc/ci/update-wpt-checkout open-pr", - "./etc/ci/update-wpt-checkout cleanup", - ) .find_or_create("build.mac_x64_nightly." + CONFIG.git_sha) ) +def update_wpt(): + # Reuse the release build that was made for landing the PR + build_task = decisionlib.Task.find("build.macos_x64_release." + CONFIG.git_sha) + return ( + macos_task("WPT update") + .with_python2() + .with_treeherder("macOS x64", "WPT update") + .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(5 * 60) + .with_repo() + .with_curl_artifact_script(build_task, "target.tar.gz") + .with_script(""" + tar -xzf target.tar.gz + ./etc/ci/update-wpt-checkout fetch-and-update-expectations + ./etc/ci/update-wpt-checkout open-pr + ./etc/ci/update-wpt-checkout cleanup + """) + .find_or_create("wpt_update." + CONFIG.git_sha) + ) + + def macos_wpt(): build_task = ( macos_build_task("Release build") diff --git a/etc/taskcluster/windows/first-boot.ps1 b/etc/taskcluster/windows/first-boot.ps1 index 896f562bacc..9da5091e99c 100644 --- a/etc/taskcluster/windows/first-boot.ps1 +++ b/etc/taskcluster/windows/first-boot.ps1 @@ -39,6 +39,8 @@ $client.DownloadFile("https://github.com/taskcluster/generic-worker/releases/dow "/v14.1.0/generic-worker-nativeEngine-windows-amd64.exe", "C:\generic-worker\generic-worker.exe") $client.DownloadFile("https://github.com/taskcluster/livelog/releases/download" + "/v1.1.0/livelog-windows-amd64.exe", "C:\generic-worker\livelog.exe") +$client.DownloadFile("https://github.com/taskcluster/taskcluster-proxy/releases/download" + + "/v5.1.0/taskcluster-proxy-windows-amd64.exe", "C:\generic-worker\taskcluster-proxy.exe") Expand-ZIPFile -File "C:\nssm-2.24.zip" -Destination "C:\" ` -Url "https://www.nssm.cc/release/nssm-2.24.zip" Start-Process C:\generic-worker\generic-worker.exe -ArgumentList ` diff --git a/python/servo/package_commands.py b/python/servo/package_commands.py index 8ff1170872d..12ab0607a3a 100644 --- a/python/servo/package_commands.py +++ b/python/servo/package_commands.py @@ -546,7 +546,11 @@ class PackageCommands(CommandBase): import boto3 def get_taskcluster_secret(name): - url = os.environ["TASKCLUSTER_PROXY_URL"] + "/secrets/v1/secret/project/servo/" + name + url = ( + os.environ.get("TASKCLUSTER_PROXY_URL", "http://taskcluster") + + "/secrets/v1/secret/project/servo/" + + name + ) return json.load(urllib.urlopen(url))["secret"] def get_s3_secret(): |