site_name: CruzCloud Lab site_description: >- Portal de documentación del lab GitOps CruzCloud — arquitectura, decisiones y playbooks de incidentes reales (ZimaOS + k3d + Gitea + Argo CD). site_url: https://docs.cruzcloud.net/ repo_url: https://gitea.cruzcloud.net/devops/apps-registry repo_name: devops/apps-registry edit_uri: _blank docs_dir: docs theme: name: material language: es palette: - media: "(prefers-color-scheme: light)" scheme: default primary: indigo accent: indigo toggle: icon: material/weather-night name: Cambiar a modo oscuro - media: "(prefers-color-scheme: dark)" scheme: slate primary: indigo accent: indigo toggle: icon: material/weather-sunny name: Cambiar a modo claro features: - navigation.tabs - navigation.tabs.sticky - navigation.sections - navigation.top - navigation.footer - navigation.indexes - search.suggest - search.highlight - content.code.copy - content.tabs.link - toc.follow plugins: - search: lang: es # TODO (fase 2): git-revision-date-localized deshabilitado a propósito. # El Dockerfile construye con context: workloads/docs-portal/, que no # incluye .git (vive en la raíz del repo) — el plugin no tiene historial # real que leer y cae siempre en fallback_to_build_date, emitiendo un # WARNING por página. mkdocs build --strict aborta ante CUALQUIER # WARNING, así que mientras no se le dé contexto de build con .git real # (mover el build a la raíz del repo + fetch-depth:0 en el workflow), # este plugin debe quedar fuera para no romper el pipeline. # - git-revision-date-localized: # enable_creation_date: true # type: date # fallback_to_build_date: true markdown_extensions: - admonition - attr_list - md_in_html - tables - toc: permalink: true - pymdownx.details - pymdownx.superfences: custom_fences: - name: mermaid class: mermaid format: !!python/name:pymdownx.superfences.fence_code_format - pymdownx.highlight: anchor_linenums: true - pymdownx.inlinehilite - pymdownx.snippets - pymdownx.tabbed: alternate_style: true nav: - Inicio: index.md - Arquitectura: - Visión general: arquitectura/vision-general.md - Red y exposición: arquitectura/red-y-exposicion.md - Flujo GitOps: arquitectura/gitops-flujo.md - Glosario: arquitectura/glosario.md - Decisiones (ADRs): - "0001 · Por qué k3d": decisiones/0001-por-que-k3d.md - "0002 · Por qué Argo CD": decisiones/0002-por-que-argocd-vs-manual.md - "0003 · HTTP/2 sobre QUIC": decisiones/0003-por-que-http2-sobre-quic-tunnel.md - Plantilla ADR: decisiones/plantilla-adr.md - Playbooks: - Crashloop Medusa: playbooks/incidente-crashloop-medusa.md - 504 túnel Gitea: playbooks/incidente-504-gitea-tunnel.md - Precios Medusa: playbooks/incidente-precios-medusa.md - Imágenes NPM: playbooks/incidente-imagenes-npm.md - Aprendizajes: - Notas sueltas: aprendizajes/notas-sueltas.md - Guía del estudiante: - Inicio: guia-estudiante/README.md - Conceptos básicos: guia-estudiante/conceptos-basicos.md - DevSecOps: - Gitleaks (secretos): devsecops/gitleaks.md - Trivy (imagen + IaC): devsecops/trivy.md - SAST (Semgrep): devsecops/sast.md - SBOM (Syft): devsecops/sbom.md extra: social: - icon: fontawesome/brands/git-alt link: https://gitea.cruzcloud.net/devops