Overview
A clear plan for boosting adoption can make or break a product.
In 2019, MacStadium, the leading infrastructure provider for all things Mac, was doing the impossible—bringing Kubernetes and Mac virtualization together. An exciting new cloud offering was in development—Orka (Orchestration with Kubernetes on Apple). MacStadium knew they had to make adoption as easy as possible.
And what is the golden rule of easy (and early) adoption? Make sure that customers can quickly plug your product or service into their existing infrastructure and workflows.
So, how do you make it easy for prospective customers to plug an entirely new cloud platform into their existing CI/CD infrastructure? By providing them with various easy-to-use integrations with leading CI/CD tools and services, such as Ansible, Jenkins, GitLab, Buildkite, TeamCity, and GitHub Actions.
An excellent and pretty straightforward solution, right? Right, as long as you have the resources to dedicate to the task. With the MacStadium development team focused entirely on making Orka General Availability (GA) happen on a tight schedule, management found itself looking for outside resources and expertise.
Jenkins was the word
In 2019, Jenkins reigned supreme. Open-source, backed by a vast community, it was (and often still is) the go-to choice for continuous integration and delivery. Naturally, MacStadium had its eyes set on Jenkins as a stepping stone for increasing the exposure and adoption of their new product. They were looking to join in the hype of the shiny Blue Ocean.
Wouldn't it be great if you could partner up with someone who has your best interest at heart? Someone who would advocate for the right solution, even if it's not exactly what you had in mind? Well, that's precisely how we work.
After careful evaluation and discussion, we suggested an alternative course of action—creating a good old Jenkins plugin instead. The reasoning—while a Blue Ocean plugin would look visually striking and provide great publicity, a plugin to spin up and, when you're done, remove macOS virtual machines (VMs) would have more value for MacStadium (and their customers).
A Jenkins plugin meant true automation of macOS workflows at scale, even when you didn't have a macOS at hand.
Getting it done
As far as the development of a Jenkins plugin goes, things were pretty straightforward. MacStadium trusted our senior engineer to design and implement the plugin on his own. He developed a Java client to call the Orka API and built the plugin around it. The plugin relied on the Orka API to spin up and remove VMs from the Orka environment.
Screenshots from the Jenkins plugin
Furthermore, the way our engineer designed the plugin, customers don't need to have any extra Kubernetes, Docker, or Orka knowledge to plug into Orka and get things done. One more step towards easier (and early) adoption!
The real challenge was working daily with a product still in Beta and a team overseas.
While relatively mature and GA-ready, Orka still had a few bugs and unexpected behaviors to fix or workaround. With an in-house team fully dedicated to making Orka ready for its public release, MacStadium managed to address most of the issues our engineer reported on time. Working together was a blast, resulting in a more polished core offering and a fully-functional Jenkins plugin.
Pro tip: Exposure promotes (early) adoption
In the software world, picking a release date is an art form. One that in 2019 MacStadium had perfected.
They announced both Orka GA and its Jenkins plugin during the DevOps World conference, naturally gaining exposure and scoring the community's interest. And what do you know—a significant enterprise customer chose to approach the team at the event.
The results
Today, more than three years after its launch, the Jenkins plugin has hundreds of installs. With more than 95% of clients relying on it daily, it is the go-to way for new and existing MacStadium customers to utilize Orka in their CI/CD workflows.
Long-term partnership
With the Jenkins plugin being mission-critical for MacStadium customers, our team is still providing regular support and updates to the plugin. To ensure smooth sailing, over time, we added comprehensive integration tests developed with Playwright and utilizing Groovy and Docker.
After the success of the Jenkins plugin, we partnered with MacStadium to provide additional integrations: GitLab, Buildkite, TeamCity, and GitHub Actions. Most of these are critical for key MacStadium customers.
MacStadium was also looking for ways to offload some onboarding tasks and empower customers to complete them on their own. For example, bringing up VPN tunnels between infrastructure providers, local Orka setup, and the getting started experience. With a few carefully crafted tutorials and extensive product documentation, the team saw an overall improvement in the onboarding process.
Are you looking for a partner who has your back?
Reach out to us. We'd love to talk and help you launch your ideas into reality!
* All images except the Jenkins logo are the copyright of MacStadium.