Pasar al contenido principal

Metadrop March 2025: content first, mejoras en Docker y en Drupal

En marzo nos centramos en los flujos de trabajo de desarrollado, la entrega al cliente y, lo más importante, el contenido. Lanzamos un nuevo módulo, Content First, para ayudar a los equipos editoriales a trabajar fácilmente con el contenido del sitio. Mejoramos nuestra infraestructura de Docker, contribuimos al ecosistema de Drupal y dimos soporte a clientes con diferentes soluciones. Aquí tienes un vistazo a lo que se hizo y por qué es importante.

Content First: potenciando los flujos de trabajo editoriales

Hemos lanzado el módulo Content First para hacer que el contenido de producción sea más accesible para las personas que lo utilizan a diario: editores, escritores y gestores de proyectos.

La filosofía de Content First indica que los sitios web deben centrarse en el contenido, no en el diseño. Pero habitualmente incluso cuando los proyectos se centran realmente en el contenido pueden encontrar dificultades cuando el contenido no es de fácil acceso una vez ha sido publicado, por ejemplo porque está disperso en diferentes componentes de contenido como párrafos, bloques u otras piezas.

Este módulo soluciona este problema. Añade una pestaña "Contenido" a la página de cada nodo, mostrando una versión limpia y simplificada del contenido renderizado: sin menús, sin bloques, sin diseño. Solo el texto tal como el usuario lo ve, y donde se puede:

  • Copiarlo con un clic
  • Descargarlo como texto plano
  • Usarlo como base de trabajo para revisiones, traducciones o migraciones

No hay necesidad de pedir a desarrollo exportaciones o buscar a través de campos del backend. Es simple, directo y ahorra tiempo a los equipos.

Imágenes DDEV dockerizadas para CI

Utilizamos DDEV (y Aljibe) para el desarrollo en local y ejecuciones de tests en CI. Esto nos permite tener un entorno con todas las herramientas que usamos a diario, especialmente las herramientas de tests. Sin embargo, hemos tenido algunos problemas de rendimiento en CI: DDEV descarga todas las imágenes durante las pruebas, incluso puede hacerlo en cada paso, dependiendo del software de CI usado. Esto no es un problema de DDEV, sino de la integración con DDEV en un CI, donde se requiere Docker-in-Docker. El resultado era que casi 20 minutos de cada ejecución de pruebas se dedicaban a la descarga de imágenes. Esto no es ideal porque impacta directamente en los costes y el tiempo que se tarda en completar un despliegue, lo cual puede ser muy importante cuando hay un problema de seguridad o una corrección urgente.

Para resolver esto, desarrollamos Metadrop/dind-ddev. Este repositorio proporciona una forma de generar imágenes Docker-in-Docker configurables usando imágenes de DDEV. Esta imagen generada se sube a nuestro repositorio de Docker. La imagen contiene todas las imágenes necesarias para la ejecución de las pruebas, reduciendo así el tiempo de configuración, ancho de banda y tiempo de inicio.

No fue fácil y tuvimos que aplicar algo de magia negra de DevOps, pero finalmente conseguimos superar los problemas con CI. Y ya forma parte de nuestra caja de herramientas de desarrollo estándar.

Imágenes base comunes para herramientas de prueba


Las imágenes para BackstopJS y UnLighthouse (Metadrop/docker-aljibe-tools) utilizan ahora una base Docker común, y tenemos planes para integrar también Pa11y. Estas imágenes se alojan en ghcr.io en lugar de DockerHub, lo que nos permite evitar los crecientes problemas con los límites impuestos recientemente.
 

Al centralizar y optimizar nuestras imágenes, ahorramos tiempo de construcción y reducimos el espacio en disco en nuestros entornos locales y en los ejecutores de CI como Jenkins o GitLab CI.

Lanzamiento de módulos

En marzo tuvimos muchos lanzamientos de módulos, parches de issues del core y en contrib.

Xray Audit 1.6

Esta release se centró en mejorar cómo se organiza y muestra la información de auditoría:

  • Nuevos informes sobre el uso de Webform
  • Detección de estilos de imagen activos
  • URL de informes más limpias y coherentes, y nombres de máquina
  • Métricas de contenido más detalladas

Es un lanzamiento importante y se alinea con nuestra idea de ofrecer a los editores o gestores de sitios mejores herramientas para entender cómo es su contenido.

Mejoras de layout VLSuite

Continuamos trabajando en VLSuite 3.0. Un problema importante fue la dependencia del módulo de la lógica de clases específicas de Bootstrap, que ha sido reemplazada por clases de utilidad basadas en campos para proporcionar una mejor compatibilidad con más themes, incluyendo por ejemplo themes basados en Tailwind CSS.

Mejoras en Graphql Compose

Mientras trabajábamos con el módulo GraphQL y GraphQL Compose nos encontramos con algunos problemas, lo que nos llevó a contribuir parches para resolverlos que ya han sido aceptados.

CDNetworks related modules

Algunos de nuestros clientes utilizan CDNetworks, pero desafortunadamente la comunidad de Drupal no utiliza mucho este CDN. Nos ofrecimos a ayudar en el desarrollo del módulo CDNetworks Purge y lanzamos URL Purge Aggregator para integrar Drupal con este CDN como parte de las mejoras realizadas en un proyecto.

Otros lanzamientos

CI/CD multisitio para cliente empresarial

Migramos un sistema multisitio de BLT a ACLI para Acquia Site Factory. La nueva configuración incluye:

  • Integración con GitLab CI
  • Generación de artefactos
  • Automatización del despliegue

Esto reduce el tiempo de despliegue, mejora la precisión de la caché y permite flujos de desarrollo más limpios.

Auditoría de rendimiento de sitio interno

Realizamos una auditoría de rendimiento frontend y diseño responsivo para una intranet segura. Dado que las herramientas externas no podían acceder al sitio, utilizamos configuraciones locales basadas en Docker de Lighthouse y UnLighthouse para pruebas efectivas solo internas.

Próximamente: Artisan 2.0

Estamos inmersos en el desarrollo de Artisan 2.0, nuestro tema base para Drupal. Los grandes cambios incluyen:

  • Integración de TailwindCSS + DaisyUI
  • Autodetección de variables CSS
  • Compilación de assets basada en Vite

Es una reconstrucción orientada a desarrollado diseñada pensando en el rendimiento, la claridad y la escalabilidad. Hablaremos más sobre esto tan pronto esté listo para una versión estable.

 
Jorge Tutor

Jorge Tutor

CIO
RIcardo Sanz Ante

Ricardo Sanz

CTO

Cursos de formación para grupos

Capacitación presencial y online para equipos de desarrollo y producto.