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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

build(releases): automate next version increment #10213

Merged
merged 24 commits into from May 8, 2024

Conversation

brainbicycle
Copy link
Contributor

@brainbicycle brainbicycle commented May 7, 2024

This PR resolves PHIRE-875

Description

Attempts to automate the step to create the next version of the app.

As part of the nightly beta job check if there is an app version 'Ready for Sale' but not an app version in 'Prepare for Submission'. This should be the state after an app is approved by apple for distribution but we have not yet created the next version for development. If so create a new version.

Note on testing!

Because this depends on our app not having an editable version ready I could only test the individual parts of this. I tried to be thorough but the last bit, actually creating the next version via fastlane, I think we just have to see the next time we release if it works.

PR Checklist

  • I have tested my changes on iOS and Android.
  • I hid my changes behind a feature flag, or they don't need one.
  • I have included screenshots or videos, or I have not changed the UI.
  • I have added tests, or my changes don't require any.
  • I added an app state migration, or my changes do not require one.
  • I have documented any follow-up work that this PR will require, or it does not require any.
  • I have added a changelog entry below, or my changes do not require one.

To the reviewers 馃憖

  • I would like at least one of the reviewers to run this PR on the simulator or device.
Changelog updates

Changelog updates

Cross-platform user-facing changes

iOS user-facing changes

Android user-facing changes

Dev changes

  • automate next version creation - brian

Need help with something? Have a look at our docs, or get in touch with us.

@brainbicycle brainbicycle self-assigned this May 7, 2024
@ArtsyOpenSource
Copy link
Contributor

ArtsyOpenSource commented May 7, 2024

This PR contains the following changes:

  • Dev changes (automate next version creation - brian)

Generated by 馃毇 dangerJS against 89d6918

chore: prepare for next release --no-verify

chore: prepare for next release --no-verify

chore: prepare for next release --no-verify

chore: prepare for next release --no-verify
@brainbicycle brainbicycle marked this pull request as draft May 7, 2024 21:17
fastlane/Fastfile Outdated Show resolved Hide resolved
fastlane/Fastfile Outdated Show resolved Hide resolved
@brainbicycle brainbicycle marked this pull request as ready for review May 8, 2024 17:06
fastlane/Fastfile Outdated Show resolved Hide resolved
fastlane/Fastfile Outdated Show resolved Hide resolved
damassi
damassi previously approved these changes May 8, 2024
Copy link
Member

@damassi damassi left a comment

Choose a reason for hiding this comment

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

Couple minor qs, tho nothing blocking. This is a really nice addition 馃憣

puts "Parent latest version: #{parent_version_name}"
puts "iOS latest version: #{ios_build_number}"
puts "Android latest version: #{android_build_number}"
end
Copy link
Contributor Author

Choose a reason for hiding this comment

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

moved to utils file

damassi
damassi previously approved these changes May 8, 2024
MSG
slack(message: message, default_payloads: [], link_names: true)
end
end
Copy link
Contributor Author

Choose a reason for hiding this comment

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

this method is the meat of it:

if live app and no editable app (the next version to go out):
   - create a new version in app store connect
   - update the app.json with the new version
   - open a pr to update in main
   - send a slack message to remind us to merge the pr
else:
   - if editable app
      -  we are good to go 
   - else
      - send a slack message that we need an edit version and it couldn't be created for some reason

MrSltun
MrSltun previously approved these changes May 8, 2024
Copy link
Member

@MrSltun MrSltun left a comment

Choose a reason for hiding this comment

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

Great addition Brian!! 馃専馃専馃専
I just left a few minor non-blocking suggestions

fastlane/Fastfile Outdated Show resolved Hide resolved
fastlane/utility_fastlane.rb Outdated Show resolved Hide resolved
Comment on lines 199 to 202
:x: :iphone:
It's time to update the app version number!
Merge this pr to keep shipping betas:
#{pr_url}
Copy link
Member

Choose a reason for hiding this comment

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

Praise: 馃憦

@brainbicycle brainbicycle dismissed stale reviews from MrSltun and damassi via 197d9d0 May 8, 2024 17:40

macos:
xcode: 15.1
resource_class: macos.m1.medium.gen1
Copy link
Contributor Author

Choose a reason for hiding this comment

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

since we need to use fastlane here had to update the executor

fastlane/Fastfile Outdated Show resolved Hide resolved
@brainbicycle brainbicycle merged commit b96e8ff into main May 8, 2024
7 checks passed
@brainbicycle brainbicycle deleted the brian/automate-next-version branch May 8, 2024 18:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants