Building a private iOS Device Cloud

Now that you have Anka Build up and running for your iOS CI infrastructure, your developers are more productive and your environment is easier to manage. But how do you test your iOS app releases on multiple iOS devices to make sure they are rendering properly?

Anka Build enables you to execute tests on real devices, in the same way as your simulator-based test workflow. Cable your physical devices to your Anka Build macOS private cloud nodes, then connect them at run time to on-demand macOS VMs and run your tests. Using Anka, you can manage a single device or a group of similar devices through a simple command line interface.

What are the benefits of this approach?
  1. One single scalable iOS infrastructure for build, simulator based tests and real device tests.
  2. Eliminates the need to separately manage mac hardware connected to real devices for CI.
  3. Management of real devices through a simple, command line interface.

Check out the following example of making a real device available on-demand for testing:

Step 1 – Create a VM to be used for real device testing

Step 2 –  Let’s say you need to run multiple tests on multiple ipad models. Create a USB-group called ipadgrp:

`anka usb-group create ipadgrp`

Step 3 – Add all of your ipad models to this group:

`anka usb-group add-device <device identifier1> ipadgrp`

`anka usb-group add-device <device identifier 2> ipadgrp`

Step 4 – Attach this usb-group to the previously created VM:

`anka modify VM add sub-group ipadgrp`

Step 5 – Configure your specific CI job to use this VM for real device testing.

Step 6 – Use Anka Controller to spin up on-demand instances of this VM. Each VM instance at run time will claim an available ipad device from the `ipadgrp` and make it available for testing.

Additional documentation on this feature is available at using real devices with Anka Build.