I have this situation.
I have an already published react native app (both ios and android) (1.0.1).
So far, all the changes needed were made using OTA, so I had a jenkins pipeline which was trigger each time I was pushing anything to production branch. One of the main steps here is expo publish —release-channel prod-1, so I’m having the release channel called prod-1 here.
Now, I had to add some dependencies, therefore I am not allowed to use the OTA for these ones.
Here comes the questions:
- What happens if I accidentally publish the current changes (which includes not accepted OTA changes) to the release channel
prod-1? - Should I create a new release channel for these new changes called
prod-2, then create the build for it, then submit it to stores for approval, then once approved released it in production? - If so, what will happen with the initial release called
prod-1, in case I will need to do any changes on that one, should I simply publish again toprod-1and an OTA will be performed for all the users using the old all version? - I was thinking about this flow, please confirm me if this is right or if you have any other ideas:
- Create a new branch called
production-v1where I will merge what I have now on production, with a pipeline for automatically publishing the changes toprod-1(OTA - if needed for the users using the old app). - Change the production pipeline so instead of using the release channel
prod-1, it will useprod-2 - Merge the main into production so it will trigger a new publish to
prod-2channel - Submit the build to the stores and once approved, I should be able to release the new version for the users using the old app.
- Create a new branch called
Please let me know if I’m missing anything here, or if my approach is wrong. Thank you so much!