2626jobs :
2727 mac-build :
2828 name : Build macOS - ${{ matrix.arch }}
29- runs-on : macos-26
29+ runs-on : ${{ (inputs.release-branch == 'release') && 'blacksmith-6vcpu- macos-latest' || 'macos-26' }}
3030
3131 strategy :
3232 fail-fast : false
3535 env :
3636 SCCACHE_GHA_ENABLED : ${{ inputs.use-sccache && 'true' || 'false' }}
3737 CARGO_TERM_COLOR : always
38- RUSTC_WRAPPER : ${{ inputs.use-sccache && 'sccache' || '' }}
3938 CARGO_INCREMENTAL : 0
4039 steps :
4140 - name : Checkout repository
4948 with :
5049 node-version-file : " .nvmrc"
5150
51+ - name : Log SDK versions
52+ run : |
53+ ls /Library/Developer/CommandLineTools/SDKs/
54+ xcrun --show-sdk-version
55+ xcrun --show-sdk-path
56+
5257 - name : Run sccache-cache
5358 uses : mozilla-actions/sccache-action@main
5459 if : ${{ inputs.use-sccache }}
@@ -118,7 +123,9 @@ jobs:
118123 - name : Import
119124 env :
120125 SURFER_COMPAT : ${{ matrix.arch }}
121- run : npm run import -- --verbose
126+ SURFER_CERT_PATCH_ISSUER : ${{ secrets.SURFER_CERT_PATCH_ISSUER }}
127+ SURFER_CERT_PATCH_NAME : ${{ secrets.SURFER_CERT_PATCH_NAME }}
128+ run : npm run import
122129
123130 - name : Bootstrap
124131 run : |
@@ -132,15 +139,43 @@ jobs:
132139 - name : Build language packs
133140 run : sh scripts/download-language-packs.sh
134141
135- - name : Insert API Keys
142+ - name : Build Zen (PGO stage 1 - generate)
143+ env :
144+ SURFER_COMPAT : ${{ matrix.arch }}
145+ ZEN_RELEASE_BRANCH : ${{ inputs.release-branch }}
146+ ZEN_GA_GENERATE_PROFILE : 1
147+ ZEN_SAFEBROWSING_API_KEY : ${{ secrets.ZEN_SAFEBROWSING_API_KEY }}
148+ ZEN_MOZILLA_API_KEY : ${{ secrets.ZEN_MOZILLA_API_KEY }}
149+ ZEN_GOOGLE_LOCATION_SERVICE_API_KEY : ${{ secrets.ZEN_GOOGLE_LOCATION_SERVICE_API_KEY }}
136150 run : |
137- mkdir -p ~/.zen-keys
138- echo "${{ secrets.ZEN_SAFEBROWSING_API_KEY }}" > ~/.zen-keys/safebrowsing.dat
151+ export SURFER_PLATFORM="darwin"
152+ if [[ -n ${{ inputs.MOZ_BUILD_DATE }} ]];then
153+ export MOZ_BUILD_DATE=${{ inputs.MOZ_BUILD_DATE }}
154+ fi
155+ bash .github/workflows/src/release-build.sh
156+
157+ - name : Generate PGO profile data
158+ env :
159+ SURFER_COMPAT : ${{ matrix.arch }}
160+ run : |
161+ set -x
162+ export LLVM_PROFDATA="$HOME/.mozbuild/clang/bin/llvm-profdata"
163+ export JARLOG_FILE=en-US.log
164+ mkdir -p "$HOME/artifact"
165+ cd engine
166+ ./mach python ../scripts/download_pgo_extended_corpus.py
167+ ./mach package
168+ ./mach python build/pgo/profileserver.py --extended-corpus ./pgo-extended-corpus
169+ mv merged.profdata "$HOME/artifact/merged.profdata"
170+ mv en-US.log "$HOME/artifact/en-US.log"
139171
140172 - name : Build Zen
141173 env :
142174 SURFER_COMPAT : ${{ matrix.arch }}
143175 ZEN_RELEASE_BRANCH : ${{ inputs.release-branch }}
176+ ZEN_SAFEBROWSING_API_KEY : ${{ secrets.ZEN_SAFEBROWSING_API_KEY }}
177+ ZEN_MOZILLA_API_KEY : ${{ secrets.ZEN_MOZILLA_API_KEY }}
178+ ZEN_GOOGLE_LOCATION_SERVICE_API_KEY : ${{ secrets.ZEN_GOOGLE_LOCATION_SERVICE_API_KEY }}
144179 run : |
145180 export SURFER_PLATFORM="darwin"
146181 if [[ -n ${{ inputs.MOZ_BUILD_DATE }} ]];then
@@ -157,10 +192,6 @@ jobs:
157192 export ZEN_RELEASE=1
158193 npm run package
159194
160- - name : Remove API Keys
161- run : |
162- rm -rf ~/.zen-keys
163-
164195 - name : Rename artifacts
165196 run : |
166197 echo "Tarballing DMG"
0 commit comments