Bug 1678775 - Convert macOS shippable build to Universal binary. r=justdave
authorRob Lemley <rob@thunderbird.net>
Wed, 27 Jan 2021 06:40:21 -0500
changeset 31589 a10316300ce27538e95ee4e73e1bb4aff6cd6ec2
parent 31588 31cf458c7526d644c1e009efe483a2773716d46e
child 31590 0668f84b4621771cdd0446a5b3e5fcc26ce078d8
push id18420
push userthunderbird@calypsoblue.org
push dateWed, 03 Feb 2021 19:38:31 +0000
treeherdercomm-central@a10316300ce2 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjustdave
bugs1678775
Bug 1678775 - Convert macOS shippable build to Universal binary. r=justdave Differential Revision: https://phabricator.services.mozilla.com/D103165
taskcluster/ci/build/macosx.yml
--- a/taskcluster/ci/build/macosx.yml
+++ b/taskcluster/ci/build/macosx.yml
@@ -91,27 +91,26 @@ macosx64/opt:
             - linux64-llvm-dsymutil
             - linux64-nasm
             - linux64-node
             - linux64-rust-macos
             - linux64-rust-size
             - linux64-sccache
             - macosx64-libotr
 
-macosx64-shippable/opt:
+macosx64-x64-shippable/opt:
     description: "MacOS X x64 Cross-compile"
     attributes:
-        shippable: true
-        nightly: true
         enable-full-crashsymbols: true
+        skip-verify-test-packaging: true
     shipping-phase: build
     shipping-product: thunderbird
     index:
         product: thunderbird
-        job-name: macosx64-opt
+        job-name: macosx64-x64-opt
         type: shippable
     treeherder:
         platform: osx-shippable/opt
         symbol: B
         tier: 1
     worker-type: b-linux
     worker:
         docker-image: {in-tree: debian10-amd64-build}
@@ -146,18 +145,16 @@ macosx64-shippable/opt:
             - linux64-node
             - linux64-rust-macos
             - linux64-rust-size
             - macosx64-libotr
 
 macosx64-aarch64-shippable/opt:
     description: "MacOS X aarch64 Cross-compile"
     attributes:
-        # shippable: true
-        # nightly: true
         enable-full-crashsymbols: true
         skip-verify-test-packaging: true
     shipping-phase: build
     shipping-product: thunderbird
     index:
         product: thunderbird
         job-name: macosx64-aarch64-opt
         type: shippable
@@ -167,17 +164,17 @@ macosx64-aarch64-shippable/opt:
         tier: 1
     run-on-projects: ['release']
     worker-type: b-linux
     worker:
         docker-image: {in-tree: debian10-amd64-build}
         max-run-time: 7200
         env:
             TOOLTOOL_MANIFEST: ""
-            # MOZ_AUTOMATION_PACKAGE_TESTS: "1"
+            MOZ_AUTOMATION_PACKAGE_TESTS: "1"
             PERFHERDER_EXTRA_OPTIONS: aarch64
     run:
         using: mozharness
         comm-checkout: true
         actions: [build]
         config-paths:
             - comm/testing/mozharness/configs
         config:
@@ -199,8 +196,153 @@ macosx64-aarch64-shippable/opt:
             - linux64-llvm-dsymutil
             - linux64-nasm
             - linux64-node
             - linux64-rust-macos
             - linux64-rust-size
             - macosx64-aarch64-libotr
             - macosx64-sdk-11.0
 
+macosx64-shippable/opt:
+    description: "MacOS Universal"
+    attributes:
+        nightly: true
+        shippable: true
+        enable-build-signing: true
+        skip-upload-crashsymbols: true
+        skip-verify-test-packaging: true
+    shipping-phase: build
+    shipping-product: thunderbird
+    index:
+        product: thunderbird
+        job-name: macosx64-opt
+        type: shippable
+    treeherder:
+        platform: osx-shippable/opt
+        symbol: U
+        tier: 1
+    run-on-projects: ['release']
+    worker-type: b-linux
+    worker:
+        docker-image: {in-tree: debian10-amd64-build}
+        max-run-time: 1800
+    run:
+        using: mozharness
+        script: "mozharness/scripts/fx_desktop_build.py"
+        job-script: taskcluster/scripts/misc/unify.sh
+        config:
+            - builds/taskcluster_base_thunderbird.py
+    dependencies:
+        macosx64-x64-shippable-opt: build-macosx64-x64-shippable/opt
+        macosx64-aarch64-shippable-opt: build-macosx64-aarch64-shippable/opt
+    fetches:
+        macosx64-x64-shippable-opt:
+            - artifact: target.dmg
+              extract: false
+              dest: x64
+            - artifact: buildhub.json
+              extract: false
+              dest: ../artifacts
+            - artifact: host/bin/mar
+              extract: false
+              dest: ../artifacts/host/bin
+            - artifact: host/bin/mbsdiff
+              extract: false
+              dest: ../artifacts/host/bin
+            - artifact: target.txt
+              extract: false
+              dest: ../artifacts
+            - artifact: target_info.txt
+              extract: false
+              dest: ../artifacts
+            - artifact: target.json
+              extract: false
+              dest: ../artifacts
+            - artifact: target.mozinfo.json
+              extract: false
+              dest: ../artifacts
+            - artifact: target.test_packages.json
+              extract: false
+              dest: ../artifacts
+            - artifact: target.perftests.tests.tar.gz
+              extract: false
+              dest: ../artifacts
+            - artifact: target.common.tests.tar.gz
+              dest: x64/common
+            - artifact: target.cppunittest.tests.tar.gz
+              dest: x64/cppunittest
+            - artifact: target.gtest.tests.tar.gz
+              dest: x64/gtest
+            - artifact: target.jittest.tests.tar.gz
+              dest: x64/jittest
+            - artifact: target.jsreftest.tests.tar.gz
+              dest: x64/jsreftest
+            - artifact: target.mochitest.tests.tar.gz
+              dest: x64/mochitest
+            - artifact: target.reftest.tests.tar.gz
+              dest: x64/reftest
+            - artifact: target.talos.tests.tar.gz
+              dest: x64/talos
+            - artifact: target.raptor.tests.tar.gz
+              dest: x64/raptor
+            - artifact: target.condprof.tests.tar.gz
+              dest: x64/confprof
+            - artifact: target.awsy.tests.tar.gz
+              dest: x64/awsy
+            - artifact: target.xpcshell.tests.tar.gz
+              dest: x64/xpcshell
+            - artifact: target.web-platform.tests.tar.gz
+              dest: x64/web-platform
+            - artifact: target.updater-dep.tests.tar.gz
+              dest: x64/updater-dep
+            - artifact: target.crashreporter-symbols.zip
+              dest: x64/crashreporter-symbols
+            - artifact: target.jsshell.zip
+              dest: x64/jsshell
+            - artifact: target.generated-files.tar.gz
+              extract: false
+              dest: ../artifacts
+            - artifact: target.langpack.xpi
+              extract: false
+              dest: ../artifacts
+            - artifact: mozharness.zip
+              extract: false
+              dest: ../artifacts
+        macosx64-aarch64-shippable-opt:
+            - artifact: target.dmg
+              extract: false
+              dest: aarch64
+            - artifact: target.common.tests.tar.gz
+              dest: aarch64/common
+            - artifact: target.cppunittest.tests.tar.gz
+              dest: aarch64/cppunittest
+            - artifact: target.gtest.tests.tar.gz
+              dest: aarch64/gtest
+            - artifact: target.jittest.tests.tar.gz
+              dest: aarch64/jittest
+            - artifact: target.jsreftest.tests.tar.gz
+              dest: aarch64/jsreftest
+            - artifact: target.mochitest.tests.tar.gz
+              dest: aarch64/mochitest
+            - artifact: target.reftest.tests.tar.gz
+              dest: aarch64/reftest
+            - artifact: target.talos.tests.tar.gz
+              dest: aarch64/talos
+            - artifact: target.raptor.tests.tar.gz
+              dest: aarch64/raptor
+            - artifact: target.condprof.tests.tar.gz
+              dest: aarch64/confprof
+            - artifact: target.awsy.tests.tar.gz
+              dest: aarch64/awsy
+            - artifact: target.xpcshell.tests.tar.gz
+              dest: aarch64/xpcshell
+            - artifact: target.web-platform.tests.tar.gz
+              dest: aarch64/web-platform
+            - artifact: target.updater-dep.tests.tar.gz
+              dest: aarch64/updater-dep
+            - artifact: target.crashreporter-symbols.zip
+              dest: aarch64/crashreporter-symbols
+            - artifact: target.jsshell.zip
+              dest: aarch64/jsshell
+        toolchain:
+            - linux64-cctools-port
+            - linux64-hfsplus
+            - linux64-libdmg