Traducido del artículo: “Ahmad Awais Launches Script to Automatically Deploy WordPress Plugin Updates” de:
Justin Tadlock, febrero 3 de 2020
Hoy, Ahmad Awais lanzó WP Continuous Deployment, una tubería de implementación continua para actualizar complementos alojados en WordPress.org a través de acciones de GitHub. Es un script CLI basado en Node.js que simplifica el proceso de mantener los complementos actualizados. Los desarrolladores necesitan escribir una sola línea en su terminal o símbolo del sistema. Además de configurar un par de claves secretas en GitHub, el script maneja todo simplemente en unos momentos.
“Vivimos en la era de los flujos de trabajo ágiles”, escribió Awais en el anuncio del proyecto. “Los desarrolladores sólo quieren git commit && git push y esperan que sus productos se implementen globalmente … Ha pasado un minuto desde que trabajé en un proyecto de WordPress, pero durante el último año más o menos, he estado fantaseando con un complemento basado en git implementaciones de flujo de trabajo que me permitirán finalmente alejarme de esos viejos repositorios SVN “.
El 14 de noviembre, GitHub anunció que lanzaría las acciones de GitHub. Las acciones son una forma para que los desarrolladores automaticen los flujos de trabajo desde sus repositorios Git. Los desarrolladores pueden compartirlos, bifurcarlos y reutilizarlos en proyectos. Unos días después, 10up lanzó dos acciones de GitHub para desarrolladores de plugins de WordPress. Estas acciones son la base para la implementación continua de WP.
La acción de implementación de complementos de WordPress de 10up maneja la implementación de actualizaciones de complementos directamente en el directorio de complementos de WordPress. El archivo Léame de WordPress.org / Acción de actualización de activos maneja la confirmación de cambios en el archivo Léame o los activos de un complemento. El script de implementación continua de WP agrega automáticamente ambos y configura los archivos de flujo de trabajo de GitHub apropiados para cada uno.
“Lo que espero lograr con WP Continuous Deployment es facilitar a cualquier desarrollador el uso de las acciones de GitHub creadas por 10up y otros y ayudar a migrar a este nuevo flujo de trabajo con una pizca de automatización”, dijo Awais. “Sin la implementación continua de WP, migrar a GitHub Actions para implementar plugins de WordPress es una tarea que requiere conocer cómo funcionan las acciones de GitHub, qué archivos debe crear, qué secretos hay y dónde colocarlos. Perdemos una gran cantidad de desarrolladores que no pueden resolver este paso, debido a una experiencia operativa voluminosa y seca “.
El flujo de trabajo para muchos desarrolladores de WordPress hoy se ejecuta directamente a través de Git, principalmente con repositorios alojados en GitHub. A menudo, los desarrolladores esperan que cualquier código comprometido se implemente automáticamente en los lugares a los que debe ir, como los sitios web de producción.
El sistema de directorio de plugins de WordPress, que se basa en SVN en lugar de Git, a veces puede ser un cuello de botella en los flujos de trabajo del equipo. Algunos equipos incluso tienen desarrolladores que nunca han usado SVN en sus carreras. Tiene sentido que los equipos usen un solo sistema. Hacerlo genera menos errores y requiere menos recursos para capacitar a las personas en un sistema de control de versiones moribundo.
“No le estamos haciendo un favor a nadie al mantener a SVN cerca”, dijo Awais. “Los proyectos están contratando a cientos de desarrolladores de código abierto para facilitar que la comunidad de desarrolladores interactúe con sus proyectos. Mientras que WordPress, que una vez mantuvo esa ventaja, ha comenzado a retrasarse al hacer que sea difícil y poco práctico comenzar con el desarrollo de WordPress. Elija 100 estudiantes aleatorios para universidades de todo el mundo y pídales que comiencen un proyecto de código abierto. Le sorprenderá que la mayoría de ellos decidan comenzar con las licencias Git y MIT. Y, aquí en la comunidad de WordPress, pedimos a las personas que usen SVN. Eso es poco práctico e inaccesible para la mayoría de los desarrolladores de hoy “.
Awais dijo que las acciones de GitHub han permitido a su equipo perder mucho peso muerto. Originalmente no hizo sus acciones de GitHub de código abierto porque eran específicas de sus casos de uso. Después de recortar el código, se dio cuenta de que no eran diferentes de las Acciones que 10up ya había lanzado.
“Veo que tratar con SVN como una tarea de DevOps”, dijo. “Es algo de que los desarrolladores web no deberían preocuparse en 2020. Los desarrolladores web quieren crear sitios web. Quieren usar Git para hacer eso. Con JAMstack, todos se han acostumbrado a la idea de impulsar un git commit y obtener la nueva compilación / lanzamiento. Por eso construí WP Continuous Deployment “.
Instalado en 1, 2 …
Captura de pantalla de la configuración de la implementación continua de WP a través de la línea de comandos.
Ejecución del proceso de configuración para la implementación continua de WP
Cuando probé originalmente las acciones de GitHub de 10up el año pasado, había una pequeña curva de aprendizaje. Tenía que averiguar para qué eran esos nuevos archivos de flujo de trabajo y si necesitaba cambiar las cosas. No fue un proceso demasiado complicado, pero hubo un momento de confusión o dos.
Lo que hace el script de Awais es llevar esas dos acciones de GitHub un paso más allá y automatizar casi toda la configuración.
Los desarrolladores deben tener Node.js instalado en su computadora para ejecutar el script, que es bastante común hoy en día. Con un solo comando de npx wp-continuo-despliegue, se instala el script. Luego le pide que ingrese su slug plugin de WordPress.org para configurar todo. Una vez hecho esto, simplemente necesita crear un par de claves secretas en su repositorio de GitHub.
Awais quería automatizar todo el proceso. Sin embargo, GitHub aún no tiene una API para crear claves secretas. Hasta que eso suceda, es el único paso manual requerido.
A los dos minutos de elegir en qué repositorio quería probar el script, ya tenía todo listo. Ahora, sólo necesito encontrar algo de tiempo para escribir el código de algunos de mis numerosos complementos para que realmente pueda poner a prueba este script. Hasta ahora, las cosas se ven bien.
Finalmente, es posible que pueda purgar todo lo relacionado con SVN de mi vida. Eso sería un cambio bienvenido. #lifegoals (metas de la vida).
Quién es Justin Tadlock
Justin Tadlock es desarrollador, diseñador y escritor. Es un ganador del Mes Nacional de Escritura de Novelas. Ha trabajado con WordPress de alguna forma desde 2005. También tiene muchos gatos, pollos y patos.
https://www.youtube.com/embed/z-xGk9c_eOw Guionista y locutor: Manuel Ignacio López Quintero.Fecha de publicación: 31 de diciembre de 2024.