Pro iOS Continuous Integration teaches you how to utilize the strengths of continuous integration in your everyday work. CI is more popular now than ever, as iOS developers realize how time-consuming building and deploying an application for testing purposes and quality assurance can be. This book shows you how to make your developing life easier,with real-world applications and examples.
With this book, you will learn what continuous integration and continuous delivery really are and how they can be used in your iOS projects. You will learn how to release an iOS application outside the App Store using Xcode. You'll understand how to leverage the power of the command line to build your projects, and run your tests. You'll use Jenkins and Bamboo to architect automatic builds and automate the whole build process. In addition, you'll also learn how to use Xcode server and bots, what quality assurance tools can be used to measure the quality of your code, and how to send builds to your beta testers.
Author Romain Pouclet provides hands-on, practical experience in iOS continuous integration and, using this book, you will see that it's not actually that hard to set up a fully-featured continuous integration platform, whether you are an independent iOS developer working from home or a member of a team in a big company.
Table of Contents
- Contents at a Glance
- About the Author
- About the Technical Reviewers
- Chapter 1: Introduction to Continuous Integration
- Chapter 2: Continuous integration features in iOS and Xcode
Chapter 3: Using Xcode to Release an Application Outside the App Store
- What We Need
- Getting Ready to Release the Application
- Installing Multiple Versions of the Application
Chapter 4: Invoking the Power of the Command Line
- Command Line Interface?
- Introducing Shenzhen
- Juggling with Multiple Installations of Xcode
- Building the Application
- Anatomy of an Xcode Project File and Scheme Sharing
- Creating the IPA File From the Command Line
- Choosing the Destinations
- Toying with the Application Manifest
- Bumping the Build Version Using Agvtool
- Wrapping it Up and Calling it a Day
Chapter 5: Automatic Builds with Jenkins
- Why Do We Need an Automated Build Platform?
- Jenkins and Hudson: A Bit of History
- Getting Started with Jenkins
- Having a Look Around
- Tuning Jenkins
- Your First Jenkins Job Using the Xcode Plugin
- Jenkins Power User Features
- Getting Feedback
- Integrating Our Build Script
- Integrating Xcode Builds into an Existing Jenkins Installation
- Managing Provisioning Profiles and Private Keys
- Where Do We Go From Here?
Chapter 6: Automated builds with Bamboo
- Getting started with Bamboo
- Having a look around: a different approach than Jenkins
- Extending Bamboo
- Building the Github Jobs application
- Bamboo Power user features
- Getting feedback
- Integrating Xcode builds into an existing Bamboo installation
Chapter 7: Over-The-Air distribution
- What is Over The Air distribution?
- Distributing the app using TestFlight
- Writing your own distribution platform
Chapter 8: Day-to-day use of Xcode bots
- Why do we need yet another continuous integration tool?
- OS X server
- Xcode 6
- Setting up Github Jobs
- Managing the Xcode service from the web interface
Chapter 9: Adding Unit testing to the mix
- Automated Testing
- Unit testing
- Chapter 10: Quality assurance
- Title: Pro iOS Continuous Integration
- Release date: August 2014
- Publisher(s): Apress
- ISBN: 9781484201244