
- Brew cask install fastlane manual#
- Brew cask install fastlane software#
- Brew cask install fastlane code#
- Brew cask install fastlane download#
Now, we can set up our CI server from scratch in few minutes.
Brew cask install fastlane manual#
The most importantly it doesn’t need any manual intervention.
Brew cask install fastlane software#
By using this playbook, we managed to get brand new Mac Mini server provisioned with all required software for iOS development and got it attached to TeamCity server within 20-30 min.

Now that, our playbook is ready to play on any macOS machine. We can then provision other Xcode related task like accept the agreement, installing command line tools, installing additional component using Ansible task. xip to any build server machine to install Xcode.

xip file for specific Xcode version and host it on company hosted SAMBA server. It was a major challenge to provide an installation of Xcode.
Brew cask install fastlane download#
You need Apple developer account to download install that software. The most of the Apple software including Xcode is proprietary software. We have Ansible task for each of above step, Let’s get bit deeper into those tasks
Brew cask install fastlane code#
Ansible allows us to write code to manage configurations and automated provisioning of the infrastructure in addition to deployment. Ansible tasks and playbooks are simple YAML files so there is no need to learn another programming language like Ruby to script an iOS infrastructure. The programmable infrastructure or infrastructure as code is key to Continuous Delivery so that we need to have a script to setup these things up automatically without manual intervention. Apple continuously release new or beta versions of Xcode and other developer tools so we should have the ability to quickly setup and use those features. It’s very important to have an ability to reset, rebuild iOS Continuous Integration Server environment whenever needed. We managed to automate almost everything mentioned above using Ansible. This approach was time-consuming as well as it’s very difficult to manage versions of the software installed on the build server. This took almost a day or two to get build machine in the working state. It also involves setting build server as TeamCity Build Agent. An engineer has to manually download and install Xcode with additional components, install required homebrew packages, setup RVM and RubyGems. Previously, we used to manually setup CI or continuous integration server with all the required software for the delivery of an iOS app. In this post, we will see how we provisioned our CI server using Ansible. There were various options like Chef, Puppet etc but we bumped into Ansible because it is simple but powerful tools for infrastructure automation without the need to know any other language like Ruby. We need our iOS infrastructure to be driven by code a.k.an Infrastructure as code. We were looking for something like Docker for Darwin.

One of the most tricky obstacles to Continuous Delivery is the works-on-my-machine phenomenon.

In the previous post, we have seen that how we used Fastlane for continuous deployment of iOS app from continuous integration server. This is the second part of my experience at Photobox Group dealing with Continuous Deployment of iOS apps.
