Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Balrog should be able to generate accurate update URLs #1088

Open
bhearsum opened this issue Dec 20, 2019 · 0 comments
Open

Balrog should be able to generate accurate update URLs #1088

bhearsum opened this issue Dec 20, 2019 · 0 comments

Comments

@bhearsum
Copy link
Contributor

One of the things we often struggle with is generating useful update URLs to test with. Balrog has enough data that it should be able to generate these URLs for us. Because the necessary information is stored in Release blobs, I think it would be best to integrate around them in some way. For example, there could be a button beside the Mapping field in the Rules UI called "Test URLs". When clicked, the user would be prompted for a small amount of information (see below), and then an update URL would be returned, or possibly opened in a new tab. Since we know the Release, we can pull most of the data we need for the update URL from it. We'll still need the user to choose an OS, locale, and possibly channel.

As an example, let's see how we could generate this URL: https://aus5.mozilla.org/update/6/Firefox/53.0.2/20170504105526/WINNT_x86-msvc-x64/en-US/release/Windows_NT%2010.0.0.0%20(x64)/SSE3/default/default/update.xml

We've got the following parts to deal with:

  • Domain - available in app config
  • URL version - Depends on Product Version. We'll probably need to hardcode a list of product version <-> update URL version mappings in the app.
  • Product - Available in the Release
  • Product Version - Available in the Release
  • Buildid - Available in the Release, depends on Locale.
  • Build Target - Available in the Release, depends on OS Version chosen.
  • Locale - User input
  • Channel - User input, but we can probably suggest the most likely one.
  • OS Version - User input
  • System Requirements - Probably just hardcode this to SSE3. Only present in URL version 6.
  • Distribution - Hardcode to "default". Only present in URL version 3 & 6.
  • Distribution Version - Hardcode to "default". Only present in URL version 3 & 6.

(Imported from https://bugzilla.mozilla.org/show_bug.cgi?id=1398202)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant