Skip to content

Conversation

@titusfortner
Copy link
Member

@titusfortner titusfortner commented Dec 15, 2023

Status

This is in Draft because it is using my fork to demo the proof of concept.
This Git Hub Actions Run — https://github.com/titusfortner/selenium/actions/runs/7219076550
Made this commit — titusfortner/selenium_manager_debug@fab2d26
And did this release — https://github.com/titusfortner/selenium_manager_debug/releases/tag/selenium-manager-fab2d26

Description

  • On every commit to trunk in the rust directory (too much? daily seemed too little and also too much?)
    • Builds all Selenium Manager binaries (including debug)
    • Creates a commit in a separate repo with the hash values of the files
    • Creates a tag from that commit and does a release, and uploads all selenium manager binaries
  • Toggle Selenium Manager behavior in build based on pinned_browsers instead of stamp (the way I'm skipping downloading is definitely hacky, there is probably a better way)
  • Deletes Selenium Manager binaries from repo
  • selenium_manager.py file very similar to pinned_browsers.py to update the url and hash for the latest version of binaries

Motivation and Context

Future Considerations

  • Remove all Bazel Rust things as Lost Cause
  • Make build-selenium-manager.yml part of ci-rust.yml
  • Would probably be better to store all the files in the releases zipped, but I got http_file working before I could figure out how to get http_archive working

@titusfortner titusfortner added the B-build Includes scripting, bazel and CI integrations label Dec 15, 2023
@codecov-commenter
Copy link

codecov-commenter commented Dec 15, 2023

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (0f1489d) 58.05% compared to head (f2256b6) 58.05%.
Report is 9 commits behind head on trunk.

❗ Current head f2256b6 differs from pull request most recent head 5ed6430. Consider uploading reports for the commit 5ed6430 to get more accurate results

❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@           Coverage Diff           @@
##            trunk   #13314   +/-   ##
=======================================
  Coverage   58.05%   58.05%           
=======================================
  Files          88       88           
  Lines        5338     5338           
  Branches      224      224           
=======================================
  Hits         3099     3099           
  Misses       2015     2015           
  Partials      224      224           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link
Member

@diemol diemol left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is pretty good, thank you @titusfortner!

I think building on every commit is fine, given that it does not change a lot.

@titusfortner
Copy link
Member Author

Ok, I've updated the repo names to point to https://github.com/SeleniumHQ/selenium_manager_snapshots/ (the releases there were automatically generated by Selenium's CI).

I've moved the CI code from build-selenium-manager.yml to ci-rust.yml. Binaries are only built/released when rust directory has a commit and all tests are passing (or triggered manually).

@titusfortner titusfortner marked this pull request as ready for review December 20, 2023 15:53
@titusfortner titusfortner force-pushed the sm_release branch 4 times, most recently from 061d851 to 11bdec9 Compare December 22, 2023 04:25
@titusfortner
Copy link
Member Author

I had this working, then I tweaked something and now it isn't deploying. At least it is passing RBE now. Once I figure out why it isn't releasing the binaries any more, I'll merge this.

@titusfortner
Copy link
Member Author

Ok, this makes sense. It wasn't working as a PR because of tokens, but when I run this code as a Selenium branch, it works — https://github.com/SeleniumHQ/selenium/actions/runs/7331186361
So I'm merging it.

@titusfortner titusfortner merged commit 64755fa into SeleniumHQ:trunk Dec 26, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

B-build Includes scripting, bazel and CI integrations

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[🚀 Feature]: Stop storing Selenium Manager binaries in Repo

3 participants