Boosting Enterprise Productivity: Official s390x Support for GitHub Actions Runners

The developer community is actively seeking official support for linux/s390x (IBM Z / LinuxONE) within GitHub Actions, specifically for the Actions Runner Controller (ARC) and runner binaries. This crucial feature request, highlighted in a recent GitHub Community discussion, aims to significantly enhance CI/CD capabilities and overall productivity tools for software development in enterprise environments relying on mainframe systems.

CI/CD pipeline integrating diverse architectures with GitHub Actions.
CI/CD pipeline integrating diverse architectures with GitHub Actions.

The Critical Need for Native s390x Support

Organizations operating on IBM Z mainframes face a growing demand for GitHub Actions self-hosted runners that can execute natively on the s390x architecture. This is not merely a convenience but a necessity for modernizing CI/CD pipelines for critical enterprise workloads in banking, insurance, and government sectors.

  • Native Application Development: Building, testing, and validating s390x-native applications requires runners that understand the architecture directly.
  • Eliminating Emulation Overhead: Current workarounds involving cross-compilation or QEMU emulation are notoriously slow and prone to unreliability, hindering development velocity and increasing costs.
  • Container-Native Workflows: With ARC on Kubernetes/OpenShift for s390x, enterprises can adopt ephemeral, auto-scaling runner infrastructures, mirroring the efficiency seen on amd64/arm64. This aligns with modern DevOps practices and contributes to achieving ambitious software engineering OKRs.
Developer managing mainframe integration with modern cloud CI/CD tools.
Developer managing mainframe integration with modern cloud CI/CD tools.

Current Challenges and Workarounds

Without official support, teams are forced to implement complex and often fragile workarounds:

  • Custom ARC Controller Builds: Manually compiling the ARC controller for linux/s390x from source.
  • Outdated Community Forks: Relying on community-maintained forks for s390x runner binaries, which often lag significantly behind upstream releases, posing security and compatibility risks.
  • Manual Helm Overrides: Configuring Helm charts to point to custom-built images in private registries, adding operational overhead for tools for engineering managers.

A Path to Official Support

The community proposes a two-pronged approach for official integration:

Short-Term Goals

  • Add linux/s390x to the ARC controller's multi-platform container image build matrix. The controller, written in Go, and its distroless base image already support s390x, suggesting a minimal change to existing CI/CD pipelines.

Medium-Term Goals

  • Publish official linux/s390x runner binaries in actions/runner releases. The underlying .NET runtime has supported s390x since .NET 8, making this technically feasible.

Evidence of Demand and Technical Feasibility

The discussion highlights strong evidence for this feature:

  • A community fork (Gold-Bull/github-actions-runner) has provided experimental s390x builds since 2022, demonstrating sustained user interest.
  • IBM Z / LinuxONE systems handle over 70% of the world's transaction value, and these organizations are increasingly adopting GitHub.
  • Multiple enterprises are independently custom-building ARC for s390x, indicating a widespread need for consolidated, official support.

Technically, the path is clear:

  • ARC Controller (Go) and its base image (distroless) both support s390x.
  • The Runner (.NET) has s390x support from .NET 8+.
  • Runner container hooks (Go-based) and Helm charts are architecture-agnostic.

Community Recommendations and Call to Action

To accelerate official support, the community suggests several actions:

  • Escalate within GitHub: Open tracking issues in actions/actions-runner-controller and actions/runner, cross-linking to the discussion to capture the attention of product managers.
  • Offer Testing Endpoints: Organizations running OpenShift on IBM Z could offer community-maintained remote testing endpoints, significantly de-risking the maintenance burden for the GitHub team.
  • Streamline Custom Builds: Until official support, teams can automate their own multi-arch upstream builds using GitHub Actions with QEMU emulation, bypassing outdated community forks. An example workflow snippet for building the ARC Controller for s390x is provided below:
- name: Set up QEMU
  uses: docker/setup-qemu-action@v3
  with:
    platforms: s390x
- name: Set up Docker Buildx
  uses: docker/setup-buildx-action@v3
- name: Build and push ARC Controller
  uses: docker/build-push-action@v6
  with:
    context: .
    platforms: linux/amd64,linux/s390x
    push: true
    tags: your-registry/actions-runner-controller:latest

This initiative represents a significant step forward in making GitHub Actions truly universal, expanding its utility as a core productivity tool for software development across diverse enterprise infrastructures. Enterprises and organizations requiring native s390x auto-scaling runners are encouraged to upvote the original discussion and share their use cases to demonstrate strong B2B demand.

|

Dashboards, alerts, and review-ready summaries built on your GitHub activity.

 Install GitHub App to Start
Dashboard with engineering activity trends