-
Notifications
You must be signed in to change notification settings - Fork 10
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
Work with the new application-services release process #105
Conversation
@JohanLorenzo Do you think this code could work? I'm hoping to get all my PRs ready before the end of the nightly cycle so we can make the swap at the start of the 114 cycle. |
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.
The overall logic looks good to me. Thanks for taking care of these changes!
If I'm not mistaken, we'll have to support the old get_latest_as_version()
logic for beta and release. Otherwise, we will break these branches. It should be a matter of having this logic:
if as_major_version >= CUTOFF_VERSION:
# new logic
else:
# old logic
r.raise_for_status() | ||
return r.json()["version"] | ||
else: | ||
raise NotImplementedError("Only the AS nightly channel is currently supported") |
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.
Ah, relbot doesn't "ride the train". Any change we make and release has to be compatible with nightly, beta, and release at once. I'm sorry about this. The good news is: this logic will go away once bug android-to-gecko-repos is done
return match_as_channel(content_file.decoded_content.decode("utf8")) | ||
|
||
|
||
def validate_glean_version(v): |
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.
Improvement for a potential followup: we could make glean and application-services part of mozilla-version. This Python library takes care of validating version numbers (historical ones as well as future ones)
Ahh, I see. I updated the code to handle both cases. It turned out that it was usually easier to check the a-c version than the a-s one. I manually triggered PRs for both the new and legacy case on my firefox-android repo and they looked good to me. |
@JohanLorenzo Do you need to r+ the changes? |
Updated the code to handle nightly releases. The release channel is not implemented yet, but I plan to come back and do that once the new nightly system is in place.
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.
Thank you for taking care of the review, @jcristau! Sorry, I missed that one, 2 weeks ago.
I'm not sure this one is ready to merge because there's also related app-services and firefox-android PRs. They all need to be merged together for the new system to work. I'm hoping to get those merged today, but I'm not sure about that. If they don't get merged, then I think the android-components bump tomorrow may fail. I'll definitely update you with the status before eastern time EOD. Sorry for not mentioning this earlier, I'm not used to juggling so many PRs. |
@bendk firefox-android pins a specific tag of relbot (https://github.com/mozilla-mobile/firefox-android/blob/c1add9b7278852b5d80a5a3750a6d811d928828f/.github/workflows/ac-update-geckoview.yml#L32), so it shouldn't matter when this gets merged, we can make a relbot release and then include a bump of the relbot version in the firefox-android PR. |
Ahh, very nice. Could you make a release with this change? Once that's done, I'll update my firefox-android PR to include the bump. |
Updated the code to handle nightly releases. The release channel is not implemented yet, but I plan to come back and do that once the new nightly system is in place.
I tested this by merging the
app-services-nightlies
intobendk/firefox-android/main
then running the relbot script against it.Here's the resulting PR: bendk/firefox-android#3
Here's the script output: