How To automate GraphViz generate image from dot file using alpine-org2blog

index | about | archive | charlas | docs | links

dot | git | img | plt | tty | uml

alpine-org2blog-graphviz.png

las páginas quieren ser repos!

Hace poco automaticé la generación de la sección links de mi blog 1 creando un nuevo repositorio osiux-links 2, de manera similar ahora la sección dot de mi blog se genera a partir del repositorio osiux-graphviz 3

Si bien puede parecer un exceso, crear un repositorio solo por una página, este método ofrece grandes ventajas, principalmente, tener la posibilidad de actualizar una sección independientemente de todo el sitio, versionar otros tipos de archivos, darles otra vista y encadenar las diferentes CIs (Continuous Integration) aporta valor.

static vs dynamic

Antes una imagen generada a partor de un archivo .dot en el blog solo existía en forma de .png y además era completamente estática, es decir dependendía de un commit individual en el repo blog para ser actualizada.

Ahora a partir de archivos .dot, se generan de manera dinámica las imágenes en formato .png en el repo osiux-graphviz y mediante las definiciones del archivo .gitlab-ci.yml, éstas imágenes se actualizan en el repo blog, permitiendo además genenar una galería de imágenes GraphViz en el archivo dot.org de manera automatizada!

alpine-org2blog

Tuve que actualizar la imagen alpine-org2blog, agregando los paquetes graphviz y ttf-inconsolata a fin de realizar correctamente la generación de las imágenes.

consolidar para comparar

Hace años que tengo archivos .dot dispersos en diferentes proyectos, algunos inclusino ni siquiera estan versionados y sobreviven gracias los backups y siempre que voy a realizar un nuevo grafo, termino perdiendo tiempo buscando algún ejemplo anterior para tomarlo de referencia.

Consolidando los diferentes grafos terminados en un único repo puedo garantizar que los tengo todos versionados y juntos para realizar comparaciones, copiar atributos y/o estilos y por sobre todo usarlos como fuente de inspiración para nuevas ideas de representación.

a commitear!

De momento agregué pocos ejemplos, solo para probar que el circuito de generación automatizada funciona, y la buena noticia es que la Galería no solo se convierte a .org y de ahí a .html, como bonus extra, se genera en formato .md y .gmi en los diferentes mirrors del Blog.

De ahora en mas, solo basta agregar el .dot y todo sale sobre ruedas!

te sugiero leer

ChangeLog

  • 2023-03-06 22:28 agregar links y footnote en How To automate GraphViz generate image from dot file using alpine-org2blog
  • 2023-03-06 21:44 agregar How To automate GraphViz generate image from dot file using alpine-org2blog

Notas al pie de página: