Continuous Deployment for iOS
Article Summary
Doist ships iOS updates weekly to production and daily to TestFlight. Here's how they automated their entire release pipeline.
The Todoist and Twist team shares their journey to continuous deployment for iOS with 9 developers. They've automated everything from versioning to translations while working around App Store constraints.
Key Takeaways
- Weekly production releases, daily TestFlight builds, all automated via GitHub Actions
- Time-based versioning (22.2.7) replaced semantic versioning for simpler automation
- Feature flags with freeze protection prevent crashes from mid-session flag changes
- Automated translation syncing from Transifex with bot-created pull requests
- Fastlane match handles code signing across the entire team
Critical Insight
By combining feature flags, automated versioning, and scheduled releases, Doist eliminated manual release coordination while shipping faster.