Machine Runner 3.0 GA now w/ support for macOS and Windows

Machine runner 3.0 is now generally available, providing improvements to usability, setup, and maintenance of machine runners. View the docs to install on linux, mac or windows.

To give users more time to migrate, we are extending support for runner 1.1 variants through July 31st, 2024, after which downloads and API endpoints will no longer be available.

If you’re currently using launch agent, see our migration documentation for linux, mac or windows.

This upgrade is for customers running machine runners via launch agent. Container runners and machine runners are now built using the same framework. Existing launch agent users will need to upgrade to the new application, but existing Container Runner installations will not require any additional action.

Benefits of upgrading:

Faster feature enhancements:

  • Moving forward, we’ll bring many network resilience feature enhancements to both types of self-hosted runners (machine and container) simultaneously.
  • We are targeting future support for on-premise storage, decreasing runner costs, faster execution, and improved security.
  • Machine runner updates (along with container runners) will now be found in the runner changelog

Improved usability:

  • With more uniform logs and metrics, CircleCI’s machine runners ensure consistent and reliable performance across environments, providing a seamless experience for users regardless of their runner setup.
  • Improved network resilience from bringing machine runners to parity with container runners.

Easier setup and maintenance:

  • Linux and macOS packages will allow you to pin and rollback agents as needed when installed via a package manager (Windows requires manual updating). Packages are also signed by CircleCI allowing more confident installation
  • OS conventions for installation/log/configuration locations are more closely followed
  • Easily integrate with cloud templating tools that already have package management tooling built in
  • This allows users to easily integrate with their preferred cloud templating tools, manage updates on their own terms, and benefit from OS conventions for installation, log, and configuration locations.
  • Customers can use tools they’re already experienced with to manage when they choose to update their machine runners (vs before when they either updated when we forced them to, or not at all)

This open preview is limited to Linux. macOS and Windows support will be coming when we make Machine Runner 3.0 generally available. General availability is targeted for November.

To give users more time to migrate, we are extending support for runner 1.1 variants through July 31st, 2024, after which downloads and API endpoints will no longer be available.

If you’re migrating from launch agent, follow the instructions in our documentation.


With so much work going on to improve the runner agent are there any plans in place to improve the features available within the web GUI?

Currently, the GUI allows the creation of a ‘Resource Class’ but offers no ability to delete a defined resource. Instead, an end user has to find the right section of the manual to discover how to do this. This is made even harder by the docs being structured to only focus on the installation or migration of runners.

At the moment someone who has defined one or more runners via the web GUI has to find the 3 entries in the Self-hosted runner FAQ, then also research the circleci CLI to understand how it relates to the information shown in the web GUI.

1 Like

Agree. The ability to modify “resource_class” for self-runner would’ve been a nice feature.

1 Like

thanks for the feedback @rit1010 and @fupslot, I’ll make sure these suggestions around the GUI get reviewed. Regarding documentation, I spoke to the team about improvements to account for the need to make changes/deletion in our structure so I really appreciate you voicing the issue you had.

1 Like

@AlexExum Our team’s self-hosted runners are based on the circleci/runner docker image, as described in the docs here. Is that approach still supported?

Specifically we are using circleci/runner:launch-agent as our base image, and based on the name I’m sort of assuming it’s not supported, but I can’t find any docs on how to migrate off this approach. I see instructions for linux, mac, and windows but can’t find anything for a docker-based machine runner. Is there a new base image we should switch to?

1 Like