tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

artifacts.yml (3252B)


      1 # This Source Code Form is subject to the terms of the Mozilla Public
      2 # License, v. 2.0. If a copy of the MPL was not distributed with this
      3 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
      4 ---
      5 task-defaults:
      6    # Artifact builds always build with nightly branding, so these checks don't
      7    # work on non-trunk branches.
      8    run-on-projects: ['trunk']
      9    unpack: true
     10    fail-on-diff: true
     11    pre-diff-commands:
     12        # jogfile.json is only created in artifact builds.
     13        - rm b/"$RESOURCE_DIR"/jogfile.json
     14        # Remove noise from differences in line numbers in preprocessor output
     15        # due to #if/#else branches.
     16        - sed -i '/^\/\/@line /d' {a,b}/"$RESOURCE_DIR"/browser/defaults/preferences/firefox.js
     17        # bug 1825141 - telemetry.fog.artifact_build isn't stable between
     18        # artifact and not-artifact builds, so remove its line if present.
     19        - sed -i '/telemetry\.fog\.artifact\_build/d' b/"$RESOURCE_DIR"/browser/defaults/preferences/firefox.js
     20        # bug 1936471 - nimbus.telemetry.targetingContextEnabled isn't stable
     21        # between artifact and non-artifact builds because this pref controls
     22        # submission of an object metric and object metrics aren't supported in
     23        # artifact builds. This pref was added in bug 1936317 and will be
     24        # removed in bug 1936319.
     25        - sed -i '/nimbus\.telemetry\.targetingContextEnabled/d' {a,b}"/$RESOURCE_DIR"/browser/defaults/preferences/firefox.js
     26        # non-macOS artifact builds are not fed with accepted-mar-channel-ids.
     27        - if [ -f a/"$RESOURCE_DIR"/update-settings.ini ]; then sed -i '/ACCEPTED_MAR_CHANNEL_IDS/d' {a,b}/"$RESOURCE_DIR"/update-settings.ini; fi
     28        # macOS artifact builds have local update configurations, not Nightly
     29        # update configurations.
     30        - rm -f {a,b}/"$RESOURCE_DIR"/../Frameworks/ChannelPrefs.framework/ChannelPrefs
     31        - rm -f {a,b}/"$RESOURCE_DIR"/../MacOS/updater.app/Contents/Frameworks/UpdateSettings.framework/UpdateSettings
     32    # Extra diffoscope arguments to account for:
     33    # - about:buildconfig being expectedly different.
     34    extra-args: >-
     35        --exclude b/"$RESOURCE_DIR"/chrome/toolkit/content/global/buildconfig.html
     36    # This is necessary to avoid building the dependencies on every push on autoland
     37    # A more robust fix for this is https://bugzilla.mozilla.org/show_bug.cgi?id=1643346
     38    optimization:
     39        skip-unless-expanded: null
     40 
     41 artifact-linux64-validation:
     42    symbol: Linux64a
     43    new: artifact-build-linux64-artifact/opt
     44    original: build-linux64/opt
     45 
     46 artifact-macosx64-validation:
     47    symbol: Macosx64a
     48    new: artifact-build-macosx64-artifact/opt
     49    original: build-macosx64/opt
     50 
     51 artifact-win64-validation:
     52    symbol: Win64a
     53    new: artifact-build-win64-artifact/opt
     54    original: build-win64/opt
     55    # Extra diffoscope arguments to account for:
     56    # - about:buildconfig being expectedly different.
     57    # - There are some differences in PE metadata in helper.exe because
     58    #   it's (re)built in the EME build, and that part of the build is
     59    #   not reproducible.
     60    extra-args: >-
     61        --exclude b/"$RESOURCE_DIR"/chrome/toolkit/content/global/buildconfig.html
     62        --exclude b/firefox/uninstall/helper.exe