Which build infrastructure is right for me
You can run builds on Harness-hosted machines or your own infrastructure.
- Harness Cloud
- Self-hosted options
With Harness Cloud, your builds run in isolation on Harness-hosted machines. You can run builds at scale on Linux, Windows, and macOS machines that are preinstalled with software commonly used in CI pipelines.
Harness hosts, maintains, and upgrades these machines so that you can focus on developing software instead of maintaining build farms.
Harness Cloud is available with all CI plans. For more information, go to Use Harness Cloud build infrastructure.
Self-hosted build infrastructure options include local machines, Kubernetes clusters, and VMs from Cloud providers, such as AWS.
- Local
- Kubernetes cluster
- Virtual machines
With the local runner, which is also known as the Docker runner, you can run builds on a local machine. You can execute build steps in Docker containers or directly on the host machine.
This option is recommended for small, limited-scale builds, such as one-off builds on your local machine.
Self-hosted local build infrastructure is available with all CI plans. To learn more, go to Set up a local runner build infrastructure.
This option is available only with paid CI plans.
Executing builds in a Kubernetes cluster is useful when you want to run ephemeral builds-at-scale in your own infrastructure.
When running builds in a Kubernetes cluster, each CI stage executes in a pod, and the stage's steps share the pod's resources.
To learn more about using a Kubernetes cluster as build infrastructure, go to Set up a Kubernetes cluster build infrastructure.
This option is available only with paid CI plans.
Your build infrastructure can use VMs from a Cloud provider, including AWS, Microsoft Azure, GCP, and Anka (for macOS build farms).
To learn more about VM build infrastructures, go to Set up VM build infrastructures.
Supported operating systems and architectures
The following table shows the supported operating systems and architectures for each build infrastructure option.
Operating system | Architecture | Harness Cloud | Self-hosted local runner | Self-hosted Kubernetes cluster | Self-hosted Cloud provider VMs |
---|---|---|---|---|---|
Linux | amd64 | ✅ Supported | ✅ Supported | ✅ Supported | ✅ Supported |
Linux | arm64 | ✅ Supported | ✅ Supported | ✅ Supported | ✅ Supported |
macOS | arm64 (M1) | ✅ Supported | ✅ Supported | ❌ Not supported | ✅ Supported |
Windows | amd64 | ✅ Supported | ✅ Supported | ✅ Supported | ✅ Supported |
Windows | arm64 | ❌ Not supported | ❌ Not supported | ❌ Not supported | ❌ Not supported |
Feature compatibility matrix
Some Harness CI features are not compatible with all build infrastructures or platforms. New features are rolled out for Harness Cloud first before being enabled for other build infrastructures.
Feature | Harness Cloud | Self-hosted local runner | Self-hosted Kubernetes cluster | Self-hosted Cloud provider VMs |
---|---|---|---|---|
Test Intelligence | ✅ Supported | ✅ Supported | ✅ Supported | ✅ Supported |
Test Parallelism | ✅ Supported | ✅ Supported | ✅ Supported | ✅ Supported |
Cache Intelligence |
| ❌ Not supported | ❌ Not supported | ❌ Not supported |
Remote Caching in Build and Push steps | ❌ Not supported | ❌ Not supported | ✅ Supported | ❌ Not supported |
Delegate selectors | ❌ Not supported | ✅ Supported - Pipeline and stage delegate selectors | ✅ Supported - Pipeline, stage, and connector delegate selectors | ❌ Not supported |
Harness Secret Manager | ✅ Supported | ✅ Supported | ✅ Supported | ✅ Supported |
Custom Secret Manager | ❌ Not supported | ✅ Supported | ✅ Supported | |
GitHub App support | ❌ Not supported | ✅ Supported | ✅ Supported | |
STO step in Build stage | ✅ Supported - Linux | ❌ Not supported | ✅ Supported |
|
STO stage in CI pipeline | ✅ Supported - Linux | ❌ Not supported | ✅ Supported |
|
Plugins (Containers) | ✅ Supported | ✅ Supported | ✅ Supported | ✅ Supported |
Plugins (Host VM) | ✅ Supported | ❌ Not supported | 🔸 Not applicable | ❌ Not supported |
GitHub Actions | ✅ Supported - GitHub Actions plugin step | ✅ Supported - Drone plugin | ✅ Supported - Drone plugin | ✅ Supported - Drone plugin |
Bitrise Integrations | ✅ Supported - Bitrise plugin step | ❌ Not supported | ❌ Not supported | ❌ Not supported |
Plugin output variables | ✅ Supported | ❌ Not supported | ✅ Supported | ✅ Supported |
Build details - Artifacts tab | ✅ Supported | ✅ Supported | ✅ Supported | ✅ Supported |