Orka 1.6: Shared VM Storage, Automation-Friendly CLI, and More

The Orka 1.6.0 release is packed with powerful new features. Learn about how these changes can enhance your current or future CI/CD pipeline for iOS or macOS.

The Orka 1.6.0 release is here, and it has a wide variety of new features and improvements that will immediately impact teams running Orka for iOS and macOS CI/CD for the better. New features include shared storage for Mac VMs running in Orka, an update to the CLI that allows it to be called inside of an automated workflow, and more.

In order to upgrade your current Orka environment to 1.6.0, you can simply open a ticket in the MacStadium customer portal and schedule a time with an engineer to deploy the update.

Key Updates Included in Orka 1.6.0

Shared VM Storage

All Mac VMs in Orka 1.6.0 have in-network access to shared storage, which can be used to cache build artifacts between build stages, host Xcode installers, and other self-hosted build requirements.

Orka’s shared storage solution consists of a Kubernetes shared volume that can be manually mounted onto a given Mac VM or auto-mounted at system boot.

Simply run the following from within the VM to mount the storage:

sudo mount_9p orka

You will then have access to the shared storage in the VM’s filesystem at:

cd /Volumes/orka

By default, shared storage data lives on your Orka environment's primary storage export. This means that your shared data lives alongside your VM images and ISOs. Teams that require additional storage can request a secondary storage export that is only responsible for housing shared storage data. Visit the Orka docs for more details about shared VM storage.

Automation Friendly CLI

As of Orka version 1.6, the CLI is automation-friendly and can be used with any CI pipeline. All commands now return appropriate exit codes (0 for successful completion of a command and 1 for any errors).

Orka 1.6.0 users can also call the CLI from within a given automated workflow by including the --json tag. For example, to embed the creation of a Mac VM into a workflow with the CLI, users can now simply include the following in any script that has access to a logged-in instance of the CLI:

orka vm create -v  -b  -c  -C  --json -y

Users can also set the output style permanently using the orka config commands:

user-MacBook-Pro:user$ orka config
            URL: http://10.221.188.100      _ Access confirmed.
    License key: orka-license-key           _ Admin user.
   Output style: JSON                       _ Saved.

To set the output style back to table, the user will have to use the new output-style flag.

orka config --output-style TABLE

Check out the Orka docs for more about changing the CLI output to JSON.

User-supplied macOS Serial Numbers

Orka 1.6.0 users can now specify serial numbers per Mac VM using both the Orka CLI and the Orka API. The API accepts a new system_serial field that can be passed with the /vm/create and /vm/deploy requests.

The CLI also supports setting the serial number via --system-serial flag. This flag can be used with orka vm create-config, orka vm create and orka vm deploy.

For example, to deploy a VM template called testvm with the serial number C02TM2ZBHX87, you can run the following:

orka vm deploy -v testvm --system-serial C02TM2ZBHX87 -y

CLI Now Supports GPU Flags

For Orka clusters with GPU enabled, the Orka 1.6.0 CLI now supports additional GPU fields and flags for enabling GPU passthrough for specific Mac VMs.

For example, to enable GPU passthrough in an Orka VM via the CLI, you can simply run:

orka vm deploy -v testvm --gpu yes -y

The above command enables GPU passthrough on testvm.

IO Boost

As released in version 1.5, we began using paravirtualized IO drivers to achieve better write IO performance (read more about the IO boost feature in the Orka docs). When it was first releases, IO Boost was an optional feature that could be enabled in your environment. In Orka 1.6, IO Boost is now turned on by default.

All of these great new features are described further in the Orka 1.6.0 release notes. Most of the features included in this release have been requested or voted on by Orka users, so if you have any great new feature ideas, then let us know through the Orka Ideas Portal. And if you are not a current Orka user, you can give Orka a try with a free two-hour Orka demo environment.