Automate Your CI With These 3 Powerful Tools in 2020
Automation of a CI pipeline is often a relative concept to DevOps teams. Most teams have the lofty goal of fully automated processes across the board; however, most aren’t quite there yet. If your team falls into this camp, you might consider trying one or more of the following tools in the coming year!
Configuration of VMs - Ansible:
Ansible offers a powerful and relatively simple means of doing a lot of things, like configuring VMs. Via human-readable, YAML-based scripts, users can execute discrete processes or playbooks that are comprised of multiple, probably interrelated, processes – like installing dependencies on a VM. It plays well with both Orka and VMware, MacStadium’s most popular virtualization platforms.
GitHub Repo of Note: mac-dev-playbook
Configuration of VMs - Chef:
Chef is one of the three best tools for keeping VMs or physical machines up to date, so it isn’t really surprising that it makes this list. What does raise a few eyebrows is who maintains the repo - Microsoft. Go figure. Just the same, it works very well with VMware or Orka in a Mac environment. Specifically, it is a great tool for delivering automation and desired state configurations. Similar to Ansible, Chef users can write a policy or “Cookbook” and then execute that cookbook on a target VM.
GitHub Repo of Note: macos-cookbook
Creating VMs - Packer:
A large percentage of MacStadium’s users include Packer in their CI stack. It is largely used to package a macOS with non-trivial changes for use on a virtualization layer, normally based on ESXi by VMware. Such a workflow would result in a reusable VM image, ready to be deployed time and again without even the slightest change - unless there are changes to the code, of course.
GitHub Repo of Note: packer-templates-mac