We also have to surpress the `ifdef`-generated line number comment in the generated greprefs.js. To maximize flexibility, I've opted to squelch all linenumber comments in greprefs.js instead of trying to find some way to just remove the one for telemetry.fog.artifact_build. Differential Revision: https://phabricator.services.mozilla.com/D297954
64 lines
3.2 KiB
YAML
64 lines
3.2 KiB
YAML
# 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/.
|
|
---
|
|
task-defaults:
|
|
# Artifact builds always build with nightly branding, so these checks don't
|
|
# work on non-trunk branches.
|
|
run-on-projects: ['trunk']
|
|
unpack: true
|
|
fail-on-diff: true
|
|
pre-diff-commands:
|
|
# jogfile.json is only created in artifact builds.
|
|
- rm b/"$RESOURCE_DIR"/jogfile.json
|
|
# Remove noise from differences in line numbers in preprocessor output
|
|
# due to #if/#else branches.
|
|
- sed -i '/^\/\/@line /d' {a,b}/"$RESOURCE_DIR"/browser/defaults/preferences/firefox.js
|
|
- sed -i '/^\/\/@line /d' {a,b}/"$RESOURCE_DIR"/greprefs.js
|
|
# bug 2036424 - telemetry.fog.artifact_build isn't stable between
|
|
# artifact and not-artifact builds, so remove its line if present.
|
|
- sed -i '/telemetry\.fog\.artifact\_build/d' b/"$RESOURCE_DIR"/greprefs.js
|
|
# bug 1936471 - nimbus.telemetry.targetingContextEnabled isn't stable
|
|
# between artifact and non-artifact builds because this pref controls
|
|
# submission of an object metric and object metrics aren't supported in
|
|
# artifact builds. This pref was added in bug 1936317 and will be
|
|
# removed in bug 1936319.
|
|
- sed -i '/nimbus\.telemetry\.targetingContextEnabled/d' {a,b}"/$RESOURCE_DIR"/browser/defaults/preferences/firefox.js
|
|
# non-macOS artifact builds are not fed with accepted-mar-channel-ids.
|
|
- if [ -f a/"$RESOURCE_DIR"/update-settings.ini ]; then sed -i '/ACCEPTED_MAR_CHANNEL_IDS/d' {a,b}/"$RESOURCE_DIR"/update-settings.ini; fi
|
|
# macOS artifact builds have local update configurations, not Nightly
|
|
# update configurations.
|
|
- rm -f {a,b}/"$RESOURCE_DIR"/../Frameworks/ChannelPrefs.framework/ChannelPrefs
|
|
- rm -f {a,b}/"$RESOURCE_DIR"/../MacOS/updater.app/Contents/Frameworks/UpdateSettings.framework/UpdateSettings
|
|
# Extra diffoscope arguments to account for:
|
|
# - about:buildconfig being expectedly different.
|
|
extra-args: >-
|
|
--exclude b/"$RESOURCE_DIR"/chrome/toolkit/content/global/buildconfig.html
|
|
# This is necessary to avoid building the dependencies on every push on autoland
|
|
# A more robust fix for this is https://bugzilla.mozilla.org/show_bug.cgi?id=1643346
|
|
optimization:
|
|
skip-unless-expanded: null
|
|
|
|
artifact-linux64-validation:
|
|
symbol: Linux64a
|
|
new: artifact-build-linux64-artifact/opt
|
|
original: build-linux64/opt
|
|
|
|
artifact-macosx64-validation:
|
|
symbol: Macosx64a
|
|
new: artifact-build-macosx64-artifact/opt
|
|
original: build-macosx64/opt
|
|
|
|
artifact-win64-validation:
|
|
symbol: Win64a
|
|
new: artifact-build-win64-artifact/opt
|
|
original: build-win64/opt
|
|
# Extra diffoscope arguments to account for:
|
|
# - about:buildconfig being expectedly different.
|
|
# - There are some differences in PE metadata in helper.exe because
|
|
# it's (re)built in the EME build, and that part of the build is
|
|
# not reproducible.
|
|
extra-args: >-
|
|
--exclude b/"$RESOURCE_DIR"/chrome/toolkit/content/global/buildconfig.html
|
|
--exclude b/firefox/uninstall/helper.exe
|