From 4124a3c8fe7105111fef5927d1dba257fe13fd2a Mon Sep 17 00:00:00 2001 From: "mr. M" Date: Mon, 6 Jan 2025 19:26:26 +0100 Subject: [PATCH] Update Linux and Windows build workflows to use architecture-specific runners and add dynamic port allocation in profileserver.py --- .github/workflows/linux-release-build.yml | 2 +- .github/workflows/windows-release-build.yml | 2 +- src/build/pgo/profileserver-py.patch | 19 +++++++++++++++++++ 3 files changed, 21 insertions(+), 2 deletions(-) create mode 100644 src/build/pgo/profileserver-py.patch diff --git a/.github/workflows/linux-release-build.yml b/.github/workflows/linux-release-build.yml index 9c54d911e..564c295cd 100644 --- a/.github/workflows/linux-release-build.yml +++ b/.github/workflows/linux-release-build.yml @@ -16,7 +16,7 @@ jobs: build-linux: permissions: contents: write - runs-on: ${{ inputs.release-branch == 'release' && 'warp-ubuntu-latest-x64-8x' || 'ubuntu-latest' }} + runs-on: ${{ matrix.arch == 'x86_64' && 'warp-ubuntu-latest-x64-8x' || 'ubuntu-latest' }} strategy: fail-fast: false matrix: diff --git a/.github/workflows/windows-release-build.yml b/.github/workflows/windows-release-build.yml index 1a76b4dac..c19521f05 100644 --- a/.github/workflows/windows-release-build.yml +++ b/.github/workflows/windows-release-build.yml @@ -22,7 +22,7 @@ on: jobs: windows-build: name: Build Windows - ${{ matrix.arch }} - runs-on: ${{ (inputs.release-branch == 'release' && !(inputs.generate-gpo && matrix.arch == 'aarch64')) && 'warp-ubuntu-latest-x64-8x' || 'ubuntu-latest' }} + runs-on: ${{ (inputs.release-branch == 'release' && !(inputs.generate-gpo && matrix.arch == 'aarch64')) && 'warp-ubuntu-latest-x64-6x' || 'ubuntu-latest' }} strategy: fail-fast: false diff --git a/src/build/pgo/profileserver-py.patch b/src/build/pgo/profileserver-py.patch new file mode 100644 index 000000000..cf162035a --- /dev/null +++ b/src/build/pgo/profileserver-py.patch @@ -0,0 +1,19 @@ +diff --git a/build/pgo/profileserver.py b/build/pgo/profileserver.py +index 31556cc9ae1a44a04e300083f7be4dc908cc3794..23ef1d8f5b30068ffdddc3c9cb6cd45e64d93071 100755 +--- a/build/pgo/profileserver.py ++++ b/build/pgo/profileserver.py +@@ -18,7 +18,13 @@ from mozprofile import FirefoxProfile, Preferences + from mozprofile.permissions import ServerLocations + from mozrunner import CLI, FirefoxRunner + +-PORT = 8888 ++import socket ++def find_free_port(): ++ with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s: ++ s.bind(('', 0)) ++ return s.getsockname()[1] ++ ++PORT = find_free_port() + + PATH_MAPPINGS = { + "/webkit/PerformanceTests": "third_party/webkit/PerformanceTests",