SShortSingh.
Back to feed

airCloset CTO: Switching CI Runners Cut GitHub Actions Costs by 75%

0
·1 views

airCloset CTO Ryan reports that migrating GitHub Actions runners from GitHub-hosted to third-party providers reduced per-run CI costs to roughly one-quarter of the original expense. The company made two successive migrations — first to Blacksmith, then to Namespace — each requiring only a single line of code change in the workflow configuration. Beyond cost savings, the move cut the slowest runs (p90 latency) by 37% and eliminated silent hang failures entirely. The team notes the savings are only relevant for organizations that have exceeded GitHub's free tier, as repositories within the 3,000 free monthly minutes have no reason to migrate. With AI agents increasingly driving development and multiplying both run counts and task complexity, the CTO warns that unmanaged CI costs will grow steadily unless addressed.

Read the full story at DEV Community

This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)

Log in to join the discussion and vote.

Log in

Related stories

0
ProgrammingDEV Community ·

Why AI Agents Need Human Architects to Avoid Brittle Code

A software developer shares lessons learned from working with AI coding agents, finding that while they are fast at implementing standard patterns, they consistently optimize for immediate tasks rather than overall system design. The developer observed that the AI repeatedly violated a layered architecture by misplacing database transactions, a mistake that persisted across sessions because the agent treated existing shortcuts as patterns to replicate. A separate incident showed the agent proposing a complex multi-step git workflow to solve a problem that required only three simple commands, illustrating a tendency to over-engineer when correcting mistakes. The core finding is that AI agents solve the prompt in front of them, not the broader architectural intent, which remains entirely the developer's responsibility. Without explicit, documented architectural rules, the agent will quietly erode system boundaries in ways that compound over time.

0
ProgrammingDEV Community ·

How to Deploy, Update, and Scale Custom Apps on a Kubernetes Cluster

A DEV Community tutorial guides users through deploying a custom containerized application on an on-premise Kubernetes cluster, continuing a multi-part series. The walkthrough covers building a Docker image using an Alpine-based Dockerfile with Java 11, publishing it to Docker Hub or a private registry, and creating a Kubernetes Deployment via the command line. It explains how to expose the application externally using a LoadBalancer-type Service with a manually assigned IP, since on-premise environments lack automatic load balancer provisioning. The guide also demonstrates rolling updates and rollbacks using kubectl commands to minimize downtime during version changes. Finally, it covers both manual replica scaling and automatic scaling through a Horizontal Pod Autoscaler configured to trigger when average CPU usage exceeds 75 percent.

0
ProgrammingDEV Community ·

How to Deploy Your First Container on an On-Premise Kubernetes Cluster

Part 5 of a hands-on series guides users through deploying an Nginx application on a self-built Kubernetes cluster after completing setup steps in earlier installments. The tutorial walks through creating a Deployment manifest that runs two Nginx pod replicas, ensuring high availability and automatic recovery across worker nodes. A NodePort Service is then configured to expose the application externally via any node's IP address, making it suitable for on-premise environments without a cloud load balancer. Verification commands such as kubectl get deployments and kubectl describe service confirm that pods are running and the service is reachable. Successfully loading Nginx's default page through the assigned NodePort validates that the full cluster stack, from control-plane scheduling to pod networking, is functioning correctly.

0
ProgrammingDEV Community ·

How to Install Containerd and Kubernetes on an On-Premise Cluster

Part 2 of this tutorial series covers installing the container runtime and Kubernetes components on all nodes of a self-hosted cluster. The guide walks through enabling required Linux kernel modules and configuring network routing parameters needed for pod communication. Containerd is installed via Docker's official repository, with the systemd cgroup driver enabled to align with kubelet's default settings. Kubernetes components kubelet and kubeadm are then installed from the official v1.31 repository and pinned to prevent automatic upgrades that could break cluster compatibility. Finally, the kubelet service is enabled to start automatically on boot across all master and worker nodes.

airCloset CTO: Switching CI Runners Cut GitHub Actions Costs by 75% · ShortSingh