Hi, I'm trying to build firefox on my own in order to attempt to fix a network bug in page reloads. I've built firefox on my own following Mozilla docs and I'm trying to understand how playwright builds browsers. It seems like this script is intended to be run internally and depends on a playwright-browsers repo that is not public available: https://github.com/microsoft/playwright/blob/main/browser_patches/roll_from_upstream.sh
Am I getting this right?
This thread is trying to answer question "Is the script intended to be run internally and does it depend on a 'playwright-browsers' repository that is not publicly available?"
Sure, let's dive into how Playwright manages browser dependencies and how you can configure it to download browsers from custom locations.
Playwright keeps track of the packages that need browsers and cleans them up as you update to newer versions. You can opt-in for this mode by adding the following line to your
This tells Playwright to manage and track browser dependencies based on the packages you're using.
By default, Playwright downloads browsers from Microsoft's CDN. But if your company maintains an internal artifact repository to host browser binaries, you can configure Playwright to download from your custom location. Just set the
PLAYWRIGHT_DOWNLOAD_HOST environment variable:
If your company uses an internal proxy that blocks direct access to public resources, you can configure Playwright to download browsers via a proxy server. Set the
HTTPS_PROXY environment variable:
That's it! Now you know how to manage browser dependencies and configure Playwright to download browsers from custom locations. For more tips and tricks, check out our blog.
Rayrun is a community for QA engineers. I am constantly looking for new ways to add value to people learning Playwright and other browser automation frameworks. If you have feedback, email firstname.lastname@example.org.