-
Notifications
You must be signed in to change notification settings - Fork 6k
[web] add a CIPD browser roller (Chromium only for now) #31740
Conversation
If a brave soul would like to tackle this while I'm busy with other things in the next couple of days, here's a quick TODO cheatsheet for this PR:
|
I did a bunch of changes to add the chromedriver. I still haven't tested the actual upload to CIPD. I might add a tag that is version:96TEST or similar. I just want to be sure Godofredo is around so I don't break things in infra (that might grab by most recently updated package or similar). Current usage:
|
(force-pushed after rebase with main) |
I just rolled version:96 + build Id ref, I'll try to restart checks and see what happens: $ dart ./dev/browser_roller.dart --verbose
|
The linux drone has been able to successfully download Chromium from its ref. Logs. |
However:
I need to check the previously working version and check what's the internal structure of the ZIP. It must be different than the one that we're downloading now :/ |
I just rolled version:96.1 with the latest changes to the packaging of the script (2 copies of the browser+driver in different locations). $ dart ./dev/browser_roller.dart --verbose
|
Linux tests seem to be passing now, yay!
|
"Linux Web Framework tests" target is still using a 2 year old version of Chrome |
Gold has detected about 13 new digest(s) on patchset 8. |
Windows build failed. Looks like some windows canvaskit tests are timing out (on setUpAll???):
Logs:
|
Looks like some tests may be hanging in |
Slightly different set of failures in a rerun:
|
Gold has detected about 13 new digest(s) on patchset 9. |
Gold has detected about 13 new digest(s) on patchset 10. |
* Refactored code of the script a little bit to reuse some common chunks. * Ensure the CIPD output is compliant with what is expected (currently). We could undo this, but then the CI script needs to change. * Update the browser lock to v96 TODO: Update docs with the new way to update the CIPD bundle TODO: Enable the cipd create command (line 233)
Some recipes require the Chrome executable to be in the root of the CIPD bundle, others inside a `chrome-mac` directory. This change copies the browser so it's available in two locations: * The root of the bundle * The chrome-PLATFORM subdirectory Once recipes are made to agree with each other, the unnecessary copy may be removed. This change also prevents the user to upload a CIPD package with a duplicate version:XX tag. CIPD cannot locate a package if more than one instance has the same version:XX tag.
It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption to this rule, contact Hixie on the #hackers channel in Chat (don't just cc him here, he won't see it! He's on Discord!). If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix? Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing. |
…day. Do not duplicate build sizes. That will need to be fixed at the recipe level (being backwards-forwards compatible to the CIPD bundles)
Gold has detected about 13 new digest(s) on patchset 13. |
@christopherfujino may we get a text exemption for this change? This is a script in |
test-exempt: this is a utility script only to be used as part of repo maintenance. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
Add a roller for browser CIPD packages. This initial version only implements a roller for Chromium. We should also add Firefox in the future.