Gran parte de la conversación en la industria del software gira en torno a la experiencia del desarrollador. Desde nuevas formas de medir la productividad hasta reducir el trabajo importante pero pesado, las organizaciones están tratando de hacer la vida más feliz a los desarrolladores. Un área que está ganando más atención es el uso de paquetes de compilación para crear aplicaciones para entornos nativos de la nube. Si bien no es un concepto nuevo (los paquetes de compilación existen desde hace unos 15 años), pueden aliviar la carga de los desarrolladores simplemente tomando el código fuente y convirtiéndolo en aplicaciones completamente funcionales. Una breve historia, según Ram Iyengar, evangelista jefe de Cloud Foundry: Heroku introdujo el concepto de crear objetos inmutables a partir del código fuente, independientemente del lenguaje de programación o la plataforma, en 2010. Cloud Foundry (el proyecto de código abierto) estaba trabajando para hacerlo. Más o menos lo mismo, pero como código abierto. Pivotal fue uno de los primeros en apoyar y desarrollar el proyecto Cloud Foundry como herramienta comercial, y ambos proyectos lanzaron una versión v2 en 2015. Pero cuando VMware adquirió Pivotal en 2019, se formó la Cloud Foundry Foundation para gestionar el proyecto, y esto Ahora está bajo los auspicios de la Cloud Native Computing Foundation. El camino de Pivotal fue crear contenedores a partir del código fuente proporcionado, mientras que la visión de Heroku no incluía contenedores. En la nube nativa vs. En el debate sobre los entornos no nativos de la nube, existe una división en la que todo se ejecuta en contenedores y en la que no todo se ejecuta en contenedores. Entonces, Heroku y Pivotal/Cloud Foundry se unieron para crear Cloud Native Buildpacks que fueran compatibles con el ecosistema de nube nativo, lo que, según Iyengar, significaba que «tenía que ser de código abierto, tenía que cumplir con la especificación OCI y tenía que ser de código abierto». Esté preparado para la implementación en Kubernetes y utilice construcciones nativas de la nube». La versión 2 de los paquetes de compilación que no son de Kubernetes, dijo Iyengar, seguirá existiendo en el futuro, con la “versión más nueva y brillante de los paquetes de compilación en el contenedor y en la versión de Kubernetes”, dijo. Heroku avanzó con su implementación comercial de código cerrado, que desde entonces ha sido de código abierto, mientras que la Cloud Foundry Foundation creó en 2020 los paquetes de compilación Paketo, que son de código abierto y están listos para producción, dijo Iyengar. Todo sobre la experiencia del desarrollador Uno de los beneficios de los paquetes de compilación, al recuperar la narrativa, es la mejora de la experiencia del desarrollador. Si bien hay seis o siete formas en que los desarrolladores de JavaScript pueden obtener esta experiencia con herramientas que brindan una aplicación funcional a partir del código fuente, si no usas JavaScript, la herramienta es esencialmente inútil, dijo Iyengar. Los paquetes de compilación de Packeto permiten a los desarrolladores obtener la misma experiencia de compilación independientemente del idioma del código fuente. «El tipo de coherencia posible con los paquetes de compilación es fenomenal, y a eso me refiero cuando hablo de experiencia de desarrollador», dijo Iyengar. «Se trata de permitir a los desarrolladores llevar consigo cualquier lenguaje o marco y proporcionarles una interfaz de usuario consistente y completa para brindarles la mejor experiencia de desarrollo posible». Iyengar también señaló que los paquetes de compilación pueden superar las barreras a la automatización que existen cuando se utilizan tecnologías como Docker. «Para un desarrollador o equipo de ingeniería de software mantener archivos Docker para el desarrollo y producción local, rápidamente puede convertirse en un infierno de desarrollo crear estos archivos Docker y mantenerlos», dijo. «Los buildpacks liberan a los usuarios de la necesidad de escribir estos metarchivos y mantenerlos». Explicó que con un proceso de compilación basado en Docker, si desea escribir un archivo Docker diferente para sus acciones de GitHub que si los ejecuta en sus máquinas de preproducción, existen requisitos diferentes. Eso no es genial». Los paquetes de compilación, dijo, hacen que el proceso sea uniforme independientemente de la infraestructura en la que se esté ejecutando. Lo mismo ocurre con las SBOM (listas de materiales de software) y en el futuro podrás elegir entre imágenes x86. e imágenes ARM y dictar en el proceso de construcción qué tipo de imagen desea y ponerlas todas a disposición, dijo Iyengar. «El enfoque en la automatización dentro de la comunidad de paquetes de compilación es enorme. Paquetes de compilación disponibles listos para producción que también son compatibles con integraciones de CI/CD». como CircleCI, Gitlab, Tekton y otros. Dado que los paquetes de compilación brindan transparencia sobre lo que hay en una imagen y lo que las imágenes pueden y no pueden contener, es aquí donde se cruzan los paquetes de compilación y la IA. “Cualquier IA que pueda leer y analizar los metadatos del paquete de compilación puede verificar fácilmente cuáles. Es necesario establecer políticas y se pueden crear reglas como no construir o poner en producción contenedores si contienen una versión particular de, por ejemplo, Go que es obsoleta o tiene una vulnerabilidad”, dijo Iyengar. «Y, si se encuentra una nueva vulnerabilidad, puede haber un motor de IA que básicamente observe todas las capas del paquete de compilación y diga: ‘estas son las capas afectadas, reemplacémoslas de inmediato’. La mitigación, añadió, se convierte en una tarea muy trivial. Iyengar dijo que el objetivo dentro de la comunidad de buildpack ha sido “llenar muchos vacíos dejados por el ecosistema basado en Docker, pero en realidad se trata de saber qué hay dentro de una imagen cuando la implementas. » Los paquetes de compilación, dijo, facilitan la certificación y la creación de la procedencia que las imágenes necesitan en nuestro panorama moderno, nativo de la nube y centrado en la seguridad. En el futuro, los SBOM integrados no serán solo una conveniencia, sino que serán un requisito de cumplimiento. .
Check Also
Vivaldi adopta el canal de distribución Snap para Linux
Siempre estamos buscando formas de hacer que nuestro navegador sea más accesible, versátil y fácil …