Github Actions Self-hosted macOS VMs for iOS CI/CD

GitHub Actions has quickly become a favorite for most organizations and projects as they are already using GitHub repositories for code version control. It’s also easy to use and simple to get up and running. However, there is a bit of confusion around setting up and using Github Actions Self-hosted macOS VMs. Fortunately, at Veertu we’re committed to providing integrations and plugin for the various CI/CD platforms and tools that exist. This is why we’re excited to announce our own beta Anka VM GitHub Action! You can find it on the official GitHub Action Marketplace.

Within the Anka VM GitHub Action, we’ve included what we believe are the features needed for the majority of use-cases in modern CI/CD systems:

  • Ability to set both the Anka Template name or UUID and Anka Template Tag you wish to use, per step.
  • Pass options to anka run (inherit environment variables from the host into VM, wait for networking, time to sync, use a different working directory inside of the VM, and disable host <-> guest mounting) and anka start (attach your USB devices to the VM) commands.
  • Artifact uploading
  • STDOUT and STDERR are combined into an output that you can parse for subsequent steps/tests.
  • Proper job cancellation and failure handling/cleanup with Post steps.

It’s important to note that our Anka VM GitHub Action cannot be used with the GitHub hosted macOS hardware. GitHub hosted macOS hardware does not include or license the Anka Virtualization product. Fortunately, GitHub provides self-hosted runner software you can install onto your local or CI/CD macOS machine that will process jobs for your project’s repo or for the entire organization in GitHub. You then install the Anka Build Cloud and license it on that same machine. Visit https://veertu.com/anka-build-trial/ to obtain your free trial of Anka Build Cloud.

Check out our documentation on using the Anka VM GitHub Action or the GitHub Marketplace readme. We also have a video walkthrough available:

We expect customer and internal testing over the coming months to expose weaknesses and missing features. While it is in beta, please contact [email protected] or open a GitHub issue with any comments or concerns.

Share this post

networking-performancev1
Unlocking Superior macOS VM Network Performance: Introducing Anka's new networking mode for Apple Silicon
Large and complex enterprises using Anka have many different demands, and we have worked to continue to develop innovative technology to meet these demands. Enterprise infrastructure hardware is often on the cutting edge, and they need advanced capabilities...
Read More
gitlab-with-anka
Anka Cloud Gitlab Executor
Veertu’s Anka and the new Anka Cloud Gitlab Executor Veertu’s Anka is a suite of software tools built on the macOS virtualization platform. It enables the execution of single or multi-use macOS virtual machines (VMs) in a manner similar to Docker....
Read More
mac-scan-v1
Real-Time CVE Scanning of your macOS Build Systems
It’s common that an organization’s macOS build system will download thousands, sometimes tens of thousands of third-party dependencies every hour. When building and testing iOS applications, it typically downloads and installs third-party...
Read More
anka-on-silicon-v1
The ONLY Fully Automated Apple Silicon macOS VM Creation Solution
Starting in Anka 3.1 we announced that Anka is now able to fully automate the macOS installation processes, disabling SIP, and enabling VNC — all previously manual steps users had to perform inside o the VM. At the time of writing this article,...
Read More
anka_click
Scripting macOS UI User Actions With Anka Click
Starting in Anka 3.2, we’ve introduced a solution for scripting macOS UI user actions. You may ask, “Why would I want to do that?”. Well, often macOS configuration and applications do not have a CLI allowing you to perform certain actions...
Read More
mac-scan-fullscan-shells-v3
Real-time, continuous scan of file downloads on macOS for security vulnerabilities
Today, we are announcing the Beta availability of the Mac Scan solution. Mac Scan software runs on macOS systems (bare metal, virtual, EC2 Mac) and scans downloads in real time for security vulnerabilities. There are multiple scenarios why you would...
Read More
Screen Shot 2022-10-17 at 10.13
Anka 3.1- Fully automated VM macOS installation & The Behavior-Driven macOS UI Automation Framework
We are very happy to announce the General Availability of Anka 3.1 for Apple Silicon / ARM macs. In this release, we are taking our approach to iOS CI automation one step further by introducing a Behavior-Driven macOS UI Automation Framework in Anka,...
Read More
ankam1v2
Migrating from Anka on Intel to Anka on M1 Mac for iOS CI
In this blog, we will cover the key topics for migrating from Anka on Intel to Anka on M1/M2 Macs. Anka is an IaaC solution from Veertu to set up an agile Container like CI for iOS CI using macOS VMs. Anka for Intel uses Apple’s Hypervisor.Framework virtualization...
Read More
ami-scanner-featured-v2
World's first Security Vulnerability scanner for EC2 Mac AMIs
We are excited to announce the General Availability of the world’s first security vulnerability scanner for EC2 Mac AMIs. EC2 Mac AMI Scan scans Intel and Apple Silicon macOS EC2 AMIs, detects security vulnerabilities in third-party packages, dependencies,...
Read More
esxi-to-anka
It's time to migrate your iOS CI from ESXi Virtual Mac Infrastructure to native macOS Virtualization
When VMWare ESXi started officially supporting Apple macOS Virtualization on Mac hardware in late 2012, it opened the doors for the possibility of iOS development to move to a Linux-like, agile, scalable CI infrastructure. Soon enough, many iOS enterprise...
Read More