This repository contains iOS project used for testing Travis CI service.
To read more about the project and continuous integration for iOS apps, checkout blogpost on my webiste.
This project is using Travis CI. The repository is configured for following continuous integration flow:
- Commit and push changes to master branch
- Travis CI will fetch changes and update dependencies defined in Podfile using Cocoapods
- Build project for iPhone Simulator and run unit tests
- Build project for iPhone (distribution)
- Sign app with distribution certificate contained in the repository
- Upload signed IPA file and dSYM to TestFlight API
- If build version changed, notify teammates via TestFlight
Whole process is triggered by pushing changes to the repository and is fully automatic. Distribution certificate, TestFlight API keys and other valuable data are encrypted and stored securely in the repository, so it could be publically available without any risk.