Arquitectura: Pipeline CI/CD

arch-ci-pipeline-html-poster-espanol Doc

architecture

Pipeline CI/CD — html-poster-español

Sigue el patrón probado de landscaping-assistant. Tres repos involucrados:

html-poster-espanol (código)

  • .woodpecker.yaml — Pipeline CI: clone, bundle install, rubocop, rspec, kaniko build+push
  • Dockerfile — Multi-etapa: ruby-rails-build (compilación) + ruby-rails-runtime (producción)
  • bin/docker-entrypoint — Script de entrada del contenedor

pal-e-services (Terraform)

  • terraform/k3s.tfvars — Entrada en var.services crea: namespace, pipeline Woodpecker, app ArgoCD, ServiceMonitor, Tailscale funnel

pal-e-deployments (Kustomize)

  • overlays/html-poster-espanol/prod/ — kustomization.yaml + deployment-patch.yaml para el despliegue en k8s

Flujo

Push a main → Woodpecker CI (lint, test, build) → kaniko push a Harbor → ArgoCD Image Updater detecta nuevo tag → ArgoCD sincroniza pod → Tailscale funnel expone URL pública.