Ford apuesta por el desarrollo del código abierto

El fabricante de automóviles se está especializando en kubernetes de la mano de Red Hat.

Publicado el 20 Abr 2023

80374_31

Ford Motor Company valora mucho las tecnologías y los estándares abiertos, por lo que cuando la empresa estableció su estrategia de transformación digital la década pasada, se interesó en las soluciones de código abierto. Ford fue uno de los primeros en adoptar Kubernetes, llevando sus cargas de trabajo de producción a lo virtual en 2017, y desde entonces ha convertido las tecnologías de código abierto en la piedra angular de las iniciativas de desarrollo cloud-native de la empresa. Más que limitarse a consumir código abierto, Ford ha dado un paso más en su apuesta por el código abierto, contribuyendo a su desarrollo.

Satish Puranam, Cloud Leader de Ford Motor Company, explica dónde se encuentra Ford en este momento… y hacia dónde se dirige: “La transformación digital integral de Ford en toda la compañía está ayudando a ofrecer la mejor gama de productos de su historia -esto incluye convertirse en el número dos en ventas de vehículos eléctricos por detrás de Tesla- y a hacer que sea aún más agradable ser propietario de un vehículo Ford con tecnologías, servicios y experiencias “always-on” basadas en software.

Por ejemplo, Ford conoce las preferencias de los clientes a partir de los datos de los vehículos conectados y, a continuación, puede añadir nuevas funciones o realizar otras mejoras mediante el envío de software over-the-air a esos productos. Pensemos en los clientes de F-150 y Mustang Mach-E que recientemente han recibido actualizaciones del software Ford Power-Up con nuestra tecnología BlueCruise de manos libres y conducción con eyes-on-the-road highway. Un día, los clientes conducían sus vehículos con normalidad, pero al día siguiente podían hacerlo con la función de manos libres. Para apoyar todo esto, Ford está facilitando que los expertos en software se centren en las mejores partes del trabajo, al mismo tiempo que elimina muchos de los obstáculos que antes les impedían ser más creativos y productivos”.

A medida que Ford se volvía más experto a nivel de Kubernetes, buscaba hacer que sus procesos y flujos de trabajo fueran aún más eficientes, coherentes y escalables. Para ello, el equipo de TI adoptó Red Hat OpenShift Pipelines, basado en el proyecto Tekton, para estandarizar su pipeline de CI/CD, ayudándoles a crear, probar e implementar aplicaciones en distintas nubes. El equipo de TI de Ford adoptó Tekton y vio el éxito casi de inmediato. Esto les animó a ir más allá del mero consumo de la tecnología para contribuir al propio proyecto, especialmente cuando se trataba de resolver mejor los casos de uso de la empresa.

Con Red Hat como guía, Ford aprendió los entresijos de las comunidades de código abierto, lo que le permitió hacer contribuciones que, en última instancia, ayudaron a dar forma a la siguiente versión de la tecnología.

Éxito con Tekton

Cuando Ford comenzó a experimentar con CI/CD, su objetivo era la repetibilidad de procesos y componentes, junto con la entrega de una experiencia unificada a través de los equipos de TI, incluso aquellos con diferentes conjuntos de habilidades y opiniones de herramientas. Su organización de TI adoptó Tekton en parte por la naturaleza modulable del proyecto. Al no tener que aprender un lenguaje específico, los equipos pudieron trabajar de la forma que les resultaba más cómoda y basándose en sus conocimientos existentes. Además, como Tekton podía extenderse a través de las nubes, a la organización de TI le gustó no estar atada a un solo proveedor. A nivel de producción, Ford consume Tekton a través de OpenShift Pipelines para obtener una versión totalmente compatible y reforzada, que se adapta mejor a los despliegues en toda la empresa.

Desde entonces, Tekton se ha convertido en una parte integral de la prestación de servicios de infraestructura y aplicaciones de TI para Ford. En la actualidad, miles de pipelines realizan todo el aprovisionamiento en la nube exclusivamente en Tekton.

Gracias a la implantación de un pipeline CI/CD, Ford ha podido reducir el tiempo de entrega de las aplicaciones debido a la automatización. La automatización y la repetibilidad también han dado lugar a menos errores, y los errores que se cometen son más fáciles de rastrear y corregir. Además, Ford también ha sido capaz de hacer release con más frecuencia. Con la entrega y el despliegue continuos, las nuevas funciones y mejoras llegan a manos de los usuarios finales con mayor rapidez.

Colaboración comunitaria

Basándose en su éxito con Tekton, Ford se puso en contacto con Red Hat para poner en marcha una iniciativa conjunta de ingeniería que ayudara al equipo de TI de la empresa a contribuir al proyecto Tekton. Basándose en el uso que Ford hace desde hace tiempo de las tecnologías de código abierto, la empresa quería dar un paso más y contribuir a la comunidad.

Junto con Red Hat, formaron un equipo virtual para impulsar los casos de uso empresarial dentro del proyecto Tekton. Gracias a su contribución en la comunidad, Ford pudo influir en el proyecto de la forma más adecuada para satisfacer las necesidades de los usuarios empresariales. En concreto, se centraron en dar forma a la tecnología para responder mejor a las crecientes necesidades a gran escala en los ámbitos de la seguridad y la reducción del ciclo de retroalimentación.

El caso de uso inicial a tratar era evitar la ejecución innecesaria del pipelineRun basándose en si un archivo había cambiado o no. Anteriormente, la solución de Ford consistía en comprobar si los archivos se habían modificado dentro de una tarea personalizada, lo que resultaba complicado.

Para resolver este problema, Ford contribuyó con Tekton Triggers en el upstream, un componente para enriquecer la carga útil de github de una solicitud entrante con la lista de archivos cambiados relacionados con un evento pull_request o push. A continuación, esta lista se verificaría utilizando un interceptor CEL para detener el procesamiento y/o pasar a la pipelineRun donde la lista de archivos puede ser utilizado por una tarea.

Otra contribución de Ford al upstream de Tekton es un interceptor que bloquea la ejecución de un pull request trigger a menos que sea solicitado por uno de los propietarios, estando todos ellos definidos en un fichero OWNERS en la raíz del repositorio. Con esta contribución un pull request de pipeline se ejecuta sólo después de ser revisado por un propietario del módulo. Esto ayuda a reducir recursos y mejorar la seguridad del espacio de nombres ejecutando sólo los pipelines aprobados, ya que Ford tiene miles de desarrolladores contribuyendo a diferentes módulos. Los cambios han dado lugar a un proceso más eficaz y centrado en la seguridad. Las contribuciones de Ford se publicaron en Tekton Triggers v0.23.0, lo que permitió a otras empresas aprovechar estas funciones.

Red Hat, socio de Tekton

Ford y Red Hat se han comprometido a impulsar la innovación dentro de Tekton para que pueda ser utilizada por otras empresas, ya que contar con el proyecto y las herramientas más sólidas para trabajar conduce en última instancia a una mayor innovación en todas las TI. Trabajando y aprendiendo con Red Hat, Ford pudo comprender y comprometerse más rápidamente con la comunidad. Red Hat actuó como mentor de Ford, mostrándole cómo empezar a contribuir y los pasos que debían dar al involucrarse por primera vez.

Según Satish Puranam, Cloud Leader de Ford Motor Company, “es fácil consumir código abierto, pero no fue hasta que nos involucramos en la comunidad upstream cuando comprendimos la sangre, el sudor y las lágrimas que se ponen en estos proyectos, con un número considerable de colaboradores individuales. Trabajando con Red Hat obtuvimos una valiosa mentoría que nos ayudó a aprender cómo conectarnos y colaborar con la comunidad de código abierto en general”.

A través de esta iniciativa continua, Ford planea ampliar su trabajo dentro de las contribuciones de código abierto e involucrarse en otros proyectos relacionados con Tekton para acelerar su transformación digital y mejorar aún más su gama de productos líderes.

¿Qué te ha parecido este artículo?

La tua opinione è importante per noi!

C
Redacción Computing

Artículos relacionados

Artículo 1 de 3