-
Notifications
You must be signed in to change notification settings - Fork 136
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
[Tooling] Automate distribution of TestFlight builds to external tester groups #2537
Conversation
- Automate adding external tester groups to the build after upload - Use the up-to-date content of the `CHANGELOG.md` for the "What to test" field in TestFlight, removing GitHub links from it.
gem 'fastlane-plugin-wpmreleasetoolkit', '~> 12.2' | ||
gem 'fastlane-plugin-wpmreleasetoolkit', '~> 12.4' |
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.
ℹ️ This update is in particular to be able to benefit from this fix on extract_release_notes_for_version
Co-authored-by: Spencer Transier <[email protected]>
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.
Looks good! I verified the names of the external tester group names and that the regex is properly removing the GitHub links from the changelog.
Thanks for the quick review and testing @spencertransier ! ⏸️ FYI I'll hold on merging this PR until I have a diff for the MC Release Scenario ready to land with corresponding changes (i.e. removal of now-obsolete manual tasks) |
@AliSoftware quick question unrelated to this change: are we removing the Slack notifications? While we don't need to follow the steps anymore it would be cool to keep receiving them because it's a signal everything went smoothly. :) |
There's no plan to remove those notifications 🙂 So they'll still be sent, they'll just be shorter since without the instructions anymore 🙂 Note that even once this PR lands, steps for submitting the final build for review to ASC are still manual for now, as for those you need to copy the final release notes from the P2 comment while submitting and CI don't have them. I plan to automate that submission too in a follow-up PR (prompting you to paste the copy from P2 when you'll run the lane)… though not sure I will have time to land that one before I go EOY-AFK this Friday… we'll see) |
ℹ️ Corresponding Scenario diff created (internal ref: D168562-code). Once it's approved I'll land both this PR and the scenario diff in concert. |
What it says on the tin.
As part of calling
upload_to_test_flight
at the end of release builds (post code-freeze, beta, or final release), the automation will now automatically add "external tester groups" to the build in TestFlight for you.It will use the current content of the entries from the
CHANGELOG.md
1 for the "What to test" field in TestFlight when submitting to external testing, after removing the GitHub links from the bullet points.Once this lands, I'll open a diff to remove the corresponding manual tasks from the MC Release Scenario, as they would not be necessary to carry out manually anymore:
#pocket-casts-dev-ios
notification stating that the build has completed, then submit/distribute the build to testers on TestFlight](https://appstoreconnect.apple.com/apps/414834813/testflight/ios)" (Code Freeze and Intermediate Betas)finalize_release
)This PR also ensure that the GitHub Releases now use the latest content of the
CHANGELOG.md
1 (this time keeping the GitHub links).To test
Not sure we can easily test this without doing an actual new beta.
I'm currently making this PR target
trunk
because I'll be on Support Rotation next week and AFK until EOY after that and thus unavailable to provide support in case anything would go wrong when testing those changes in production.However, if there is a new beta planned for PCiOS before end of this week, I'd love to have this change cherry-picked onto
release/7.79
so that we can use the occasion to validate it works as part of the beta (and I can address any issue if needed or revert if not enough time to address them) before adopting those improvements for the next MC Release Scenario sooner than later 🙂Footnotes
The automation now re-extracting the content of the
CHANGELOG.md
at the time the betas are created—instead of using on the ones that were extracted intorelease_notes.txt
during code freeze—ensures that those will include any additional entries that might have been added to theCHANGELOG.md
post code-freeze, e.g. entries for betafixes that landed inrelease/*
since. ↩ ↩2