Guía

Una granja de CI de Mac con Mac mini dedicados

Cómo usan los equipos de 5 a 20 Mac mini dedicados como granja de CI: runners por proyecto, una cuenta, una factura e ingenieros que responden.

Actualizado el 2026-09-20

Un Mac mini se encarga sin problemas de los builds de iOS de un equipo. En cuanto tiene tres apps, dos ramas compilando en paralelo y un tren de releases, necesita una granja, y la forma en que la estructure decide si la CI sigue siendo rápida o se convierte en aquello de lo que todos se quejan.

Así trabajan los equipos con 5 a 20 Mac dedicados en MacDuty.

Parta de los builds simultáneos, no del número de personas

La única cifra que importa es cuántos builds deben ejecutarse a la vez en su hora de más carga. No desarrolladores, no repositorios: builds simultáneos.

Una estimación aproximada que vale para la mayoría de los equipos de iOS:

SituaciónMáquinas
Una app, un equipo, builds de PR1 a 2
Dos o tres apps, PR en paralelo y builds nocturnos3 a 5
Tren de releases, tests de UI en una matriz de dispositivos6 a 10
Agencia o equipo de plataforma que da servicio a muchos productos10 a 20 o más

El tiempo en cola es la señal. Si los builds esperan más de un par de minutos en el pico, añada una máquina. Sale más barato que la hora que cada desarrollador pasa esperando.

¿Un runner por máquina o varios?

Cada Mac mini es una máquina entera para usted: sin hipervisor, sin vecinos ruidosos. Eso le da dos patrones válidos.

Un runner por máquina

Lo más limpio. Un build recibe toda la CPU, la GPU y la memoria. Úselo para builds de Xcode y tests de UI, donde un build se come sin problema todos los núcleos que le dé.

Dos o tres runners por máquina

Funciona cuando sus jobs son pequeños y limitados por E/S: tests unitarios, linting, empaquetado. En un M4 o M6 de 32 GB, dos jobs ligeros en paralelo van holgados.

Combinar ambos es normal: máquinas para cargas pesadas dedicadas a los builds de release y máquinas más ligeras llenas de jobs rápidos.

Repartir la granja entre equipos y proyectos

Etiquete sus máquinas y deje que el pipeline dirija los jobs hacia ellas. Las divisiones útiles:

Por proyecto

ios-app, sdk, internal-tools. Cada repositorio apunta a su propia etiqueta, así que un build roto en un producto nunca bloquea otro.

Por función

Máquinas pr, rápidas y siempre en caliente; máquinas release, que se borran antes de cada build firmado.

Por cliente

Las agencias dan a cada cliente sus propias máquinas con sus propias credenciales y certificados. Nada compartido, nada que pueda filtrarse entre cuentas.

Todo en una sola cuenta de MacDuty, con una factura a final de mes.

Mantener la granja en buen estado

Reinstale entre proyectos, no lo deje para nunca

Un Mac que lleva un año compilando acumula versiones de Xcode, simuladores y cachés. Cuando pase una máquina a un proyecto nuevo, pida a soporte una reinstalación limpia. Solo la hacemos con su visto bueno, porque borra el Mac.

Fije su toolchain

La misma versión de Xcode en todas las máquinas de un grupo, actualizada de forma deliberada. Una granja en la que las máquinas se desalinean produce builds que pasan en un runner y fallan en otro.

Vigile la cola, no la CPU

Las gráficas de CPU de las máquinas de build siempre parecen alarmantes y casi nunca indican qué hacer. El tiempo de espera en cola le dice cuándo añadir hardware.

Tenga una de reserva

Con diez máquinas, que una esté caída debería ser una molestia, no un incidente.

Comparación con las nubes de Mac orquestadas

Las plataformas de orquestación añaden una planificación al estilo de Kubernetes sobre macOS virtualizado, y usted paga esa capa. Es realmente útil si necesita VM efímeras creadas por cada job a gran escala.

La mayoría de los equipos con menos de veinte máquinas no lo necesitan. Necesitan unos pocos Mac rápidos y dedicados que sigan en marcha, mantengan sus cachés en caliente y cuesten lo mismo cada mes. Eso es una granja dedicada: máquinas físicas enteras a precio fijo, con la caché de build todavía ahí para el siguiente job en lugar de tirarse junto con la VM.

También tiene la diferencia que se nota a las 2 de la madrugada antes de una release: las personas que gestionan los racks responden al correo.

Poner en marcha una granja

Cuéntenos cómo la quiere: cuántas máquinas, qué modelos y qué hay que instalar en ellas. Si lo pide, las configuramos con su versión de Xcode, el agente del runner, sus claves y certificados, y nos encargamos de las reinstalaciones y los cambios en la flota sobre la marcha, cada uno con su visto bueno.

En stock hoy

Estos están en el rack ahora. Elija uno, vea qué incluye y cree su cuenta solo cuando haga el pedido.

Consultando los racks

Un Mac mini propio

Elija una configuración. Si no está disponible, deje su correo y le escribimos el día en que esté en el rack.

Anual: al menos un 19 % menos que pagando al mes

  • 16GB

    Memoria unificada, 120 GB/s

    Núcleos
    10 CPU, 10 GPU
    Almacenamiento
    Disponible
    En stock
  • El más elegido
    24GB

    Memoria unificada, 120 GB/s

    Núcleos
    10 CPU, 10 GPU
    Almacenamiento
    Disponible
    En stock
  • 32GB

    Memoria unificada, 120 GB/s

    Núcleos
    10 CPU, 10 GPU
    Almacenamiento
    Disponible
    En stock
Visa Mastercard Transferencia SEPAPrecios en EUR, IVA añadido en el pago cuando corresponda. Mínimo un mes, después puede cancelar cualquier mes.

Preguntas

¿Puedo tener varios Mac mini en una sola cuenta de MacDuty?
Sí. Una cuenta admite tantas máquinas como necesite, con una sola factura, para usted o para cada una de sus empresas.
¿Cuántos Mac mini necesito para la CI de iOS?
Dimensione según los builds simultáneos en el pico, no según el tamaño del equipo. De una a dos máquinas para una sola app, de tres a cinco para varias apps que compilan en paralelo, de seis a veinte para un tren de releases o una agencia.
¿Puedo ejecutar varios runners de CI en un Mac mini?
Sí. La máquina es completamente suya. Un runner por máquina para builds pesados de Xcode; dos o tres para jobs ligeros y limitados por E/S en una máquina de 32 GB.
¿Pueden distintos equipos o clientes tener máquinas separadas?
Sí. Las máquinas se etiquetan y se separan por proyecto o por cliente, con sus propias credenciales, en una sola cuenta y una sola factura.
¿Una granja de Mac dedicada sale más barata que una nube de Mac orquestada?
Para una carga de CI constante, sí: un precio mensual fijo por máquina física, sin facturación por horas y sin una capa de orquestación que pagar.

Siguiente