How great CI & CD (Continuous Integration & Continous Deployment) would add value to every team, from an iOS perspective
a 🧵
CI is essentially continually merging code into a development(or any other WIP branch) branch that can be distributed to stakeholders using automated pipeline -> CD
When a developer is working on a feature they commit their work daily(or as often as possible) and PR into a development branch
As soon as PR gets approved the developer merges their code
CI pipeline that you previously setup (like https://www.bitrise.io ) runs unit tests, makes a build and deploys that build to App Store Connect (or your own deployment platform)
This bit is iOS-specific: App Store Connect has a tool called TestFlight (which is integrated into the platform and a standalone app to download)
This bit is also iOS-specific: Add stakeholders under App Store Connect Users, they download the TestFlight App and accept email invitation to access your App
Now the best part
You have CI & CD pipeline setup
Every time you merge new code into your development branch, CI pipeline picks it up, makes a build, deploys the build and sends a notification to stakeholders that a new version of the App is ready to download
Now QA / stakeholders can test/try out code changes within an hour (this obvs depends on the size of your codebase and build times) of merging new code
And that’s without you, the developer, lifting a finger after merging new code
Voila!
Developers can now focus on writing code
QA & Stakeholders have an almost immediate overview of changes done to the App which shortens the feedback/testing loop and helps catch any bugs or highlight needed improvements faster
Wondering why more companies are not setting up this kind of CI & CD pipeline?
You can follow @MikeljTim.
Tip: mention @twtextapp on a Twitter thread with the keyword “unroll” to get a link to it.

Latest Threads Unrolled:

By continuing to use the site, you are consenting to the use of cookies as explained in our Cookie Policy to improve your experience.