Agustín Prieto
Ingeniero DevOps. Infraestructura como código, pipelines y seguridad, sin gastar más de lo necesario.
Sobre mí
Trabajo en operaciones y plataforma. Lo que me interesa no es la herramienta sino la cadena entera: que un cambio llegue a producción de forma repetible, con permisos mínimos, y que cuando algo falle se sepa antes de que lo note nadie.
Lo que he construido: fixcomap/platform
Base de infraestructura en GCP para fixcomap, construida con mi hermano desde cero y en público. No hay producto todavía: hay la cadena que lo llevará a producción. Esta misma página se publica con ella.
- Cero claves de servicio
- GitHub Actions entra en GCP por Workload Identity Federation (OIDC). El pool solo acepta tokens de la organización; cada service account se bindea a un repo, rama y environment concretos. Una PR nunca tiene permiso de escritura. wif.tf
- Capas con radio de explosión acotado
-
Cuatro estados de OpenTofu, cuatro identidades:
bootstrap(WIF, estado),platform(IAM, secrets, registry: aplica con aprobación humana),app(Cloud Run: aplica sola, no puede tocar IAM) ydns(Cloudflare). README - Un solo camino a producción
-
Cada merge en
main: plan → apply con aprobación (solo si hay cambios) → build, escaneo con trivy, firma keyless con cosign, deploy y tag de versión. Nada se aplica desde un portátil. deploy.yml - El plan limpio es la verdad
- Un cron nocturno planifica todas las capas y abre un issue si alguien tocó algo a mano. Otro inventaría recursos con coste fijo: cualquier PR que meta un balanceador, NAT o base de datos gestionada se bloquea salvo que justifique el coste mensual. drift.yml · cost-guard.yml
- Pipelines como producto interno
- Los sitios estáticos de la organización no tienen pipeline propio: llaman a dos reusable workflows con doce líneas. Checks, preview por PR, deploy a Cloudflare Pages y smoke test viven en un sitio; cambiar el pipeline es una PR, no una por repo. rw-pages-deploy.yml
- Que se pueda operar sin mí
- Uptime checks con alerta, aprobaciones que cualquiera del equipo puede dar, y un runbook con los casos reales: deploy rojo, rollback, drift, credencial caducada, fin del free trial. Runbook
Coste mensual de todo lo anterior: el dominio.
Cómo trabajo
- El coste manda: nada fuera del free tier sin una cifra mensual delante.
- Si algo parece necesitar una credencial de larga duración, el enfoque está mal.
- Todo por pipeline, con la identidad mínima para cada paso.
- Nada está hecho hasta que el plan sale limpio.
- Sin módulos ni abstracciones hasta que haya repetición real.
Stack
- GCP: Cloud Run, Artifact Registry, Secret Manager, Cloud Monitoring, Workload Identity Federation
- OpenTofu, tflint, checkov
- GitHub Actions (OIDC, environments, reusable workflows, Renovate), CodeQL
- Cloudflare: DNS, Pages, Email Routing
- Docker, distroless, trivy, cosign, gitleaks
- Go, Bash
Experiencia
Detalle en el CV en PDF.