From 4e7d703303fe01702bc5b2520ec67b0aae179e54 Mon Sep 17 00:00:00 2001 From: Kartikaya Gupta Date: Mon, 25 May 2020 18:53:08 +0000 Subject: [PATCH] Bug 1638664 - Run the windows searchfox build as cross-compilation on Linux. r=asuth This updates the task definition for the win64 searchfox job to closely match the win64/debug task definition in taskcluster/ci/build/windows.yml. So, instead of running the build with the mozsearch-plugin on a windows worker, it runs on a Linux worker and does a cross-compile of windows code. The end result in terms of searchfox artifacts is equivalent, except for absolute filename paths. I verified that with mozsearch/mozsearch#299 and mozsearch/mozsearch-mozilla#87 in place, searchfox correctly indexes windows-only C++ and Rust code. Differential Revision: https://phabricator.services.mozilla.com/D76721 --- taskcluster/ci/searchfox/kind.yml | 39 +++++++++++++++++++++---------- 1 file changed, 27 insertions(+), 12 deletions(-) diff --git a/taskcluster/ci/searchfox/kind.yml b/taskcluster/ci/searchfox/kind.yml index 53d850c0d4c0..e2312756da4f 100644 --- a/taskcluster/ci/searchfox/kind.yml +++ b/taskcluster/ci/searchfox/kind.yml @@ -6,8 +6,10 @@ loader: taskgraph.loader.transform:loader kind-dependencies: - toolchain + - fetch transforms: + - taskgraph.transforms.build:transforms - taskgraph.transforms.build_attrs:transforms - taskgraph.transforms.build_lints:transforms - taskgraph.transforms.job:transforms @@ -100,12 +102,12 @@ jobs: win64-searchfox/debug: description: "Win64 Searchfox Debug (clang-cl)" index: - product: firefox job-name: win64-searchfox-debug treeherder: platform: windows2012-64/debug - worker-type: b-win2012 + worker-type: b-linux worker: + docker-image: {in-tree: debian9-amd64-build} max-run-time: 36000 env: TOOLTOOL_MANIFEST: "browser/config/tooltool-manifests/win64/releng.manifest" @@ -114,24 +116,37 @@ jobs: MOZSEARCH_PLATFORM: "windows" run: using: mozharness - actions: [build] options: [append-env-variables-from-configs] + actions: [get-secrets, build] script: mozharness/scripts/fx_desktop_build.py + secrets: true config: - builds/releng_base_firefox.py - - builds/taskcluster_base_windows.py - - builds/taskcluster_base_win64.py + - builds/releng_base_linux_64_builds.py - builds/taskcluster_sub_win64/searchfox_debug.py tooltool-downloads: internal + extra-config: + mozconfig_platform: win64 + env: + LD_PRELOAD: "/builds/worker/fetches/liblowercase/liblowercase.so" + LOWERCASE_DIRS: "/builds/worker/checkouts/gecko/vs2017_15.8.4" fetches: toolchain: - - win64-clang-cl - - win64-node - - win64-rust - - win64-cbindgen - - win64-nasm - - win64-dump-syms - - win64-winchecksec + - linux64-binutils + - linux64-clang-win-cross + - linux64-rust-cross + - linux64-rust-size + - linux64-nasm + - linux64-node + - linux64-cbindgen + - linux64-sccache + - linux64-dump-syms + - linux64-wine + - linux64-liblowercase + - linux64-winchecksec + fetch: + - nsis-3.01-win + - upx-3.95-win android-armv7-searchfox/debug: description: "Android ARMv7 Debug Searchfox"