Saltar al contenido principal

Qué es Semaphore

Semaphore UI es una interfaz web autoalojada y una API REST para ejecutar la automatización que ya tienes. La apuntas a un repositorio Git que contiene tus playbooks de Ansible, configuraciones de Terraform o scripts de shell, le indicas qué credenciales y hosts debe usar, y se convierte en el único lugar donde tu equipo ejecuta esa automatización, guarda los secretos que necesita y mantiene un registro de cada ejecución.

Puedes ejecutar tareas de forma individual o combinarlas en un único pipeline con Workflows (Pro), conectando compilaciones, pruebas, despliegues y automatización de infraestructura.

Semaphore no sustituye a Ansible, Terraform ni a tus scripts. Los ejecuta, en un servidor en lugar de en el portátil de alguien.

El problema que resuelve

La automatización suele empezar en una estación de trabajo. Un ingeniero tiene el playbook, el inventario, la clave SSH y la versión correcta de Ansible instalada. Eso funciona hasta que una segunda persona necesita ejecutar lo mismo, o hasta que alguien pregunta qué cambió en un host el martes pasado.

Semaphore traslada la ejecución a un servidor compartido y añade las piezas que faltaban:

Pieza que faltaQué aporta Semaphore
Todo el mundo necesita las herramientas instaladasLas tiene un servidor (o un runner); los usuarios solo necesitan un navegador.
Las credenciales se copian entre portátilesUn almacén de claves cifrado que entrega los secretos a la ejecución, nunca al usuario.
No hay registro de quién ejecutó quéCada tarea conserva su salida, su estado de salida, el usuario y la hora.
Nadie debería tener root para ejecutar un playbookLos roles deciden quién puede ejecutar, editar o solo observar.
Las ejecuciones ocurren cuando alguien se acuerdaLos horarios, los webhooks y las llamadas a la API las inician.

A quién va dirigido

  • Equipos de infraestructura y plataforma que ya usan Ansible o Terraform y quieren que sus compañeros lo ejecuten sin repartir credenciales de producción.
  • Equipos que crean pipelines de CI/CD y quieren conectar tareas de compilación, pruebas y despliegue mediante flujos de trabajo, junto con trabajos operativos programados y bajo demanda.
  • Equipos con una plataforma de CI/CD que quieren mantener las ejecuciones operativas — reinicios, despliegues, renovaciones de certificados — fuera del sistema de compilación y visibles para personas que no leen YAML de pipelines.

Semaphore es autoalojado. No hay versión SaaS: ejecutas el binario o el contenedor en tu propia infraestructura, y tus secretos nunca salen de ella.

Qué ejecuta

Cada plantilla de tarea elige una aplicación:

Las tareas se ejecutan en el propio servidor o en runners situados cerca de los sistemas que gestionan.

Workflows (Pro) conecta plantillas de tareas en un pipeline mediante un editor visual. Cada paso puede ejecutar una aplicación diferente: por ejemplo, compilar y probar código fuente con scripts de shell, aprovisionar infraestructura con Terraform y después desplegar con Ansible. Puedes añadir pasos de aprobación, pausas programadas y ramas que se ejecutan en caso de éxito o fallo. Semaphore inicia las tareas posteriores automáticamente cuando se cumplen sus condiciones.

Cuándo no usarlo

Conocer los límites ahorra tiempo después.

  • Sustituir a Ansible o Terraform. Semaphore no tiene motor de ejecución propio. Si tu playbook no funciona desde una shell, no funcionará desde Semaphore.
  • Actuar como CMDB. Los inventarios son los inventarios que necesitan tus ejecuciones, no una fuente de verdad sobre tu parque. Genéralos desde tu fuente real con un inventario dinámico.
  • Ser el gestor de secretos de tu organización. Los secretos se cifran en reposo y están diseñados para que los usen las tareas, no para que las personas los lean. Si ya ejecutas HashiCorp Vault u otro almacén, conéctalo en lugar de copiar los secretos.
  • Ejecutar un servicio de un solo nodo donde cualquier caída sea inaceptable. Varios nodos activos requieren alta disponibilidad, que es una función Enterprise y necesita PostgreSQL o MySQL más Redis.

Qué sigue