Bug 1620888 - Port bug 1620165: Switch Windows opt and debug builds to cross builds. r=darktrojan
authorRob Lemley <rob@thunderbird.net>
Wed, 18 Mar 2020 14:49:45 -0400
changeset 38530 f1bb314e632c138138abab0f9b0dca12ddbc9642
parent 38529 71c58d7934b1992cbde449a9c8ce94cda7e08cd8
child 38531 5abe17fb66badc4d8320da8274a5152b4e8a61ae
push id400
push userclokep@gmail.com
push dateMon, 04 May 2020 18:56:09 +0000
reviewersdarktrojan
bugs1620888, 1620165
Bug 1620888 - Port bug 1620165: Switch Windows opt and debug builds to cross builds. r=darktrojan Based on https://hg.mozilla.org/mozilla-central/rev/a57a40258614
taskcluster/ci/build/kind.yml
taskcluster/ci/build/windows-cross.yml
taskcluster/ci/build/windows.yml
--- a/taskcluster/ci/build/kind.yml
+++ b/taskcluster/ci/build/kind.yml
@@ -15,17 +15,16 @@ transforms:
     - taskgraph.transforms.build_lints:transforms
     - taskgraph.transforms.job:transforms
     - taskgraph.transforms.task:transforms
 
 jobs-from:
     - linux.yml
     - macosx.yml
     - windows.yml
-    - windows-cross.yml
 
 job-defaults:
     when:
         files-changed:
             # Include everything in comm-central except suite/
             # https://bugzilla.mozilla.org/show_bug.cgi?id=1422060
             - comm/build
             - comm/calendar
deleted file mode 100644
--- a/taskcluster/ci/build/windows-cross.yml
+++ /dev/null
@@ -1,124 +0,0 @@
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
----
-job-defaults:
-    run:
-        using: mozharness
-        use-caches: false
-        comm-checkout: true
-        config-paths:
-            - comm/mozharness
-        tooltool-downloads: internal
-
-
-win64-cross/opt:
-    description: "Win64 Opt Cross"
-    index:
-        product: thunderbird
-        job-name: win64-cross-opt
-    attributes:
-        enable-build-signing: true
-        enable-full-crashsymbols: true
-    treeherder:
-        platform: windows2012-64/opt
-        symbol: Bx
-        tier: 2
-    worker-type: b-linux
-    worker:
-        docker-image: {in-tree: debian9-amd64-build}
-        max-run-time: 7200
-        env:
-            PERFHERDER_EXTRA_OPTIONS: cross
-            TOOLTOOL_MANIFEST: "comm/mail/config/tooltool-manifests/win64/releng.manifest"
-            # MOZ_AUTOMATION_PACKAGE_TESTS: "1"
-    run:
-        actions: [build]
-        options: [append-env-variables-from-configs]
-        script: mozharness/scripts/fx_desktop_build.py
-        config:
-            - builds/taskcluster_base_thunderbird.py
-            - builds/releng_base_linux_64_builds.py
-        extra-config:
-            stage_platform: win64
-            mozconfig_platform: win64
-            env:
-                LD_PRELOAD: "/builds/worker/fetches/liblowercase/liblowercase.so"
-                LOWERCASE_DIRS: "/builds/worker/checkouts/gecko/vs2017_15.8.4:/builds/worker/checkouts/gecko/mapiheader"
-    run-on-projects: ['try-comm-central']
-    dependencies:
-        thirdparty-libotr-win64: thirdparty-libotr-win64
-    fetches:
-        toolchain:
-            - linux64-binutils
-            - linux64-cbindgen
-            - linux64-clang-win-cross
-            - linux64-dump-syms
-            - linux64-liblowercase
-            - linux64-nasm
-            - linux64-node
-            - linux64-rust-cross
-            - linux64-rust-size
-            - linux64-sccache
-            - linux64-wine
-        fetch:
-            - nsis-3.01-win
-            - upx-3.95-win
-        thirdparty-libotr-win64:
-            - libotr.tar.xz
-
-
-win32-cross/opt:
-    description: "Win32 Opt Cross"
-    index:
-        product: thunderbird
-        job-name: win32-cross-opt
-    attributes:
-        enable-build-signing: true
-        enable-full-crashsymbols: true
-    treeherder:
-        platform: windows2012-32/opt
-        symbol: Bx
-        tier: 2
-    worker-type: b-linux
-    worker:
-        docker-image: {in-tree: debian9-amd64-build}
-        max-run-time: 7200
-        env:
-            PERFHERDER_EXTRA_OPTIONS: cross
-            TOOLTOOL_MANIFEST: "comm/mail/config/tooltool-manifests/win32/releng.manifest"
-            # MOZ_AUTOMATION_PACKAGE_TESTS: "1"
-    run:
-        actions: [build]
-        options: [append-env-variables-from-configs]
-        script: mozharness/scripts/fx_desktop_build.py
-        config:
-            - builds/taskcluster_base_thunderbird.py
-            - builds/releng_base_linux_64_builds.py
-        extra-config:
-            stage_platform: win32
-            mozconfig_platform: win32
-            env:
-                LD_PRELOAD: "/builds/worker/fetches/liblowercase/liblowercase.so"
-                LOWERCASE_DIRS: "/builds/worker/checkouts/gecko/vs2017_15.8.4:/builds/worker/checkouts/gecko/mapiheader"
-    run-on-projects: ['try-comm-central']
-    dependencies:
-        thirdparty-libotr-win32: thirdparty-libotr-win32
-    fetches:
-        toolchain:
-            - linux64-binutils
-            - linux64-cbindgen
-            - linux64-clang-win-cross
-            - linux64-dump-syms
-            - linux64-liblowercase
-            - linux64-nasm
-            - linux64-node
-            - linux64-rust-cross
-            - linux64-rust-size
-            - linux64-sccache
-            - linux64-wine
-        fetch:
-            - nsis-3.01-win
-            - upx-3.95-win
-        thirdparty-libotr-win32:
-            - libotr.tar.xz
--- a/taskcluster/ci/build/windows.yml
+++ b/taskcluster/ci/build/windows.yml
@@ -4,58 +4,68 @@
 ---
 job-defaults:
     run:
         using: mozharness
         comm-checkout: true
         config-paths:
             - comm/mozharness
         tooltool-downloads: internal
-    fetches:
-        toolchain:
-            - win64-cbindgen
-            - win64-clang-cl
-            - win64-dump-syms
-            - win64-nasm
-            - win64-node
-            - win64-rust
-            - win64-rust-size
 
 win32/opt:
-    description: "Win32 Opt"
+    description: "Win32 Opt (Cross)"
     index:
         product: thunderbird
         job-name: win32-opt
     dependencies:
         thirdparty-libotr-win32: thirdparty-libotr-win32
     attributes:
         enable-build-signing: true
+        enable-full-crashsymbols: true
     treeherder:
         platform: windows2012-32/opt
         symbol: B
         tier: 1
-    worker-type: b-win2012
+    worker-type: b-linux
     worker:
+        docker-image: {in-tree: debian9-amd64-build}
         max-run-time: 7200
         env:
+            PERFHERDER_EXTRA_OPTIONS: cross
             TOOLTOOL_MANIFEST: "comm/mail/config/tooltool-manifests/win32/releng.manifest"
             MOZ_AUTOMATION_PACKAGE_TESTS: "1"
     run:
         actions: [build]
         options: [append-env-variables-from-configs]
         script: mozharness/scripts/fx_desktop_build.py
         config:
             - builds/taskcluster_base_thunderbird.py
-            - builds/taskcluster_base_windows.py
-            - builds/taskcluster_base_win32.py
+            - builds/releng_base_linux_64_builds.py
         extra-config:
             stage_platform: win32
+            mozconfig_platform: win32
+            env:
+                LD_PRELOAD: "/builds/worker/fetches/liblowercase/liblowercase.so"
+                LOWERCASE_DIRS: "/builds/worker/checkouts/gecko/vs2017_15.8.4:/builds/worker/checkouts/gecko/mapiheader"
     fetches:
         toolchain:
-            - win64-sccache
+            - linux64-binutils
+            - linux64-cbindgen
+            - linux64-clang-win-cross
+            - linux64-dump-syms
+            - linux64-liblowercase
+            - linux64-nasm
+            - linux64-node
+            - linux64-rust-cross
+            - linux64-rust-size
+            - linux64-sccache
+            - linux64-wine
+        fetch:
+            - nsis-3.01-win
+            - upx-3.95-win
         thirdparty-libotr-win32:
             - libotr.tar.xz
 
 win32-shippable/opt:
     description: "Win32 Opt Shippable"
     index:
         product: thunderbird
         job-name: win32-opt
@@ -86,86 +96,133 @@ win32-shippable/opt:
         config:
             - builds/taskcluster_base_thunderbird.py
             - builds/taskcluster_base_windows.py
             - builds/taskcluster_base_win32.py
             - taskcluster_nightly.py
         extra-config:
             stage_platform: win32
     fetches:
+        toolchain:
+            - win64-cbindgen
+            - win64-clang-cl
+            - win64-dump-syms
+            - win64-nasm
+            - win64-node
+            - win64-rust
+            - win64-rust-size
         thirdparty-libotr-win32:
             - libotr.tar.xz
 
 win32/debug:
-    description: "Win32 Debug"
+    description: "Win32 Debug (Cross)"
     index:
         product: thunderbird
         job-name: win32-debug
     dependencies:
         thirdparty-libotr-win32: thirdparty-libotr-win32
     attributes:
         enable-build-signing: true
+        enable-full-crashsymbols: true
     treeherder:
         platform: windows2012-32/debug
         symbol: B
         tier: 1
-    worker-type: b-win2012
+    worker-type: b-linux
     worker:
+        docker-image: {in-tree: debian9-amd64-build}
         max-run-time: 7200
         env:
+            PERFHERDER_EXTRA_OPTIONS: cross
             TOOLTOOL_MANIFEST: "comm/mail/config/tooltool-manifests/win32/releng.manifest"
             MOZ_AUTOMATION_PACKAGE_TESTS: "1"
     run:
         actions: [build]
         options: [append-env-variables-from-configs]
         script: mozharness/scripts/fx_desktop_build.py
         config:
             - builds/taskcluster_base_thunderbird.py
-            - builds/taskcluster_base_windows.py
-            - builds/taskcluster_base_win32.py
+            - builds/releng_base_linux_64_builds.py
             - builds/taskcluster_sub_win32/debug.py
         mozconfig-variant: debug
+        extra-config:
+            mozconfig_platform: win32
+            env:
+                LD_PRELOAD: "/builds/worker/fetches/liblowercase/liblowercase.so"
+                LOWERCASE_DIRS: "/builds/worker/checkouts/gecko/vs2017_15.8.4:/builds/worker/checkouts/gecko/mapiheader"
     fetches:
         toolchain:
-            - win64-sccache
+            - linux64-binutils
+            - linux64-cbindgen
+            - linux64-clang-win-cross
+            - linux64-dump-syms
+            - linux64-liblowercase
+            - linux64-nasm
+            - linux64-node
+            - linux64-rust-cross
+            - linux64-rust-size
+            - linux64-sccache
+            - linux64-wine
+        fetch:
+            - nsis-3.01-win
+            - upx-3.95-win
         thirdparty-libotr-win32:
             - libotr.tar.xz
 
 win64/opt:
-    description: "Win64 Opt"
+    description: "Win64 Opt (Cross)"
     index:
         product: thunderbird
         job-name: win64-opt
     dependencies:
         thirdparty-libotr-win64: thirdparty-libotr-win64
     attributes:
         enable-build-signing: true
+        enable-full-crashsymbols: true
     treeherder:
         platform: windows2012-64/opt
         symbol: B
         tier: 1
-    worker-type: b-win2012
+    worker-type: b-linux
     worker:
+        docker-image: {in-tree: debian9-amd64-build}
         max-run-time: 7200
         env:
+            PERFHERDER_EXTRA_OPTIONS: cross
             TOOLTOOL_MANIFEST: "comm/mail/config/tooltool-manifests/win64/releng.manifest"
             MOZ_AUTOMATION_PACKAGE_TESTS: "1"
     run:
         actions: [build]
         options: [append-env-variables-from-configs]
         script: mozharness/scripts/fx_desktop_build.py
         config:
             - builds/taskcluster_base_thunderbird.py
-            - builds/taskcluster_base_windows.py
-            - builds/taskcluster_base_win64.py
+            - builds/releng_base_linux_64_builds.py
         extra-config:
             stage_platform: win64
+            mozconfig_platform: win64
+            env:
+                LD_PRELOAD: "/builds/worker/fetches/liblowercase/liblowercase.so"
+                LOWERCASE_DIRS: "/builds/worker/checkouts/gecko/vs2017_15.8.4:/builds/worker/checkouts/gecko/mapiheader"
     fetches:
         toolchain:
-            - win64-sccache
+            - linux64-binutils
+            - linux64-cbindgen
+            - linux64-clang-win-cross
+            - linux64-dump-syms
+            - linux64-liblowercase
+            - linux64-nasm
+            - linux64-node
+            - linux64-rust-cross
+            - linux64-rust-size
+            - linux64-sccache
+            - linux64-wine
+        fetch:
+            - nsis-3.01-win
+            - upx-3.95-win
         thirdparty-libotr-win64:
             - libotr.tar.xz
 
 win64-shippable/opt:
     description: "Win64 Opt Shippable"
     index:
         product: thunderbird
         job-name: win64-opt
@@ -196,45 +253,73 @@ win64-shippable/opt:
         config:
             - builds/taskcluster_base_thunderbird.py
             - builds/taskcluster_base_windows.py
             - builds/taskcluster_base_win64.py
             - taskcluster_nightly.py
         extra-config:
             stage_platform: win64
     fetches:
+        toolchain:
+            - win64-cbindgen
+            - win64-clang-cl
+            - win64-dump-syms
+            - win64-nasm
+            - win64-node
+            - win64-rust
+            - win64-rust-size
         thirdparty-libotr-win64:
             - libotr.tar.xz
 
 win64/debug:
-    description: "Win64 Debug"
+    description: "Win64 Debug (Cross)"
     index:
         product: thunderbird
         job-name: win64-debug
     dependencies:
         thirdparty-libotr-win64: thirdparty-libotr-win64
     attributes:
         enable-build-signing: true
+        enable-full-crashsymbols: true
     treeherder:
         platform: windows2012-64/debug
         symbol: B
         tier: 1
-    worker-type: b-win2012
+    worker-type: b-linux
     worker:
+        docker-image: {in-tree: debian9-amd64-build}
         max-run-time: 7200
         env:
+            PERFHERDER_EXTRA_OPTIONS: cross
             TOOLTOOL_MANIFEST: "comm/mail/config/tooltool-manifests/win64/releng.manifest"
             MOZ_AUTOMATION_PACKAGE_TESTS: "1"
     run:
         actions: [build]
         options: [append-env-variables-from-configs]
         script: mozharness/scripts/fx_desktop_build.py
         config:
             - builds/taskcluster_base_thunderbird.py
-            - builds/taskcluster_base_windows.py
-            - builds/taskcluster_base_win64.py
+            - builds/releng_base_linux_64_builds.py
             - builds/taskcluster_sub_win64/debug.py
         mozconfig-variant: debug
+        extra-config:
+            mozconfig_platform: win64
+            env:
+                LD_PRELOAD: "/builds/worker/fetches/liblowercase/liblowercase.so"
+                LOWERCASE_DIRS: "/builds/worker/checkouts/gecko/vs2017_15.8.4:/builds/worker/checkouts/gecko/mapiheader"
     fetches:
         toolchain:
-            - win64-sccache
+            - linux64-binutils
+            - linux64-cbindgen
+            - linux64-clang-win-cross
+            - linux64-dump-syms
+            - linux64-liblowercase
+            - linux64-nasm
+            - linux64-node
+            - linux64-rust-cross
+            - linux64-rust-size
+            - linux64-sccache
+            - linux64-wine
+        fetch:
+            - nsis-3.01-win
+            - upx-3.95-win
         thirdparty-libotr-win64:
             - libotr.tar.xz